@@ -0,0 +1,2913 @@
+package com.fasterxml.jackson.failing;%0A%0Aimport java.util.List;%0A%0Aimport com.fasterxml.jackson.annotation.*;%0Aimport com.fasterxml.jackson.core.type.TypeReference;%0Aimport com.fasterxml.jackson.databind.*;%0Aimport com.fasterxml.jackson.databind.annotation.JsonDeserialize;%0A%0Apublic class BuilderDeserializationTest921%0A    extends BaseMapTest%0A%7B%0A    public static class MyPOJO %7B%0A      public String x;%0A      public String y;%0A%0A      @JsonCreator%0A      public MyPOJO(@JsonProperty(%22x%22) String x, @JsonProperty(%22y%22) String y) %7B%0A        this.x = x;%0A        this.y = y;%0A      %7D%0A    %7D%0A%0A    @JsonDeserialize(builder = MyGenericPOJO.Builder.class)%0A    public static class MyGenericPOJO%3CT%3E %7B%0A      private List%3CT%3E data;%0A%0A      private MyGenericPOJO(List%3CT%3E d) %7B%0A        data = d;%0A      %7D%0A%0A      public List%3CT%3E getData() %7B%0A        return data;%0A      %7D%0A%0A      public static class Builder%3CT%3E %7B%0A        private List%3CT%3E data;%0A%0A        public Builder%3CT%3E withData(List%3CT%3E d) %7B%0A          data = d;%0A          return this;%0A        %7D%0A%0A        public MyGenericPOJO%3CT%3E build() %7B%0A          return new MyGenericPOJO%3CT%3E(data);%0A        %7D%0A      %7D%0A    %7D%0A%0A    public static class MyGenericPOJOWithCreator%3CT%3E %7B%0A      private List%3CT%3E data;%0A%0A      private MyGenericPOJOWithCreator(List%3CT%3E d) %7B%0A          data = d;%0A      %7D%0A%0A      @JsonCreator%0A      public static %3CT%3E MyGenericPOJOWithCreator%3CT%3E create(@JsonProperty(%22data%22) List%3CT%3E data) %7B%0A          return new MyGenericPOJOWithCreator.Builder%3CT%3E().withData(data).build();%0A      %7D%0A%0A      public List%3CT%3E getData() %7B%0A          return data;%0A      %7D%0A%0A      public static class Builder%3CT%3E %7B%0A          private List%3CT%3E data;%0A%0A          public Builder%3CT%3E withData(List%3CT%3E d) %7B%0A              data = d;%0A              return this;%0A          %7D%0A%0A          public MyGenericPOJOWithCreator%3CT%3E build() %7B%0A              return new MyGenericPOJOWithCreator%3CT%3E(data);%0A          %7D%0A      %7D%0A    %7D%0A%0A    public void testWithBuilder() throws Exception %7B%0A      final ObjectMapper mapper = new ObjectMapper();%0A      final String json = aposToQuotes(%22%7B 'data': %5B %7B 'x': 'x', 'y': 'y' %7D %5D %7D%22);%0A      final MyGenericPOJO%3CMyPOJO%3E deserialized =%0A          mapper.readValue(json, new TypeReference%3CMyGenericPOJO%3CMyPOJO%3E%3E() %7B%7D);%0A      assertEquals(1, deserialized.data.size());%0A      Object ob = deserialized.data.get(0);%0A      assertNotNull(ob);%0A      assertEquals(MyPOJO.class, ob.getClass());%0A    %7D%0A%0A    public void testWithCreator() throws Exception %7B%0A      final ObjectMapper mapper = new ObjectMapper();%0A      final String json = aposToQuotes(%22%7B 'data': %5B %7B 'x': 'x', 'y': 'y' %7D %5D %7D%22);%0A      final MyGenericPOJOWithCreator%3CMyPOJO%3E deserialized =%0A          mapper.readValue(json,%0A                  new TypeReference%3CMyGenericPOJOWithCreator%3CMyPOJO%3E%3E() %7B%7D);%0A      assertEquals(1, deserialized.data.size());%0A      Object ob = deserialized.data.get(0);%0A      assertNotNull(ob);%0A      assertEquals(MyPOJO.class, ob.getClass());%0A    %7D%0A  %7D%0A

Add a unit test for #921