### Question:
AttackerConfig { @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + delay; result = prime * result + distanceMin; result = prime * result + distanceMax; result = prime * result + damagesMin; result = prime * result + damagesMax; return result; } AttackerConfig(int delay, int distanceMin, int distanceMax, int damagesMin, int damagesMax); static AttackerConfig imports(Configurer configurer); static AttackerConfig imports(Xml root); static Xml exports(AttackerConfig config); int getDelay(); Range getDistance(); Range getDamages(); @Override int hashCode(); @Override boolean equals(Object object); @Override String toString(); static final String NODE_ATTACKER; static final String ATT_DELAY; static final String ATT_DISTANCE_MIN; static final String ATT_DISTANCE_MAX; static final String ATT_DAMAGES_MIN; static final String ATT_DAMAGES_MAX; }### Answer:
@Test void testHashCode() { final AttackerConfig hash = new AttackerConfig(1, 2, 3, 4, 5); assertHashEquals(hash, new AttackerConfig(1, 2, 3, 4, 5)); assertHashNotEquals(hash, new AttackerConfig(0, 2, 3, 4, 5)); assertHashNotEquals(hash, new AttackerConfig(1, 0, 3, 4, 5)); assertHashNotEquals(hash, new AttackerConfig(1, 2, 0, 4, 5)); assertHashNotEquals(hash, new AttackerConfig(1, 2, 3, 0, 5)); assertHashNotEquals(hash, new AttackerConfig(1, 2, 3, 4, 0)); }