KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > test > net > sourceforge > pmd > SuppressWarningsTest


1
2  package test.net.sourceforge.pmd;
3  
4  import net.sourceforge.pmd.AbstractRule;
5  import net.sourceforge.pmd.PMD;
6  import net.sourceforge.pmd.Report;
7  import net.sourceforge.pmd.SourceType;
8  import net.sourceforge.pmd.ast.ASTClassOrInterfaceDeclaration;
9  import net.sourceforge.pmd.ast.ASTVariableDeclaratorId;
10  import test.net.sourceforge.pmd.testframework.RuleTst;
11  
12  public class SuppressWarningsTest extends RuleTst {
13  
14      private static class FooRule extends AbstractRule {
15          public Object JavaDoc visit(ASTClassOrInterfaceDeclaration c, Object JavaDoc ctx) {
16              if (c.getImage().equalsIgnoreCase("Foo")) addViolation(ctx, c);
17              return super.visit(c, ctx);
18          }
19  
20          public Object JavaDoc visit(ASTVariableDeclaratorId c, Object JavaDoc ctx) {
21              if (c.getImage().equalsIgnoreCase("Foo")) addViolation(ctx, c);
22              return super.visit(c, ctx);
23          }
24
25          public String JavaDoc getName() {
26              return "NoFoo";
27          }
28      }
29  
30      public void testClassLevelSuppression() throws Throwable JavaDoc {
31          Report rpt = new Report();
32          runTestFromString(TEST1, new FooRule(), rpt, SourceType.JAVA_15);
33          assertEquals(0, rpt.size());
34          runTestFromString(TEST2, new FooRule(), rpt, SourceType.JAVA_15);
35          assertEquals(0, rpt.size());
36      }
37  
38      public void testInheritedSuppression() throws Throwable JavaDoc {
39          Report rpt = new Report();
40          runTestFromString(TEST3, new FooRule(), rpt, SourceType.JAVA_15);
41          assertEquals(0, rpt.size());
42      }
43  
44      public void testMethodLevelSuppression() throws Throwable JavaDoc {
45          Report rpt = new Report();
46          runTestFromString(TEST4, new FooRule(), rpt, SourceType.JAVA_15);
47          assertEquals(1, rpt.size());
48      }
49  
50      public void testConstructorLevelSuppression() throws Throwable JavaDoc {
51          Report rpt = new Report();
52          runTestFromString(TEST5, new FooRule(), rpt, SourceType.JAVA_15);
53          assertEquals(0, rpt.size());
54      }
55  
56      public void testFieldLevelSuppression() throws Throwable JavaDoc {
57          Report rpt = new Report();
58          runTestFromString(TEST6, new FooRule(), rpt, SourceType.JAVA_15);
59          assertEquals(1, rpt.size());
60      }
61  
62      public void testParameterLevelSuppression() throws Throwable JavaDoc {
63          Report rpt = new Report();
64          runTestFromString(TEST7, new FooRule(), rpt, SourceType.JAVA_15);
65          assertEquals(1, rpt.size());
66      }
67  
68      public void testLocalVariableLevelSuppression() throws Throwable JavaDoc {
69          Report rpt = new Report();
70          runTestFromString(TEST8, new FooRule(), rpt, SourceType.JAVA_15);
71          assertEquals(1, rpt.size());
72      }
73  
74      public void testSpecificSuppression() throws Throwable JavaDoc {
75          Report rpt = new Report();
76          runTestFromString(TEST9, new FooRule(), rpt, SourceType.JAVA_15);
77          assertEquals(1, rpt.size());
78      }
79      
80      public void testNoSuppressionBlank() throws Throwable JavaDoc {
81          Report rpt = new Report();
82          runTestFromString(TEST10, new FooRule(), rpt, SourceType.JAVA_15);
83          assertEquals(2, rpt.size());
84      }
85      
86      public void testNoSuppressionSomethingElseS() throws Throwable JavaDoc {
87          Report rpt = new Report();
88          runTestFromString(TEST11, new FooRule(), rpt, SourceType.JAVA_15);
89          assertEquals(2, rpt.size());
90      }
91
92      private static final String JavaDoc TEST1 =
93              "@SuppressWarnings(\"PMD\")" + PMD.EOL +
94              "public class Foo {}";
95  
96      private static final String JavaDoc TEST2 =
97              "@SuppressWarnings(\"PMD\")" + PMD.EOL +
98              "public class Foo {" + PMD.EOL +
99              " void bar() {" + PMD.EOL +
100              " int foo;" + PMD.EOL +
101              " }" + PMD.EOL +
102              "}";
103  
104      private static final String JavaDoc TEST3 =
105              "public class Baz {" + PMD.EOL +
106              " @SuppressWarnings(\"PMD\")" + PMD.EOL +
107              " public class Bar {" + PMD.EOL +
108              " void bar() {" + PMD.EOL +
109              " int foo;" + PMD.EOL +
110              " }" + PMD.EOL +
111              " }" + PMD.EOL +
112              "}";
113  
114      private static final String JavaDoc TEST4 =
115              "public class Foo {" + PMD.EOL +
116              " @SuppressWarnings(\"PMD\")" + PMD.EOL +
117              " void bar() {" + PMD.EOL +
118              " int foo;" + PMD.EOL +
119              " }" + PMD.EOL +
120              "}";
121  
122      private static final String JavaDoc TEST5 =
123              "public class Bar {" + PMD.EOL +
124              " @SuppressWarnings(\"PMD\")" + PMD.EOL +
125              " public Bar() {" + PMD.EOL +
126              " int foo;" + PMD.EOL +
127              " }" + PMD.EOL +
128              "}";
129  
130      private static final String JavaDoc TEST6 =
131              "public class Bar {" + PMD.EOL +
132              " @SuppressWarnings(\"PMD\")" + PMD.EOL +
133              " int foo;" + PMD.EOL +
134              " void bar() {" + PMD.EOL +
135              " int foo;" + PMD.EOL +
136              " }" + PMD.EOL +
137              "}";
138  
139      private static final String JavaDoc TEST7 =
140              "public class Bar {" + PMD.EOL +
141              " int foo;" + PMD.EOL +
142              " void bar(@SuppressWarnings(\"PMD\") int foo) {}" + PMD.EOL +
143              "}";
144  
145      private static final String JavaDoc TEST8 =
146              "public class Bar {" + PMD.EOL +
147              " int foo;" + PMD.EOL +
148              " void bar() {" + PMD.EOL +
149              " @SuppressWarnings(\"PMD\") int foo;" + PMD.EOL +
150              " }" + PMD.EOL +
151              "}";
152  
153      private static final String JavaDoc TEST9 =
154              "public class Bar {" + PMD.EOL +
155              " int foo;" + PMD.EOL +
156              " void bar() {" + PMD.EOL +
157              " @SuppressWarnings(\"PMD.NoFoo\") int foo;" + PMD.EOL +
158              " }" + PMD.EOL +
159              "}";
160
161      private static final String JavaDoc TEST10 =
162              "public class Bar {" + PMD.EOL +
163              " int foo;" + PMD.EOL +
164              " void bar() {" + PMD.EOL +
165              " @SuppressWarnings(\"\") int foo;" + PMD.EOL +
166              " }" + PMD.EOL +
167              "}";
168
169      private static final String JavaDoc TEST11 =
170              "public class Bar {" + PMD.EOL +
171              " int foo;" + PMD.EOL +
172              " void bar() {" + PMD.EOL +
173              " @SuppressWarnings(\"SomethingElse\") int foo;" + PMD.EOL +
174              " }" + PMD.EOL +
175              "}";
176  }
177
178          
179
Popular Tags