### Question:
ElementHeader extends PropertyBase { @Override public boolean equals(Object objectToCompare) { if (this == objectToCompare) { return true; } if (!(objectToCompare instanceof ElementHeader)) { return false; } ElementHeader that = (ElementHeader) objectToCompare; return Objects.equals(getType(), that.getType()) && Objects.equals(guid, that.guid) && Objects.equals(url, that.url) && Objects.equals(getClassifications(), that.getClassifications()) && Objects.equals(getExtendedProperties(), that.getExtendedProperties()); } ElementHeader();  ElementHeader(ElementHeader template); ElementType getType(); void setType(ElementType type); String getGUID(); void setGUID(String guid); String getURL(); void setURL(String url); List<Classification> getClassifications(); void setClassifications(List<Classification> classifications); Map<String, Object> getExtendedProperties(); void setExtendedProperties(Map<String, Object> extendedProperties); @Override String toString(); @Override boolean equals(Object objectToCompare); @Override int hashCode();  }### Answer:
@Test public void testEquals() { assertFalse(getTestObject().equals(null)); assertFalse(getTestObject().equals("DummyString")); assertTrue(getTestObject().equals(getTestObject())); ElementHeader sameObject = getTestObject(); assertTrue(sameObject.equals(sameObject)); ElementHeader differentObject = getTestObject(); differentObject.setGUID("Different"); assertFalse(getTestObject().equals(differentObject)); }