diff options
author | Tatu Saloranta <tatu.saloranta@iki.fi> | 2018-05-01 20:58:32 -0700 |
---|---|---|
committer | Tatu Saloranta <tatu.saloranta@iki.fi> | 2018-05-01 20:58:32 -0700 |
commit | 90337ecacbeef048e842a6331a3256466d0bd5c9 (patch) | |
tree | 84e5a5076b3432b77cdfbd2d554ba2da37385620 /src/test/java/com/fasterxml/jackson/databind/deser/creators/TestCreatorsDelegating.java | |
parent | eafac26deb5163412bbb7a42cdec247119150684 (diff) | |
download | jackson-databind-90337ecacbeef048e842a6331a3256466d0bd5c9.tar.gz |
Add failing test for #2016
Diffstat (limited to 'src/test/java/com/fasterxml/jackson/databind/deser/creators/TestCreatorsDelegating.java')
-rw-r--r-- | src/test/java/com/fasterxml/jackson/databind/deser/creators/TestCreatorsDelegating.java | 35 |
1 files changed, 29 insertions, 6 deletions
diff --git a/src/test/java/com/fasterxml/jackson/databind/deser/creators/TestCreatorsDelegating.java b/src/test/java/com/fasterxml/jackson/databind/deser/creators/TestCreatorsDelegating.java index aca376674..692607fe5 100644 --- a/src/test/java/com/fasterxml/jackson/databind/deser/creators/TestCreatorsDelegating.java +++ b/src/test/java/com/fasterxml/jackson/databind/deser/creators/TestCreatorsDelegating.java @@ -1,15 +1,15 @@ package com.fasterxml.jackson.databind.deser.creators; -import com.fasterxml.jackson.annotation.JsonCreator; - -import java.util.Map; +import java.util.*; import com.fasterxml.jackson.annotation.JacksonInject; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.JsonToken; import com.fasterxml.jackson.databind.*; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.util.TokenBuffer; public class TestCreatorsDelegating extends BaseMapTest @@ -82,14 +82,28 @@ public class TestCreatorsDelegating extends BaseMapTest this.map = map; } } - + + // [databind#2016] + static class Wrapper2016 { + private final List<String> value; + + @JsonCreator //(mode = JsonCreator.Mode.DELEGATING) + public Wrapper2016(@JsonDeserialize(as = LinkedList.class) List<String> value) { + this.value = value; + } + + public List<String> getValue() { + return value; + } + } + /* /********************************************************** - /* Unit tests + /* Test methods /********************************************************** */ - private final ObjectMapper MAPPER = new ObjectMapper(); + private final ObjectMapper MAPPER = newObjectMapper(); public void testBooleanDelegate() throws Exception { @@ -180,4 +194,13 @@ public class TestCreatorsDelegating extends BaseMapTest bean = MAPPER.readValue(EMPTY_JSON, MapBean.class); assertEquals(0, bean.map.size()); } + + // [databind#2016] + public void testCreatorWithDeserializeAs2016() throws Exception + { + String json = "[\"Hello, World!\"]"; + Wrapper2016 actual = MAPPER.readValue(json, Wrapper2016.class); + assertEquals(Collections.singletonList("Hello, World!"), actual.getValue()); + assertEquals(LinkedList.class, actual.getValue().getClass()); + } } |