 		classLevelCopyable = null;
 		classLevelCopyableType = null;
 
+		classLevelCopyableCloneable = null;
+		classLevelCopyableCloneableType = null;
+
 		propertyLevelCopyable = null;
 		propertyLevelCopyableType = null;
+
+		propertyLevelCopyableCloneable = null;
+		propertyLevelCopyableCloneableType = null;
 	}
 
 	[Test]
 	public function testGetCopyableFieldsForType():void {
 		var copyableFields:Vector.<Field> = Copier.getCopyableFieldsForType(classLevelCopyableType);
+		assertNotNull(copyableFields);
+		assertEquals(4, copyableFields.length);
+		assertNotNull(copyableFields[0]);
+		assertNotNull(copyableFields[1]);
+		assertNotNull(copyableFields[2]);
+		assertNotNull(copyableFields[3]);
 
+		copyableFields = Copier.getCopyableFieldsForType(classLevelCopyableCloneableType);
 		assertNotNull(copyableFields);
 		assertEquals(4, copyableFields.length);
 		assertNotNull(copyableFields[0]);

package dolly {
import dolly.core.dolly_internal;
import dolly.data.ClassLevelCopyable;
import dolly.data.PropertyLevelCopyable;

import org.as3commons.reflect.Field;
import org.as3commons.reflect.Type;

		classLevelCopyable.property2 = "value 2";
		classLevelCopyable.property3 = "value 3";
		classLevelCopyable.writableField = "value 4";
		classLevelCopyableType = Type.forInstance(classLevelCopyable);

		classLevelCopyableCloneable = new ClassLevelCopyableCloneable();
		classLevelCopyableCloneable.property1 = "value 1";
		classLevelCopyableCloneable.property2 = "value 2";
		classLevelCopyableCloneable.property3 = "value 3";
		classLevelCopyableCloneable.writableField = "value 4";
		classLevelCopyableCloneableType = Type.forInstance(classLevelCopyableCloneable);

		propertyLevelCopyable = new PropertyLevelCopyable();
		propertyLevelCopyable.property1 = "value 1";
		propertyLevelCopyable.property2 = "value 2";
		propertyLevelCopyable.property3 = "value 3";
		propertyLevelCopyable.writableField = "value 4";
		propertyLevelCopyableType = Type.forInstance(propertyLevelCopyable);

		propertyLevelCopyableCloneable = new PropertyLevelCopyableCloneable();
		propertyLevelCopyableCloneable.property1 = "value 1";
		propertyLevelCopyableCloneable.property2 = "value 2";
		propertyLevelCopyableCloneable.property3 = "value 3";
		propertyLevelCopyableCloneable.writableField = "value 4";
		propertyLevelCopyableCloneableType = Type.forInstance(propertyLevelCopyableCloneable);
	}

	[After]
