|
7 | 7 | import com.fasterxml.jackson.databind.util.ClassUtil;
|
8 | 8 |
|
9 | 9 | import java.io.IOException;
|
| 10 | +import java.util.Collections; |
| 11 | +import java.util.LinkedHashMap; |
| 12 | +import java.util.Map; |
10 | 13 |
|
11 | 14 | public class RecordTest extends BaseMapTest
|
12 | 15 | {
|
@@ -66,22 +69,21 @@ public void testSerializeSimpleRecord() throws JsonProcessingException {
|
66 | 69 | SimpleRecord record = new SimpleRecord(123, "Bob");
|
67 | 70 |
|
68 | 71 | String json = MAPPER.writeValueAsString(record);
|
69 |
| - |
70 |
| - assertEquals("{\"id\":123,\"name\":\"Bob\"}", json); |
| 72 | + final Object EXP = map("id", Integer.valueOf(123), "name", "Bob"); |
| 73 | + assertEquals(EXP, MAPPER.readValue(json, Object.class)); |
71 | 74 | }
|
72 | 75 |
|
73 | 76 | public void testDeserializeSimpleRecord() throws IOException {
|
74 | 77 | SimpleRecord value = MAPPER.readValue("{\"id\":123,\"name\":\"Bob\"}", SimpleRecord.class);
|
75 |
| - |
76 | 78 | assertEquals(new SimpleRecord(123, "Bob"), value);
|
77 | 79 | }
|
78 | 80 |
|
79 | 81 | public void testSerializeRecordOfRecord() throws JsonProcessingException {
|
80 | 82 | RecordOfRecord record = new RecordOfRecord(new SimpleRecord(123, "Bob"));
|
81 |
| - |
82 | 83 | String json = MAPPER.writeValueAsString(record);
|
83 |
| - |
84 |
| - assertEquals("{\"record\":{\"id\":123,\"name\":\"Bob\"}}", json); |
| 84 | + final Object EXP = Collections.singletonMap("record", |
| 85 | + map("id", Integer.valueOf(123), "name", "Bob")); |
| 86 | + assertEquals(EXP, MAPPER.readValue(json, Object.class)); |
85 | 87 | }
|
86 | 88 |
|
87 | 89 | /*
|
@@ -125,22 +127,30 @@ public void testSerializeJsonIgnoreRecord() throws JsonProcessingException {
|
125 | 127 | }
|
126 | 128 |
|
127 | 129 | public void testDeserializeRecordWithConstructor() throws IOException {
|
128 |
| - RecordWithConstructor value = MAPPER.readValue("{\"id\":123,\"name\":\"Bob\"}", RecordWithConstructor.class); |
129 |
| - |
| 130 | + RecordWithConstructor value = MAPPER.readValue("{\"id\":123,\"name\":\"Bob\"}", |
| 131 | + RecordWithConstructor.class); |
130 | 132 | assertEquals(new RecordWithConstructor(123, "Bob"), value);
|
131 | 133 | }
|
132 | 134 |
|
133 | 135 | public void testSerializeJsonRenameRecord() throws JsonProcessingException {
|
134 | 136 | JsonPropertyRenameRecord record = new JsonPropertyRenameRecord(123, "Bob");
|
135 | 137 |
|
136 | 138 | String json = MAPPER.writeValueAsString(record);
|
137 |
| - |
138 |
| - assertEquals("{\"id\":123,\"rename\":\"Bob\"}", json); |
| 139 | + final Object EXP = map("id", Integer.valueOf(123), "rename", "Bob"); |
| 140 | + assertEquals(EXP, MAPPER.readValue(json, Object.class)); |
139 | 141 | }
|
140 | 142 |
|
141 | 143 | public void testDeserializeJsonRenameRecord() throws IOException {
|
142 |
| - JsonPropertyRenameRecord value = MAPPER.readValue("{\"id\":123,\"rename\":\"Bob\"}", JsonPropertyRenameRecord.class); |
143 |
| - |
| 144 | + JsonPropertyRenameRecord value = MAPPER.readValue("{\"id\":123,\"rename\":\"Bob\"}", |
| 145 | + JsonPropertyRenameRecord.class); |
144 | 146 | assertEquals(new JsonPropertyRenameRecord(123, "Bob"), value);
|
145 | 147 | }
|
| 148 | + |
| 149 | + private Map<String,Object> map(String key1, Object value1, |
| 150 | + String key2, Object value2) { |
| 151 | + final Map<String, Object> result = new LinkedHashMap<>(); |
| 152 | + result.put(key1, value1); |
| 153 | + result.put(key2, value2); |
| 154 | + return result; |
| 155 | + } |
146 | 156 | }
|
0 commit comments