1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.juneau.a.rttests;
18
19 import static org.apache.juneau.commons.utils.CollectionUtils.*;
20 import static org.apache.juneau.junit.bct.BctAssertions.*;
21
22 import java.util.*;
23
24 import org.apache.juneau.*;
25 import org.apache.juneau.collections.*;
26 import org.junit.jupiter.params.*;
27 import org.junit.jupiter.params.provider.*;
28
29
30
31
32
33 class JsonMaps_RoundTripTest extends RoundTripTest_Base {
34
35
36
37
38
39 @ParameterizedTest
40 @MethodSource("testers")
41 void a01_basic(RoundTrip_Tester t) throws Exception {
42 var x1 = new A(JsonMap.ofJson("{f1:'a',f2:2}"));
43 x1 = t.roundTrip(x1, A.class);
44 assertBean(x1, "f1,f2", "a,2");
45
46 var x2 = a(x1);
47 x2 = t.roundTrip(x2, A[].class);
48 assertBean(x2, "length,#{f1,f2}", "1,[{a,2}]");
49
50 var x3 = l(new A(JsonMap.ofJson("{f1:'a',f2:2}")));
51 x3 = t.roundTrip(x3, List.class, A.class);
52 assertBean(x3, "size,0{f1,f2}", "1,{a,2}");
53
54 var x4 = m("a",new A(JsonMap.ofJson("{f1:'a',f2:2}")));
55 x4 = t.roundTrip(x4, Map.class, String.class, A.class);
56 assertBean(x4, "size,a{f1,f2}", "1,{a,2}");
57 }
58
59 public static class A {
60 private String f1;
61 private int f2;
62 public A(JsonMap m) {
63 this.f1 = m.getString("f1");
64 this.f2 = m.getInt("f2");
65 }
66 public JsonMap swap(BeanSession session) {
67 return JsonMap.of("f1",f1,"f2",f2);
68 }
69 }
70 }