⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nameoccurrencestest.java

📁 检查Java程序漏洞
💻 JAVA
字号:
/** * BSD-style license; for more info see http://pmd.sourceforge.net/license.html*/package test.net.sourceforge.pmd.symboltable;import junit.framework.TestCase;import net.sourceforge.pmd.ast.ASTName;import net.sourceforge.pmd.ast.ASTPrimaryExpression;import net.sourceforge.pmd.ast.ASTPrimaryPrefix;import net.sourceforge.pmd.ast.ASTPrimarySuffix;import net.sourceforge.pmd.symboltable.NameOccurrence;import net.sourceforge.pmd.symboltable.NameOccurrences;public class NameOccurrencesTest extends TestCase {    public void testNameLinkage() {        ASTPrimaryExpression primary = new ASTPrimaryExpression(1);        primary.testingOnly__setBeginLine(10);        ASTPrimaryPrefix prefix = new ASTPrimaryPrefix(2);        prefix.setUsesThisModifier();        prefix.testingOnly__setBeginLine(10);        primary.jjtAddChild(prefix, 0);        ASTPrimarySuffix suffix = new ASTPrimarySuffix(3);        suffix.setImage("x");        suffix.testingOnly__setBeginLine(10);        primary.jjtAddChild(suffix, 1);        NameOccurrences occs = new NameOccurrences(primary);        NameOccurrence thisOcc = (NameOccurrence) occs.iterator().next();        NameOccurrence xOcc = (NameOccurrence) occs.getNames().get(1);        assertEquals(thisOcc.getNameForWhichThisIsAQualifier(), xOcc);    }    // super    public void testSuper() {        ASTPrimaryExpression primary = new ASTPrimaryExpression(1);        primary.testingOnly__setBeginLine(10);        ASTPrimaryPrefix prefix = new ASTPrimaryPrefix(2);        prefix.setUsesSuperModifier();        prefix.testingOnly__setBeginLine(10);        primary.jjtAddChild(prefix, 0);        NameOccurrences occs = new NameOccurrences(primary);        assertEquals("super", ((NameOccurrence) occs.getNames().get(0)).getImage());    }    // this    public void testThis() {        ASTPrimaryExpression primary = new ASTPrimaryExpression(1);        primary.testingOnly__setBeginLine(10);        ASTPrimaryPrefix prefix = new ASTPrimaryPrefix(2);        prefix.setUsesThisModifier();        prefix.testingOnly__setBeginLine(10);        primary.jjtAddChild(prefix, 0);        NameOccurrences occs = new NameOccurrences(primary);        assertEquals("this", ((NameOccurrence) occs.getNames().get(0)).getImage());    }    // this.x    public void testFieldWithThis() {        ASTPrimaryExpression primary = new ASTPrimaryExpression(1);        primary.testingOnly__setBeginLine(10);        ASTPrimaryPrefix prefix = new ASTPrimaryPrefix(2);        prefix.setUsesThisModifier();        prefix.testingOnly__setBeginLine(10);        primary.jjtAddChild(prefix, 0);        ASTPrimarySuffix suffix = new ASTPrimarySuffix(3);        suffix.setImage("x");        suffix.testingOnly__setBeginLine(10);        primary.jjtAddChild(suffix, 1);        NameOccurrences occs = new NameOccurrences(primary);        assertEquals("this", ((NameOccurrence) occs.getNames().get(0)).getImage());        assertEquals("x", ((NameOccurrence) occs.getNames().get(1)).getImage());    }    // x    public void testField() {        ASTPrimaryExpression primary = new ASTPrimaryExpression(1);        primary.testingOnly__setBeginLine(10);        ASTPrimaryPrefix prefix = new ASTPrimaryPrefix(2);        prefix.testingOnly__setBeginLine(10);        primary.jjtAddChild(prefix, 0);        ASTName name = new ASTName(3);        name.setImage("x");        prefix.jjtAddChild(name, 0);        NameOccurrences occs = new NameOccurrences(primary);        assertEquals("x", ((NameOccurrence) occs.getNames().get(0)).getImage());    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -