1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package examples;
17
18 import java.util.Map;
19 import java.util.TreeMap;
20
21 import junit.framework.TestCase;
22
23 import org.yaml.snakeyaml.Yaml;
24 import org.yaml.snakeyaml.constructor.Constructor;
25
26 public class CustomMapExampleTest extends TestCase {
27 public void testMap() {
28 Yaml yaml = new Yaml(new CustomConstructor());
29 @SuppressWarnings("unchecked")
30 Map<Integer, String> data = (Map<Integer, String>) yaml
31 .load("{2: '222', 1: '111', 3: '333'}");
32 assertTrue(data instanceof TreeMap);
33 Object[] keys = data.keySet().toArray();
34
35 assertEquals(new Integer(1), keys[0]);
36 assertEquals(new Integer(2), keys[1]);
37 assertEquals(new Integer(3), keys[2]);
38 }
39
40 class CustomConstructor extends Constructor {
41 @Override
42 protected Map<Object, Object> createDefaultMap() {
43 return new TreeMap<Object, Object>();
44 }
45 }
46 }