Klasa testowana:
public class Entity { private int field1; private int field2; private int notSignificantField; @Override public int hashCode() { ... } @Override public boolean equals(Object object) { ... } public Entity(int field1, int field2, int notSignificantField) { this.field1 = field1; this.field2 = field2; this.notSignificantField = notSignificantField; } ... }
Klasa testująca:
public class EntityTest extends AbstractEqualsTest<Entity> { @Override public Entity objectThatShouldBeEqualA() { return new Entity(1, 2, 33); } @Override public Entity objectThatShouldBeEqualB() { return new Entity(1, 2, 44); } @Override public Entity objectThatShouldBeEqualC() { return new Entity(1, 2, 55); } @Override public Entity objectThatShouldNotBeEqual() { return new Entity(1, 1, 33); } }