1
2
3
4
5
6
7
8
9
10
11 package org.mule.transformers.xml;
12
13 import org.mule.module.xml.transformer.XStreamFactory;
14 import org.mule.tck.AbstractMuleTestCase;
15 import org.mule.util.StringUtils;
16
17 import com.thoughtworks.xstream.XStream;
18
19 import java.util.Map;
20
21 import edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap;
22
23 public class XStreamFactoryTestCase extends AbstractMuleTestCase
24 {
25
26 public void testConcurrentHashMapConverter()
27 throws ClassNotFoundException, IllegalAccessException, InstantiationException
28 {
29 ConcurrentHashMap map = new ConcurrentHashMap();
30 map.put("foo", "bar");
31
32 XStream xstream = new XStreamFactory().getInstance();
33 String mapXML = xstream.toXML(map);
34 assertNotNull(mapXML);
35 assertTrue(StringUtils.isNotEmpty(mapXML));
36
37 Object newMap = xstream.fromXML(mapXML);
38 assertNotNull(newMap);
39 assertTrue(newMap instanceof ConcurrentHashMap);
40 assertEquals(1, ((Map)newMap).size());
41 assertEquals("bar", ((Map)newMap).get("foo"));
42 }
43
44 }