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