1
2
3
4
5
6
7
8
9
10
11 package org.mule.transformers.xml;
12
13 import org.mule.module.xml.util.XMLUtils;
14 import org.mule.transformer.AbstractTransformerTestCase;
15
16 import javax.xml.transform.TransformerFactoryConfigurationError;
17
18 import org.custommonkey.xmlunit.XMLUnit;
19 import org.w3c.dom.Document;
20
21
22
23
24 public abstract class AbstractXmlTransformerTestCase extends AbstractTransformerTestCase
25 {
26
27 protected AbstractXmlTransformerTestCase()
28 {
29 super();
30 XMLUnit.setIgnoreWhitespace(true);
31 XMLUnit.setXSLTVersion("2.0");
32 try
33 {
34 XMLUnit.getTransformerFactory();
35 }
36 catch (TransformerFactoryConfigurationError e)
37 {
38 XMLUnit.setTransformerFactory(XMLUtils.TRANSFORMER_FACTORY_JDK5);
39 }
40 }
41
42 @Override
43 public boolean compareResults(Object expected, Object result)
44 {
45 if (expected instanceof Document && result instanceof Document)
46 {
47 return XMLUnit.compareXML((Document)expected, (Document)result).similar();
48 }
49 else if (expected instanceof String && result instanceof String)
50 {
51 try
52 {
53 String expectedString = this.normalizeString((String)expected);
54 String resultString = this.normalizeString((String)result);
55 return XMLUnit.compareXML(expectedString, resultString).similar();
56 }
57 catch (Exception ex)
58 {
59 return false;
60 }
61 }
62
63
64 return super.compareResults(expected, result);
65 }
66
67 }