@@ -0,0 +1,979 @@
+package com.fasterxml.jackson.failing;%0A%0Aimport java.io.IOException;%0A%0Aimport com.fasterxml.jackson.annotation.JsonProperty;%0Aimport com.fasterxml.jackson.databind.BaseMapTest;%0Aimport com.fasterxml.jackson.databind.type.TypeFactory;%0A%0A%0A// https://github.com/FasterXML/jackson-databind/issues/1647%0Apublic class TestTypeFactoryWithRecursiveTypes extends BaseMapTest %7B%0A%0A    static interface IFace%3CT%3E %7B%0A    %7D%0A%0A    static class Base implements IFace%3CSub%3E %7B%0A        @JsonProperty int base = 1;%0A    %7D%0A%0A    static class Sub extends Base %7B%0A        @JsonProperty int sub = 2;%0A    %7D%0A%0A    public void testBasePropertiesIncludedWhenSerializingSubWhenSubTypeLoadedAfterBaseType() throws IOException %7B%0A        TypeFactory tf = TypeFactory.defaultInstance();%0A        tf.constructType(Base.class);%0A        tf.constructType(Sub.class);%0A        Sub sub = new Sub();%0A        String serialized = objectMapper().writeValueAsString(sub);%0A        assertEquals(%22%7B%5C%22base%5C%22:1,%5C%22sub%5C%22:2%7D%22, serialized);%0A    %7D%0A%7D%0A

Add failing test for #1647