@Override public int hashCode() { return entity.hashCode(); }
@Test public void shouldReturnFalseForEqualsWhenIdentifierIsDifferent() { // Given final Entity entity1 = new Entity("group"); entity1.setVertex("vertex"); final Entity entity2 = cloneCoreFields(entity1); entity2.setVertex("different vertex"); // When boolean isEqual = entity1.equals((Object) entity2); // Then assertFalse(isEqual); assertFalse(entity1.hashCode() == entity2.hashCode()); }
@Override @Test public void shouldReturnFalseForEqualsWhenGroupIsDifferent() { // Given final Entity entity1 = new Entity("group"); entity1.setVertex("vertex"); final Entity entity2 = new Entity("a different group"); entity2.setVertex(entity1.getVertex()); // When boolean isEqual = entity1.equals((Object) entity2); // Then assertFalse(isEqual); assertFalse(entity1.hashCode() == entity2.hashCode()); }
@Test public void shouldReturnFalseForEqualsWhenPropertyIsDifferent() { // Given final Entity entity1 = new Entity("group"); entity1.setVertex("identifier"); entity1.putProperty("some property", "some value"); final Entity entity2 = cloneCoreFields(entity1); entity2.putProperty("some property", "some other value"); // When boolean isEqual = entity1.equals((Object) entity2); // Then assertFalse(isEqual); assertNotEquals(entity1.hashCode(), entity2.hashCode()); }
@Override @Test public void shouldReturnTrueForEqualsWhenAllCoreFieldsAreEqual() { // Given final Entity entity1 = new Entity("group"); entity1.setVertex("identifier"); entity1.putProperty("some property", "some value"); final Entity entity2 = cloneCoreFields(entity1); entity2.putProperty("some property", "some value"); // When boolean isEqual = entity1.equals((Object) entity2); // Then assertTrue(isEqual); assertEquals(entity1.hashCode(), entity2.hashCode()); }
@Override public int hashCode() { return entity.hashCode(); }