test refactor
diff --git a/src/test/java/com/fasterxml/jackson/databind/misc/CaseInsensitive1854Test.java b/src/test/java/com/fasterxml/jackson/databind/misc/CaseInsensitive1854Test.java
deleted file mode 100644
index 7fe97ac..0000000
--- a/src/test/java/com/fasterxml/jackson/databind/misc/CaseInsensitive1854Test.java
+++ /dev/null
@@ -1,68 +0,0 @@
-package com.fasterxml.jackson.databind.misc;
-
-import java.util.List;
-
-import com.fasterxml.jackson.annotation.*;
-import com.fasterxml.jackson.databind.*;
-
-public class CaseInsensitive1854Test extends BaseMapTest
-{
- static class Obj1854 {
- private final int id;
-
-// 17-Dec-2017, tatu: One of following would work around the bug [databind#1854]
-// @JsonProperty("Items")
-// @JsonIgnore
- private final List<ChildObj> items;
-
- public Obj1854(int id, List<ChildObj> items) {
- this.id = id;
- this.items = items;
- }
-
- @JsonCreator
- public static Obj1854 fromJson(@JsonProperty("ID") int id,
- @JsonProperty("Items") List<ChildObj> items) {
- return new Obj1854(id, items);
- }
-
- public int getId() {
- return id;
- }
-
- public List<ChildObj> getItems() {
- return items;
- }
-
- }
-
- static class ChildObj {
- private final String childId;
-
- private ChildObj(String id) {
- this.childId = id;
- }
-
- @JsonCreator
- public static ChildObj fromJson(@JsonProperty("ChildID") String cid) {
- return new ChildObj(cid);
- }
-
- public String getId() {
- return childId;
- }
- }
-
- public void testIssue1854() throws Exception
- {
- ObjectMapper mapper = jsonMapperBuilder()
- .enable(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES)
- .build();
- final String DOC = aposToQuotes("{'ID': 1, 'Items': [ { 'ChildID': 10 } ]}");
- Obj1854 result = mapper.readValue(DOC, Obj1854.class);
- assertNotNull(result);
- assertEquals(1, result.getId());
- assertNotNull(result.getItems());
- assertEquals(1, result.getItems().size());
- }
-}
diff --git a/src/test/java/com/fasterxml/jackson/databind/misc/CaseInsensitiveDeserTest.java b/src/test/java/com/fasterxml/jackson/databind/misc/CaseInsensitiveDeserTest.java
index f0c0165..3620393 100644
--- a/src/test/java/com/fasterxml/jackson/databind/misc/CaseInsensitiveDeserTest.java
+++ b/src/test/java/com/fasterxml/jackson/databind/misc/CaseInsensitiveDeserTest.java
@@ -1,9 +1,13 @@
package com.fasterxml.jackson.databind.misc;
+import java.util.List;
+
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
+
import com.fasterxml.jackson.core.JsonProcessingException;
+
import com.fasterxml.jackson.databind.*;
public class CaseInsensitiveDeserTest extends BaseMapTest
@@ -44,6 +48,51 @@
}
}
+ // [databind#1854]
+ static class Obj1854 {
+ private final int id;
+
+ private final List<ChildObj1854> items;
+
+ public Obj1854(int id, List<ChildObj1854> items) {
+ this.id = id;
+ this.items = items;
+ }
+
+ @JsonCreator
+ public static Obj1854 fromJson(@JsonProperty("ID") int id,
+ @JsonProperty("Items") List<ChildObj1854> items) {
+ return new Obj1854(id, items);
+ }
+
+ public int getId() {
+ return id;
+ }
+
+ public List<ChildObj1854> getItems() {
+ return items;
+ }
+
+ }
+
+ // [databind#1854]
+ static class ChildObj1854 {
+ private final String childId;
+
+ private ChildObj1854(String id) {
+ this.childId = id;
+ }
+
+ @JsonCreator
+ public static ChildObj1854 fromJson(@JsonProperty("ChildID") String cid) {
+ return new ChildObj1854(cid);
+ }
+
+ public String getId() {
+ return childId;
+ }
+ }
+
/*
/********************************************************
/* Test methods
@@ -122,4 +171,14 @@
assertEquals("12", role.ID);
assertEquals("Foo", role.Name);
}
+
+ public void testIssue1854() throws Exception
+ {
+ final String DOC = aposToQuotes("{'ID': 1, 'Items': [ { 'ChildID': 10 } ]}");
+ Obj1854 result = INSENSITIVE_MAPPER.readValue(DOC, Obj1854.class);
+ assertNotNull(result);
+ assertEquals(1, result.getId());
+ assertNotNull(result.getItems());
+ assertEquals(1, result.getItems().size());
+ }
}