1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.plugins.shade.resource;
20
21 import java.io.InputStream;
22 import java.util.Collections;
23
24 import org.apache.maven.plugins.shade.relocation.Relocator;
25 import org.codehaus.plexus.util.IOUtil;
26 import org.custommonkey.xmlunit.Diff;
27 import org.custommonkey.xmlunit.XMLAssert;
28 import org.custommonkey.xmlunit.XMLUnit;
29 import org.junit.Before;
30 import org.junit.Test;
31
32
33
34
35
36
37
38 public class ComponentsXmlResourceTransformerTest {
39 private ComponentsXmlResourceTransformer transformer;
40
41 @Before
42 public void setUp() {
43 this.transformer = new ComponentsXmlResourceTransformer();
44 }
45
46 @Test
47 public void testConfigurationMerging() throws Exception {
48
49 XMLUnit.setNormalizeWhitespace(true);
50
51 InputStream resourceAsStream = getClass().getResourceAsStream("/components-1.xml");
52 transformer.processResource("components-1.xml", resourceAsStream, Collections.<Relocator>emptyList(), 0);
53 resourceAsStream.close();
54 InputStream resourceAsStream1 = getClass().getResourceAsStream("/components-2.xml");
55 transformer.processResource("components-1.xml", resourceAsStream1, Collections.<Relocator>emptyList(), 0);
56 resourceAsStream1.close();
57 final InputStream resourceAsStream2 = getClass().getResourceAsStream("/components-expected.xml");
58 Diff diff = XMLUnit.compareXML(
59 IOUtil.toString(resourceAsStream2, "UTF-8"),
60 IOUtil.toString(transformer.getTransformedResource(), "UTF-8"));
61
62
63 resourceAsStream2.close();
64 XMLAssert.assertXMLIdentical(diff, true);
65 }
66 }