1 package test.net.sourceforge.pmd.rules;
2
3 import net.sourceforge.pmd.PMD;
4 import net.sourceforge.pmd.Rule;
5 import net.sourceforge.pmd.rules.XPathRule;
6
7 public class SwitchStmtsShouldHaveDefaultRuleTest extends SimpleAggregatorTst {
8
9 private Rule rule;
10
11 public void setUp() {
12 rule = new XPathRule();
13 rule.addProperty("xpath", "//SwitchStatement[not(SwitchLabel[count(*) = 0])]");
14 }
15
16 public void testAll() {
17 runTests(new TestDescriptor[] {
18 new TestDescriptor(TEST1, "simple failure case", 1, rule),
19 new TestDescriptor(TEST2, "simple ok case", 0, rule)
20 });
21 }
22
23 private static final String TEST1 =
24 "public class SwitchStmtsShouldHaveDefault1 {" + PMD.EOL +
25 " public void bar() {" + PMD.EOL +
26 " int x = 2;" + PMD.EOL +
27 " switch (x) {" + PMD.EOL +
28 " case 2: int y=8;" + PMD.EOL +
29 " }" + PMD.EOL +
30 " }" + PMD.EOL +
31 "}";
32
33 private static final String TEST2 =
34 "public class SwitchStmtsShouldHaveDefault2 {" + PMD.EOL +
35 " public void bar() {" + PMD.EOL +
36 " int x = 2;" + PMD.EOL +
37 " switch (x) {" + PMD.EOL +
38 " case 2: int y=8;" + PMD.EOL +
39 " default: int j=8;" + PMD.EOL +
40 " }" + PMD.EOL +
41 " }" + PMD.EOL +
42 "}";
43
44
45 }
This page was automatically generated by Maven