1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.yaml.snakeyaml.javabeans;
17
18 import java.io.Serializable;
19
20 import junit.framework.TestCase;
21
22 import org.yaml.snakeyaml.Yaml;
23
24 public class ConstructEmptyBeanTest extends TestCase {
25
26
27
28 public void testEmptyBean() {
29 Yaml yaml = new Yaml();
30 EmptyBean bean = (EmptyBean) yaml
31 .load("!!org.yaml.snakeyaml.javabeans.ConstructEmptyBeanTest$EmptyBean {}");
32 assertNotNull(bean);
33 assertNull(bean.getFirstName());
34 assertEquals(5, bean.getHatSize());
35 }
36
37
38
39
40 public void testEmptyBean1() {
41 Yaml beanLoader = new Yaml();
42 EmptyBean bean = beanLoader.loadAs(
43 "!!org.yaml.snakeyaml.javabeans.ConstructEmptyBeanTest$EmptyBean {}",
44 EmptyBean.class);
45 assertNotNull(bean);
46 assertNull(bean.getFirstName());
47 assertEquals(5, bean.getHatSize());
48 }
49
50
51
52
53 public void testEmptyBean2() {
54 Yaml beanLoader = new Yaml();
55 EmptyBean bean = beanLoader.loadAs("!!Bla-bla-bla {}", EmptyBean.class);
56 assertNotNull(bean);
57 assertNull(bean.getFirstName());
58 assertEquals(5, bean.getHatSize());
59 }
60
61
62
63
64 public void testEmptyBean3() {
65 Yaml beanLoader = new Yaml();
66 EmptyBean bean = beanLoader.loadAs("{ }", EmptyBean.class);
67 assertNotNull(bean);
68 assertNull(bean.getFirstName());
69 assertEquals(5, bean.getHatSize());
70 }
71
72
73
74
75 public void testEmptyBean4() {
76 Yaml beanLoader = new Yaml();
77 EmptyBean bean = beanLoader.loadAs("", EmptyBean.class);
78 assertNull(bean);
79 }
80
81
82
83
84 public void testEmptyBean5() {
85 Yaml beanLoader = new Yaml();
86 EmptyBean bean = beanLoader.loadAs("!Bla-bla-bla {}", EmptyBean.class);
87 assertNotNull(bean);
88 assertNull(bean.getFirstName());
89 assertEquals(5, bean.getHatSize());
90 }
91
92
93
94
95 public void testEmptyBean6() {
96 Yaml beanLoader = new Yaml();
97 try {
98 beanLoader.loadAs("{", EmptyBean.class);
99 fail("Invalid document provided.");
100 } catch (Exception e) {
101 assertEquals(
102 "while parsing a flow node; expected the node content, but found StreamEnd; in 'string', line 1, column 2:\n {\n ^",
103 e.getMessage());
104 }
105 }
106
107 public static class EmptyBean implements Serializable {
108 private static final long serialVersionUID = -8001155967276657180L;
109 private String firstName;
110 private int hatSize = 5;
111
112 public EmptyBean() {
113 }
114
115 public String getFirstName() {
116 return firstName;
117 }
118
119 public void setFirstName(String firstName) {
120 this.firstName = firstName;
121 }
122
123 public int getHatSize() {
124 return hatSize;
125 }
126
127 public void setHatSize(int hatSize) {
128 this.hatSize = hatSize;
129 }
130 }
131 }