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