1 /***
2 * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
3 */
4 package test.net.sourceforge.pmd.cpd;
5
6 import junit.framework.TestCase;
7 import net.sourceforge.pmd.cpd.JavaTokenizer;
8 import net.sourceforge.pmd.cpd.SourceCode;
9 import net.sourceforge.pmd.cpd.Tokenizer;
10 import net.sourceforge.pmd.cpd.Tokens;
11
12 import java.io.StringReader;
13
14 public class JavaTokensTokenizerTest extends TestCase {
15
16 private static final String EOL = System.getProperty("line.separator", "\n");
17
18 public void test1() throws Throwable {
19 Tokenizer tokenizer = new JavaTokenizer();
20 SourceCode sourceCode = new SourceCode("1");
21 String data = "public class Foo {}";
22 Tokens tokens = new Tokens();
23 tokenizer.tokenize(sourceCode, tokens, new StringReader(data));
24 assertEquals(6, tokens.size());
25 assertEquals("public class Foo {}", sourceCode.getSlice(0, 0));
26 }
27
28 public void test2() throws Throwable {
29 Tokenizer t = new JavaTokenizer();
30 SourceCode sourceCode = new SourceCode("1");
31 String data = "public class Foo {" + EOL + "public void bar() {}" + EOL + "public void buz() {}" + EOL + "}";
32 Tokens tokens = new Tokens();
33 t.tokenize(sourceCode, tokens, new StringReader(data));
34 assertEquals("public class Foo {" + EOL + "public void bar() {}", sourceCode.getSlice(0, 1));
35 }
36
37 public void testDiscardSemicolons() throws Throwable {
38 Tokenizer t = new JavaTokenizer();
39 SourceCode sourceCode = new SourceCode("1");
40 String data = "public class Foo {private int x;}";
41 Tokens tokens = new Tokens();
42 t.tokenize(sourceCode, tokens, new StringReader(data));
43 assertEquals(9, tokens.size());
44 }
45
46 public void testDiscardImports() throws Throwable {
47 Tokenizer t = new JavaTokenizer();
48 SourceCode sourceCode = new SourceCode("1");
49 String data = "import java.io.File;" + EOL + "public class Foo {}";
50 Tokens tokens = new Tokens();
51 t.tokenize(sourceCode, tokens, new StringReader(data));
52 assertEquals(6, tokens.size());
53 }
54
55 public void testDiscardPkgStmts() throws Throwable {
56 Tokenizer t = new JavaTokenizer();
57 SourceCode sourceCode = new SourceCode("1");
58 String data = "package foo.bar.baz;" + EOL + "public class Foo {}";
59 Tokens tokens = new Tokens();
60 t.tokenize(sourceCode, tokens, new StringReader(data));
61 assertEquals(6, tokens.size());
62 }
63 }
64
65
This page was automatically generated by Maven