View Javadoc
1 package test.net.sourceforge.pmd.symboltable; 2 3 import junit.framework.TestCase; 4 import net.sourceforge.pmd.ast.ASTVariableDeclaratorId; 5 import net.sourceforge.pmd.ast.SimpleNode; 6 import net.sourceforge.pmd.symboltable.ClassScope; 7 import net.sourceforge.pmd.symboltable.NameOccurrence; 8 import net.sourceforge.pmd.symboltable.VariableNameDeclaration; 9 10 public class ClassScopeTest extends TestCase { 11 12 public void testContains() { 13 ClassScope s = new ClassScope("Foo"); 14 ASTVariableDeclaratorId node = new ASTVariableDeclaratorId(1); 15 node.setImage("bar"); 16 s.addDeclaration(new VariableNameDeclaration(node)); 17 assertTrue(s.getVariableDeclarations(false).keySet().iterator().hasNext()); 18 } 19 20 public void testCantContainsSuperToString() { 21 ClassScope s = new ClassScope("Foo"); 22 SimpleNode node = new SimpleNode(1); 23 node.setImage("super.toString"); 24 assertTrue(!s.contains(new NameOccurrence(node, node.getImage()))); 25 } 26 27 public void testContainsStaticVariablePrefixedWithClassName() { 28 ClassScope s = new ClassScope("Foo"); 29 ASTVariableDeclaratorId node = new ASTVariableDeclaratorId(1); 30 node.setImage("X"); 31 s.addDeclaration(new VariableNameDeclaration(node)); 32 33 SimpleNode node2 = new SimpleNode(2); 34 node2.setImage("Foo.X"); 35 assertTrue(s.contains(new NameOccurrence(node2, node2.getImage()))); 36 } 37 38 public void testClassName() { 39 ClassScope s = new ClassScope("Foo"); 40 assertEquals("Foo", s.getClassName()); 41 } 42 43 // FIXME - these will break when this goes from Anonymous$1 to Foo$1 44 public void testAnonymousInnerClassName() { 45 ClassScope s = new ClassScope(); 46 assertEquals("Anonymous$1", s.getClassName()); 47 s = new ClassScope(); 48 assertEquals("Anonymous$2", s.getClassName()); 49 } 50 51 52 }

This page was automatically generated by Maven