1
2
3
4
5
6 package net.sourceforge.pmd.ast;
7
8 import static org.junit.Assert.assertEquals;
9 import static org.junit.Assert.assertNull;
10 import net.sourceforge.pmd.PMD;
11 import net.sourceforge.pmd.lang.java.ast.ASTThrowStatement;
12 import net.sourceforge.pmd.testframework.ParserTst;
13
14 import org.junit.Test;
15
16
17
18
19
20 public class ASTThrowStatementTest extends ParserTst {
21
22 @Test
23 public final void testGetFirstASTNameImageNull() throws Throwable {
24 ASTThrowStatement t = getNodes(ASTThrowStatement.class, NULL_NAME).iterator().next();
25 assertNull(t.getFirstClassOrInterfaceTypeImage());
26 }
27
28 @Test
29 public final void testGetFirstASTNameImageNew() throws Throwable {
30 ASTThrowStatement t = getNodes(ASTThrowStatement.class, OK_NAME).iterator().next();
31 assertEquals("FooException", t.getFirstClassOrInterfaceTypeImage());
32 }
33
34 private static final String NULL_NAME =
35 "public class Test {" + PMD.EOL +
36 " void bar() {" + PMD.EOL +
37 " throw e;" + PMD.EOL +
38 " }" + PMD.EOL +
39 "}";
40
41 private static final String OK_NAME =
42 "public class Test {" + PMD.EOL +
43 " void bar() {" + PMD.EOL +
44 " throw new FooException();" + PMD.EOL +
45 " }" + PMD.EOL +
46 "}";
47
48 public static junit.framework.Test suite() {
49 return new junit.framework.JUnit4TestAdapter(ASTThrowStatementTest.class);
50 }
51 }