### Question:
AssetComplexSchemaType extends AssetSchemaType { @Override public boolean equals(Object objectToCompare) { if (this == objectToCompare) { return true; } if (objectToCompare == null || getClass() != objectToCompare.getClass()) { return false; } if (!super.equals(objectToCompare)) { return false; } AssetComplexSchemaType that = (AssetComplexSchemaType) objectToCompare; return Objects.equals(getSchemaAttributes(), that.getSchemaAttributes()); } protected  AssetComplexSchemaType(AssetDescriptor parentAsset);  AssetComplexSchemaType(ComplexSchemaType schemaBean);  AssetComplexSchemaType(AssetDescriptor       parentAsset,
                                  ComplexSchemaType     schemaBean);  AssetComplexSchemaType(AssetDescriptor parentAsset, AssetComplexSchemaType template); AssetSchemaAttributes getSchemaAttributes(); @Override String toString(); @Override boolean equals(Object objectToCompare);  }### Answer:
@Test public void testEquals() { assertFalse(getTestObject().equals(null)); assertFalse(getTestObject().equals("DummyString")); AssetComplexSchemaType sameObject = getTestObject(); assertTrue(sameObject.equals(sameObject)); assertFalse(getTestObject().equals(getDifferentObject())); assertFalse(getTestObject().equals(getAnotherDifferentObject())); assertFalse(getTestObject().equals(getYetAnotherDifferentObject())); }