Skip to content

Commit ed5c4a5

Browse files
committed
Add a test wrt #214
1 parent 56deb4c commit ed5c4a5

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package com.fasterxml.jackson.datatype.jdk8;
2+
3+
import java.util.Arrays;
4+
import java.util.List;
5+
import java.util.Optional;
6+
7+
import com.fasterxml.jackson.annotation.JsonMerge;
8+
import com.fasterxml.jackson.databind.ObjectMapper;
9+
10+
public class OptionalMergeTest extends ModuleTestBase
11+
{
12+
// [modules-java8#214]
13+
static class OptionalListWrapper {
14+
@JsonMerge
15+
public Optional<List<String>> list;
16+
}
17+
18+
private final ObjectMapper MAPPER = mapperWithModule();
19+
20+
// [modules-java8#214]: ReferenceType of List, merge
21+
public void testMergeToListViaRef() throws Exception
22+
{
23+
OptionalListWrapper base = MAPPER.readValue(a2q("{'list':['a']}"),
24+
OptionalListWrapper.class);
25+
assertNotNull(base.list);
26+
assertEquals(Arrays.asList("a"), base.list.get());
27+
28+
OptionalListWrapper merged = MAPPER.readerForUpdating(base)
29+
.readValue(a2q("{'list':['b']}"));
30+
assertSame(base, merged);
31+
assertEquals(Arrays.asList("a", "b"), base.list.get());
32+
}
33+
}

0 commit comments

Comments
 (0)