### Question:
IntegerOperations implements MathOperations<Integer>, Comparator<Integer> { public int getExponentInScientificNotation( Integer value ) { int v = Math.abs(value); int exp = 0; if (v > 1) { while (v >= 10) { v /= 10; ++exp; } } return exp; }  Class<Integer> getOperandClass(); Integer add( Integer value1,
                        Integer value2 ); Integer subtract( Integer value1,
                             Integer value2 ); Integer multiply( Integer value1,
                             Integer value2 ); double divide( Integer value1,
                          Integer value2 ); Integer negate( Integer value ); Integer increment( Integer value ); Integer maximum( Integer value1,
                            Integer value2 ); Integer minimum( Integer value1,
                            Integer value2 ); int compare( Integer value1,
                        Integer value2 ); BigDecimal asBigDecimal( Integer value ); Integer fromBigDecimal( BigDecimal value ); Integer createZeroValue(); Integer create( int value ); Integer create( long value ); Integer create( double value ); double sqrt( Integer value ); Comparator<Integer> getComparator(); Integer random( Integer minimum,
                           Integer maximum,
                           Random rng ); double doubleValue( Integer value ); float floatValue( Integer value ); int intValue( Integer value ); long longValue( Integer value ); short shortValue( Integer value ); int getExponentInScientificNotation( Integer value ); Integer roundUp( Integer value,
                            int decimalShift ); Integer roundDown( Integer value,
                              int decimalShift ); Integer keepSignificantFigures( Integer value,
                                           int numSigFigs );  }### Answer:
@Test public void shouldReturnProperExponenentInScientificNotation() { assertEquals(0, ops.getExponentInScientificNotation(0)); assertEquals(0, ops.getExponentInScientificNotation(1)); assertEquals(0, ops.getExponentInScientificNotation(2)); assertEquals(0, ops.getExponentInScientificNotation(9)); assertEquals(1, ops.getExponentInScientificNotation(10)); assertEquals(1, ops.getExponentInScientificNotation(20)); assertEquals(1, ops.getExponentInScientificNotation(99)); assertEquals(2, ops.getExponentInScientificNotation(100)); assertEquals(2, ops.getExponentInScientificNotation(200)); assertEquals(2, ops.getExponentInScientificNotation(999)); assertEquals(3, ops.getExponentInScientificNotation(1000)); assertEquals(3, ops.getExponentInScientificNotation(2000)); assertEquals(3, ops.getExponentInScientificNotation(9999)); }