### Question:
CollectionDef extends AttributeTypeDef { public AttributeTypeDef cloneFromSubclass() { return new CollectionDef(this); } CollectionDef();  CollectionDef(CollectionDefCategory  collectionDefCategory);  CollectionDef(CollectionDef template); AttributeTypeDef cloneFromSubclass(); CollectionDefCategory getCollectionDefCategory(); void setCollectionDefCategory(CollectionDefCategory collectionDefCategory); int getArgumentCount(); void setArgumentCount(int argumentCount); List<PrimitiveDefCategory> getArgumentTypes(); void setArgumentTypes(List<PrimitiveDefCategory> argumentTypes); @Override String toString(); @Override boolean equals(Object objectToCompare);  }### Answer:
@Test public void testCloneFromSubclass() { AttributeTypeDef testObject = this.getTestObject(); validateObject((CollectionDef) testObject.cloneFromSubclass()); }