1
2
3
4
5
6
7
8
9
10
11 package org.mule.transformers.xml.xstream;
12
13 import org.mule.api.transformer.Transformer;
14 import org.mule.module.xml.transformer.ObjectToXml;
15 import org.mule.module.xml.transformer.XmlToObject;
16 import org.mule.tck.testmodels.fruit.Apple;
17 import org.mule.transformers.xml.AbstractXmlTransformerTestCase;
18
19 import java.io.ByteArrayInputStream;
20 import java.util.HashMap;
21 import java.util.Map;
22
23 public class XmlObjectTransformersTestCase extends AbstractXmlTransformerTestCase
24 {
25 private Apple testObject = null;
26 private Map<String, Class> aliases = new HashMap<String, Class>();
27
28 public XmlObjectTransformersTestCase()
29 {
30 aliases.put("apple", Apple.class);
31 testObject = new Apple();
32 testObject.wash();
33 }
34
35 public Transformer getTransformer() throws Exception
36 {
37 ObjectToXml trans = createObject(ObjectToXml.class);
38 trans.setAliases(aliases);
39 return trans;
40 }
41
42 public Transformer getRoundTripTransformer() throws Exception
43 {
44 XmlToObject trans = createObject(XmlToObject.class);
45 trans.setAliases(aliases);
46 return trans;
47 }
48
49 public Object getTestData()
50 {
51 return testObject;
52 }
53
54 public Object getResultData()
55 {
56 return "<apple>\n" + " <bitten>false</bitten>\n"
57 + " <washed>true</washed>\n" + "</apple>";
58 }
59
60 public void testStreaming() throws Exception
61 {
62 XmlToObject transformer = createObject(XmlToObject.class);
63 transformer.setAliases(aliases);
64
65 String input = (String) this.getResultData();
66 assertEquals(testObject, transformer.transform(new ByteArrayInputStream(input.getBytes())));
67 }
68 }