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.RuleSetNotFoundException; 6 import test.net.sourceforge.pmd.testframework.SimpleAggregatorTst; 7 import test.net.sourceforge.pmd.testframework.TestDescriptor; 8 9 public class NonCaseLabelInSwitchStatementRuleTest extends SimpleAggregatorTst { 10 private Rule rule; 11 12 public void setUp() throws RuleSetNotFoundException { 13 rule = findRule("design", "NonCaseLabelInSwitchStatement"); 14 } 15 16 public void testAll() { 17 runTests(new TestDescriptor[]{ 18 new TestDescriptor(TEST1, "label inside switch", 1, rule), 19 new TestDescriptor(TEST2, "ok", 0, rule), 20 }); 21 } 22 23 private static final String TEST1 = 24 "public class Foo {" + PMD.EOL + 25 " void bar(int x) {" + PMD.EOL + 26 " switch (x) {" + PMD.EOL + 27 " case 2: int y=8;" + PMD.EOL + 28 " break;" + PMD.EOL + 29 " somelabel: " + PMD.EOL + 30 " break;" + PMD.EOL + 31 " default: " + PMD.EOL + 32 " int j=8;" + PMD.EOL + 33 " }" + PMD.EOL + 34 " }" + PMD.EOL + 35 "}"; 36 37 private static final String TEST2 = 38 "public class Foo {" + PMD.EOL + 39 " void bar(int x) {" + PMD.EOL + 40 " switch (x) {" + PMD.EOL + 41 " case 2: int y=8;" + PMD.EOL + 42 " break;" + PMD.EOL + 43 " default: " + PMD.EOL + 44 " int j=8;" + PMD.EOL + 45 " }" + PMD.EOL + 46 " }" + PMD.EOL + 47 "}"; 48 }