### Question:
SimpleObjectCopyFactory implements ObjectCopyFactory { @Override public <T> ObjectTransformer<T, T> createCopyTransformer(Class<T> clazz) { return createCopyTransformer(clazz, this.getClass().getClassLoader()); }  @Override ObjectTransformer<T, T> createCopyTransformer(Class<T> clazz); @SuppressWarnings("unchecked") @Override ObjectTransformer<T, T> createCopyTransformer(
    Class<T> clazz, ClassLoader classLoader);  }### Answer:
@Test public void testNotSerializable() { ObjectTransformer<Dummy, Dummy> t = factory.createCopyTransformer(Dummy.class); assertNull(t); }
@Test public void testSerializable() { ObjectTransformer<DummySerializable, DummySerializable> t = factory.createCopyTransformer(DummySerializable.class); assertNotNull(t); }
@Test public void testImmutableCompleteInteger() { ObjectTransformer<Integer, Integer> t = factory.createCopyTransformer(Integer.class); Integer val = 45; Integer v2 = t.compact(val); assertTrue(val == v2); v2 = t.expand(val); assertTrue(val == v2); }
@Test public void testDate() { ObjectTransformer<Date, Date> t = factory.createCopyTransformer(Date.class); assertNotNull(t); }