### Question:
TypeDefProperties extends TypeDefElementHeader { public void setTypeDefProperties(Map<String, Object> typeDefProperties) { this.typeDefProperties = typeDefProperties; } TypeDefProperties();  TypeDefProperties(TypeDefProperties templateProperties); Map<String, Object> getTypeDefProperties(); void setTypeDefProperties(Map<String, Object> typeDefProperties); @Override String toString(); @Override boolean equals(Object objectToCompare); @Override int hashCode();  }### Answer:
@Test public void testConstructors() { validateNullObject(new TypeDefProperties()); validateNullObject(new TypeDefProperties(new TypeDefProperties())); validateObject(new TypeDefProperties(getTestObject())); TypeDefProperties testObject = new TypeDefProperties(); testObject.setTypeDefProperties(new HashMap<>()); validateNullObject(testObject); }