View Javadoc
1   package org.codehaus.mojo.jaxb2.schemageneration.postprocessing.javadoc;
2   
3   import org.codehaus.mojo.jaxb2.schemageneration.postprocessing.javadoc.wrappers.ExampleXmlWrapper;
4   import org.junit.Assert;
5   import org.junit.Test;
6   import org.w3c.dom.Document;
7   import org.w3c.dom.Node;
8   
9   import java.util.Arrays;
10  import java.util.List;
11  
12  /**
13   * @author <a href="mailto:lj@jguru.se">Lennart J&ouml;relid</a>, jGuru Europe AB
14   */
15  public class XsdAnnotationProcessorTest extends AbstractSourceCodeAwareNodeProcessingTest {
16  
17      // Shared state
18      private JavaDocRenderer renderer = new DefaultJavaDocRenderer();
19  
20      @Test
21      public void validateProcessingNodesInVanillaXSD() throws Exception {
22  
23          // Assemble
24          final String path = "testdata/schemageneration/javadoc/expectedTransformedSomewhatNamedPerson.xml";
25          final String expected = readFully(path);
26          final Document document = namespace2DocumentMap.get(SomewhatNamedPerson.NAMESPACE);
27          final Node rootNode = document.getFirstChild();
28  
29          final XsdAnnotationProcessor unitUnderTest = new XsdAnnotationProcessor(docs, renderer);
30  
31          // Act
32          process(rootNode, true, unitUnderTest);
33  
34          // Assert
35          final String processed = printDocument(document);
36          // System.out.println("Got: " + processed);
37  
38          Assert.assertTrue(compareXmlIgnoringWhitespace(expected, processed).identical());
39      }
40  
41      /**
42       * {@inheritDoc}
43       */
44      @Override
45      protected List<Class<?>> getJaxbAnnotatedClassesForJaxbContext() {
46          return Arrays.<Class<?>>asList(SomewhatNamedPerson.class, ExampleXmlWrapper.class);
47      }
48  }