View Javadoc
1   package net.sourceforge.pmd.lang.java.ast;
2   
3   import net.sourceforge.pmd.PMD;
4   import net.sourceforge.pmd.lang.LanguageRegistry;
5   import net.sourceforge.pmd.lang.java.JavaLanguageModule;
6   import net.sourceforge.pmd.lang.java.ParserTst;
7   
8   import org.junit.Test;
9   
10  
11  public class ASTAnnotationTest extends ParserTst {
12  
13      @Test
14      public void testAnnotationSucceedsWithDefaultMode() throws Throwable {
15          getNodes(ASTAnnotation.class, TEST1);
16      }
17  
18      @Test(expected = ParseException.class)
19      public void testAnnotationFailsWithJDK14() throws Throwable {
20          getNodes(LanguageRegistry.getLanguage(JavaLanguageModule.NAME).getVersion("1.4"), ASTAnnotation.class, TEST1);
21      }
22  
23      @Test
24      public void testAnnotationSucceedsWithJDK15() throws Throwable {
25          getNodes(LanguageRegistry.getLanguage(JavaLanguageModule.NAME).getVersion("1.5"), ASTAnnotation.class, TEST1);
26      }
27  
28      private static final String TEST1 =
29              "public class Foo extends Buz {" + PMD.EOL +
30              " @Override" + PMD.EOL +
31              " void bar() {" + PMD.EOL +
32              "  // overrides a superclass method" + PMD.EOL +
33              " }" + PMD.EOL +
34              "}";
35  
36      public static junit.framework.Test suite() {
37          return new junit.framework.JUnit4TestAdapter(ASTAnnotationTest.class);
38      }
39  }