diff --git a/pmd-xml/pom.xml b/pmd-xml/pom.xml index f10e9bc259..626ea6850d 100644 --- a/pmd-xml/pom.xml +++ b/pmd-xml/pom.xml @@ -18,6 +18,10 @@ + + org.antlr + antlr4-maven-plugin + maven-resources-plugin @@ -30,6 +34,10 @@ + + org.antlr + antlr4-runtime + net.sourceforge.pmd pmd-core diff --git a/pmd-xml/src/test/java/net/sourceforge/pmd/cpd/XmlCPDTokenizerTest.java b/pmd-xml/src/test/java/net/sourceforge/pmd/cpd/XmlCPDTokenizerTest.java new file mode 100644 index 0000000000..d152cf29b5 --- /dev/null +++ b/pmd-xml/src/test/java/net/sourceforge/pmd/cpd/XmlCPDTokenizerTest.java @@ -0,0 +1,36 @@ +/** + * BSD-style license; for more info see http://pmd.sourceforge.net/license.html + */ + +package net.sourceforge.pmd.cpd; + +import java.io.IOException; + +import org.apache.commons.io.IOUtils; +import org.junit.Before; +import org.junit.Test; + +import net.sourceforge.pmd.testframework.AbstractTokenizerTest; + +public class XmlCPDTokenizerTest extends AbstractTokenizerTest { + + private static final String FILENAME = "hello.xml"; + + @Before + @Override + public void buildTokenizer() throws IOException { + this.tokenizer = new XmlTokenizer(); + this.sourceCode = new SourceCode(new SourceCode.StringCodeLoader(this.getSampleCode(), FILENAME)); + } + + @Override + public String getSampleCode() throws IOException { + return IOUtils.toString(XmlTokenizer.class.getResourceAsStream(FILENAME)); + } + + @Test + public void tokenizeTest() throws IOException { + this.expectedTokenCount = 37; + super.tokenizeTest(); + } +} diff --git a/pmd-xml/src/test/resources/net/sourceforge/pmd/cpd/hello.xml b/pmd-xml/src/test/resources/net/sourceforge/pmd/cpd/hello.xml new file mode 100644 index 0000000000..3b86c4c08c --- /dev/null +++ b/pmd-xml/src/test/resources/net/sourceforge/pmd/cpd/hello.xml @@ -0,0 +1,5 @@ + + + Somehow we would like to improve this xml so we are not repeating the same content in this file or other files + Somehow we would like to improve this xml so we are not repeating the same content in this file or other files + \ No newline at end of file