@Test
public void testMimicClass() throws Exception {

    // GIVEN
    CtClass interfazz = ClassPool.getDefault().makeInterface("Able" + TestCounter.testCounter);
    src.addInterface(interfazz);
    // to load the interface class
    Class<?> interfaceClass = ClassPool.getDefault().toClass(interfazz);
    src.addField(new CtField(CtClass.intType, "foo", src));
    src.addConstructor(CtNewConstructor.make("public Src() { foo = 2; }", src));
    src.addMethod(CtNewMethod.make("public boolean foo() { return true;}", src));
    // WHEN
    mimicCreator.mimicClass(src, dst, MimicMode.AFTER_SUPER, new MimicMethod[0]);
    // THEN
    Class<?> dstClass = dst.toClass();
    assertHasInterface(interfaceClass, dstClass);
    assertHasFooFieldAndConstructor(dstClass);
    assertHasFooMethod(dst, dstClass);
}