### Question:
AssetComplexSchemaType extends AssetSchemaType { @Override protected AssetSchemaType cloneAssetSchemaType(AssetDescriptor parentAsset) { return new AssetComplexSchemaType(parentAsset, this); } 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 testClone() { validateResultObject(new AssetComplexSchemaType(null, getTestObject())); validateResultObject((AssetComplexSchemaType)getTestObject().cloneAssetSchemaType(null)); }