1   package test.net.sourceforge.pmd.ast;
2   
3   import net.sourceforge.pmd.PMD;
4   import net.sourceforge.pmd.ast.ASTAssignmentOperator;
5   import test.net.sourceforge.pmd.testframework.ParserTst;
6   
7   import java.util.Set;
8   
9   public class ASTAssignmentOperatorTest extends ParserTst {
10  
11      public void testSimpleAssignmentRecognized() throws Throwable {
12          Set ops = super.getNodes(ASTAssignmentOperator.class, TEST1);
13          assertTrue(!((ASTAssignmentOperator) (ops.iterator().next())).isCompound());
14      }
15  
16      public void testCompoundAssignmentPlusRecognized() throws Throwable {
17          Set ops = super.getNodes(ASTAssignmentOperator.class, TEST2);
18          assertTrue(((ASTAssignmentOperator) (ops.iterator().next())).isCompound());
19      }
20  
21      public void testCompoundAssignmentMultRecognized() throws Throwable {
22          Set ops = super.getNodes(ASTAssignmentOperator.class, TEST3);
23          assertTrue(((ASTAssignmentOperator) (ops.iterator().next())).isCompound());
24      }
25  
26      private static final String TEST1 =
27              "public class Foo {" + PMD.EOL +
28              " void bar() {" + PMD.EOL +
29              "  int x;" + PMD.EOL +
30              "  x=2;" + PMD.EOL +
31              " }" + PMD.EOL +
32              "}";
33  
34      private static final String TEST2 =
35              "public class Foo {" + PMD.EOL +
36              " void bar() {" + PMD.EOL +
37              "  int x;" + PMD.EOL +
38              "  x += 2;" + PMD.EOL +
39              " }" + PMD.EOL +
40              "}";
41  
42      private static final String TEST3 =
43              "public class Foo {" + PMD.EOL +
44              " void bar() {" + PMD.EOL +
45              "  int x;" + PMD.EOL +
46              "  x *= 2;" + PMD.EOL +
47              " }" + PMD.EOL +
48              "}";
49  }