### Question:
PrimitivePropertyValue extends InstancePropertyValue { @Override public int hashCode() { return Objects.hash(super.hashCode(), getPrimitiveDefCategory(), getPrimitiveValue()); } PrimitivePropertyValue();  PrimitivePropertyValue(PrimitivePropertyValue   template); InstancePropertyValue cloneFromSubclass(); String valueAsString(); Object valueAsObject(); PrimitiveDefCategory getPrimitiveDefCategory(); void setPrimitiveDefCategory(PrimitiveDefCategory primitiveDefCategory); Object getPrimitiveValue(); void setPrimitiveValue(Object primitiveValue); @Override String toString(); @Override boolean equals(Object objectToCompare); @Override int hashCode();  }### Answer:
@Test public void testHash() { assertTrue(getDateTestObject().hashCode() == getDateTestObject().hashCode()); InstancePropertyValue testObject = getDateTestObject(); InstancePropertyValue anotherObject = getDateTestObject(); anotherObject.setTypeGUID("DifferentGUID"); assertFalse(testObject.hashCode() == anotherObject.hashCode()); }