1 /***
2 * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
3 */
4 package test.net.sourceforge.pmd.rules;
5
6 import net.sourceforge.pmd.PMD;
7 import net.sourceforge.pmd.rules.SimplifyBooleanReturnsRule;
8 import test.net.sourceforge.pmd.testframework.SimpleAggregatorTst;
9 import test.net.sourceforge.pmd.testframework.TestDescriptor;
10
11 public class SimplifyBooleanReturnsRuleTest extends SimpleAggregatorTst {
12
13
14 public void testAll() {
15 runTests(new TestDescriptor[] {
16 new TestDescriptor(TEST1, "bad", 1, new SimplifyBooleanReturnsRule()),
17 new TestDescriptor(TEST2, "bad", 1, new SimplifyBooleanReturnsRule()),
18 new TestDescriptor(TEST3, "ok", 0, new SimplifyBooleanReturnsRule()),
19 });
20 }
21
22 private static final String TEST1 =
23 "public class Foo {" + PMD.EOL +
24 " public void foo() { " + PMD.EOL +
25 " if (true) {" + PMD.EOL +
26 " return true;" + PMD.EOL +
27 " } else {" + PMD.EOL +
28 " return false;" + PMD.EOL +
29 " }" + PMD.EOL +
30 " }" + PMD.EOL +
31 "}";
32
33 private static final String TEST2 =
34 "public class Foo {" + PMD.EOL +
35 " public boolean foo() { " + PMD.EOL +
36 " if (true) " + PMD.EOL +
37 " return true;" + PMD.EOL +
38 " else " + PMD.EOL +
39 " return false;" + PMD.EOL +
40 " }" + PMD.EOL +
41 "}";
42
43 private static final String TEST3 =
44 "public class Foo {" + PMD.EOL +
45 " public Object foo() { " + PMD.EOL +
46 " if (!true) {" + PMD.EOL +
47 " return null;" + PMD.EOL +
48 " } else {}" + PMD.EOL +
49 " return null;" + PMD.EOL +
50 " }" + PMD.EOL +
51 "}";
52
53 }