### Question:
ModifyRequestImpl extends AbstractAbandonableRequest implements ModifyRequest { @Override public int hashCode() { int hash = 37; if ( name != null ) { hash = hash * 17 + name.hashCode(); } hash = hash * 17 + mods.size(); for ( int i = 0; i < mods.size(); i++ ) { hash = hash * 17 + ( ( DefaultModification ) mods.get( i ) ).hashCode(); } hash = hash * 17 + super.hashCode(); return hash; } ModifyRequestImpl(); @Override Collection<Modification> getModifications(); @Override Dn getName(); @Override ModifyRequest setName( Dn name ); @Override ModifyRequest addModification( Modification mod ); @Override ModifyRequest addModification( Attribute attr, ModificationOperation modOp ); @Override ModifyRequest add( String attributeName, String... attributeValue ); ModifyRequest add( String attributeName, byte[]... attributeValue ); @Override ModifyRequest add( Attribute attr ); @Override ModifyRequest replace( String attributeName ); @Override ModifyRequest replace( String attributeName, String... attributeValue ); ModifyRequest replace( String attributeName, byte[]... attributeValue ); @Override ModifyRequest replace( Attribute attr ); @Override ModifyRequest removeModification( Modification mod ); @Override ModifyRequest remove( String attributeName, String... attributeValue ); ModifyRequest remove( String attributeName, byte[]... attributeValue ); @Override ModifyRequest remove( Attribute attr ); @Override ModifyRequest remove( String attributeName ); @Override ModifyRequest increment( String attributeName ); @Override ModifyRequest increment( String attributeName, int increment ); @Override ModifyRequest increment( Attribute attr ); @Override ModifyRequest increment( Attribute attr, int increment ); @Override ModifyRequest setMessageId( int messageId ); @Override ModifyRequest addControl( Control control ); @Override ModifyRequest addAllControls( Control[] controls ); @Override ModifyRequest removeControl( Control control ); @Override MessageTypeEnum getResponseType(); @Override ModifyResponse getResultResponse(); @Override int hashCode(); @Override boolean equals( Object obj ); @Override String toString();  }### Answer:
@Test public void testHashCodeSameObj() throws LdapException { ModifyRequestImpl req = getRequest(); assertTrue( req.hashCode() == req.hashCode() ); }
@Test public void testHashCodeExactCopy() throws LdapException { ModifyRequestImpl req0 = getRequest(); ModifyRequestImpl req1 = getRequest(); assertTrue( req0.hashCode() == req1.hashCode() ); }