IntegerValue extends NumberValueAdapter<Long> { @Override public boolean equals( Object o ) { if ( this == o ) { return true; } if ( o == null || getClass() != o.getClass() ) { return false; } IntegerValue values = (IntegerValue) o; return val == values.val; } IntegerValue( long val ); @Override Type type(); @Override Long asNumber(); @Override long asLong(); @Override int asInt(); @Override double asDouble(); @Override float asFloat(); @Override String toString(); @Override boolean equals( Object o ); @Override int hashCode();  }
@Test void testEquals() { IntegerValue firstValue = new IntegerValue( 1 ); IntegerValue secondValue = new IntegerValue( 1 ); assertThat( firstValue, equalTo( secondValue ) ); }