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 org.apache.maven.plugins.shade.relocation.Relocator;
23 import org.codehaus.plexus.util.IOUtil;
24 import org.custommonkey.xmlunit.Diff;
25 import org.custommonkey.xmlunit.XMLAssert;
26 import org.custommonkey.xmlunit.XMLUnit;
27 import org.junit.Before;
28 import org.junit.Test;
29
30 import java.io.InputStream;
31 import java.util.Collections;
32
33
34
35
36
37
38
39 public class ComponentsXmlResourceTransformerTest
40 {
41 private ComponentsXmlResourceTransformer transformer;
42
43 @Before
44 public void setUp()
45 {
46 this.transformer = new ComponentsXmlResourceTransformer();
47 }
48
49 @Test
50 public void testConfigurationMerging()
51 throws Exception
52 {
53
54 XMLUnit.setNormalizeWhitespace( true );
55
56 InputStream resourceAsStream = getClass().getResourceAsStream( "/components-1.xml" );
57 transformer.processResource( "components-1.xml", resourceAsStream,
58 Collections.<Relocator> emptyList(), 0 );
59 resourceAsStream.close();
60 InputStream resourceAsStream1 = getClass().getResourceAsStream( "/components-2.xml" );
61 transformer.processResource( "components-1.xml", resourceAsStream1,
62 Collections.<Relocator> emptyList(), 0 );
63 resourceAsStream1.close();
64 final InputStream resourceAsStream2 = getClass().getResourceAsStream( "/components-expected.xml" );
65 Diff diff = XMLUnit.compareXML(
66 IOUtil.toString( resourceAsStream2, "UTF-8" ),
67 IOUtil.toString( transformer.getTransformedResource(), "UTF-8" ) );
68
69
70 resourceAsStream2.close();
71 XMLAssert.assertXMLIdentical( diff, true );
72 }
73 }