1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.apache.struts2.json;
22
23 import java.util.Map;
24
25 import junit.framework.TestCase;
26
27 public class JSONUtilTest extends TestCase {
28
29 /***
30 * Asserts that a bean can be serialized to JSON and restored as a map
31 */
32 public void testSerializeDeserialize() throws Exception {
33 Bean bean1 = new Bean();
34
35 bean1.setStringField("str");
36 bean1.setBooleanField(true);
37 bean1.setCharField('s');
38 bean1.setDoubleField(10.1);
39 bean1.setFloatField(1.5f);
40 bean1.setIntField(10);
41 bean1.setLongField(100);
42 bean1.setEnumField(AnEnum.ValueA);
43 bean1.setEnumBean(AnEnumBean.Two);
44
45 String json = JSONUtil.serialize(bean1);
46
47 Map result = (Map) JSONUtil.deserialize(json);
48 assertEquals("str", result.get("stringField"));
49 assertEquals(true, result.get("booleanField"));
50 assertEquals("s", result.get("charField"));
51
52 assertEquals(10.1, result.get("doubleField"));
53 assertEquals(1.5, result.get("floatField"));
54
55 assertEquals(10L, result.get("intField"));
56
57 assertEquals(AnEnum.ValueA, AnEnum.valueOf((String) result.get("enumField")));
58
59
60
61 assertEquals(AnEnumBean.Two, AnEnumBean.valueOf((String) result.get("enumBean")));
62
63
64
65 }
66 }