1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package examples.collections;
17
18 import java.util.ArrayList;
19 import java.util.List;
20 import java.util.Map;
21
22 import junit.framework.TestCase;
23
24 import org.yaml.snakeyaml.Util;
25 import org.yaml.snakeyaml.Yaml;
26
27
28
29
30
31 public class TypeSafeListNoGerericsTest extends TestCase {
32 public void testDumpList() {
33 ListBean bean = new ListBean();
34 List<String> list = new ArrayList<String>();
35 list.add("aaa");
36 list.add("bbb");
37 bean.setChildren(list);
38 List<Developer> developers = new ArrayList<Developer>();
39 developers.add(new Developer("Fred", "creator"));
40 developers.add(new Developer("John", "committer"));
41 bean.setDevelopers(developers);
42 Yaml yaml = new Yaml();
43 String output = yaml.dumpAsMap(bean);
44
45 String etalon = Util.getLocalResource("examples/list-bean-4.yaml");
46 assertEquals(etalon, output);
47 }
48
49 @SuppressWarnings("unchecked")
50 public void testLoadList() {
51 String output = Util.getLocalResource("examples/list-bean-1.yaml");
52
53 Yaml beanLoader = new Yaml();
54 ListBean parsed = beanLoader.loadAs(output, ListBean.class);
55 assertNotNull(parsed);
56 List<String> list2 = parsed.getChildren();
57 assertEquals(2, list2.size());
58 assertEquals("aaa", list2.get(0));
59 assertEquals("bbb", list2.get(1));
60 List<Map<String, String>> developers = parsed.getDevelopers();
61 assertEquals(2, developers.size());
62 Map<String, String> fred = developers.get(0);
63 assertEquals("Fred", fred.get("name"));
64 assertEquals("creator", fred.get("role"));
65 }
66
67 @SuppressWarnings("rawtypes")
68 public static class ListBean {
69 private List<String> children;
70 private String name;
71 private List developers;
72
73 public ListBean() {
74 name = "Bean123";
75 }
76
77 public List<String> getChildren() {
78 return children;
79 }
80
81 public void setChildren(List<String> children) {
82 this.children = children;
83 }
84
85 public String getName() {
86 return name;
87 }
88
89 public void setName(String name) {
90 this.name = name;
91 }
92
93 public List getDevelopers() {
94 return developers;
95 }
96
97 public void setDevelopers(List developers) {
98 this.developers = developers;
99 }
100 }
101
102 public static class Developer {
103 private String name;
104 private String role;
105
106 public Developer() {
107 }
108
109 public Developer(String name, String role) {
110 this.name = name;
111 this.role = role;
112 }
113
114 public String getName() {
115 return name;
116 }
117
118 public void setName(String name) {
119 this.name = name;
120 }
121
122 public String getRole() {
123 return role;
124 }
125
126 public void setRole(String role) {
127 this.role = role;
128 }
129 }
130 }