### Question:
MapSchemaType extends SchemaType { @Override public boolean equals(Object objectToCompare) { if (this == objectToCompare) { return true; } if (!(objectToCompare instanceof MapSchemaType)) { return false; } if (!super.equals(objectToCompare)) { return false; } MapSchemaType that = (MapSchemaType) objectToCompare; return Objects.equals(getMapFromElement(), that.getMapFromElement()) && Objects.equals(getMapToElement(), that.getMapToElement()); } MapSchemaType();  MapSchemaType(MapSchemaType template); SchemaType getMapFromElement(); void setMapFromElement(SchemaType mapFromElement); SchemaType getMapToElement(); void setMapToElement(SchemaType mapToElement); @Override SchemaElement cloneSchemaElement(); @Override SchemaType cloneSchemaType(); @Override String toString(); @Override boolean equals(Object objectToCompare);  }### Answer:
@Test public void testEquals() { assertFalse(getTestObject().equals(null)); assertFalse(getTestObject().equals("DummyString")); assertTrue(getTestObject().equals(getTestObject())); MapSchemaType sameObject = getTestObject(); assertTrue(sameObject.equals(sameObject)); MapSchemaType differentObject = getTestObject(); differentObject.setGUID("Different"); assertFalse(getTestObject().equals(differentObject)); }