xmlrenderertest.java

来自「检查Java程序漏洞」· Java 代码 · 共 58 行

JAVA
58
字号
/** * BSD-style license; for more info see http://pmd.sourceforge.net/license.html*/package test.net.sourceforge.pmd.cpd;import junit.framework.TestCase;import net.sourceforge.pmd.PMD;import net.sourceforge.pmd.cpd.Match;import net.sourceforge.pmd.cpd.Renderer;import net.sourceforge.pmd.cpd.TokenEntry;import net.sourceforge.pmd.cpd.XMLRenderer;import java.util.ArrayList;import java.util.List;/** * @author  Philippe T'Seyen */public class XMLRendererTest extends TestCase{  public void testRender_NoMatches()  {    Renderer renderer = new XMLRenderer();    List list = new ArrayList();    String report = renderer.render(list.iterator());    assertEquals("<?xml version=\"1.0\"?><pmd-cpd></pmd-cpd>", report);  }  public void testRender_Match()  {    Renderer renderer = new XMLRenderer();    List list = new ArrayList();    Match match = new Match(75, new TokenEntry("public", "/var/Foo.java", 48), new TokenEntry("stuff", "/var/Foo.java", 73));    match.setLineCount(6);    match.setSourceCodeSlice("code fragment");    list.add(match);    String report = renderer.render(list.iterator());    assertEquals("<?xml version=\"1.0\"?><pmd-cpd><duplication lines=\"6\" tokens=\"75\"><file line=\"48\" path=\"/var/Foo.java\"/><file line=\"73\" path=\"/var/Foo.java\"/><codefragment><![CDATA[" + PMD.EOL + "code fragment" + PMD.EOL + "]]></codefragment></duplication></pmd-cpd>", report);  }  public void testRender_MultipleMatch()  {    Renderer renderer = new XMLRenderer();    List list = new ArrayList();    Match match1 = new Match(75, new TokenEntry("public", "/var/Foo.java", 48), new TokenEntry("void", "/var/Foo.java", 73));    match1.setLineCount(6);    match1.setSourceCodeSlice("code fragment");    Match match2 = new Match(76, new TokenEntry("void", "/var/Foo2.java", 49), new TokenEntry("stuff", "/var/Foo2.java", 74));    match2.setLineCount(7);    match2.setSourceCodeSlice("code fragment 2");    list.add(match1);    list.add(match2);    String report = renderer.render(list.iterator());    assertEquals("<?xml version=\"1.0\"?><pmd-cpd><duplication lines=\"6\" tokens=\"75\"><file line=\"48\" path=\"/var/Foo.java\"/><file line=\"73\" path=\"/var/Foo.java\"/><codefragment><![CDATA[" + PMD.EOL + "code fragment" + PMD.EOL + "]]></codefragment></duplication><duplication lines=\"7\" tokens=\"76\"><file line=\"49\" path=\"/var/Foo2.java\"/><file line=\"74\" path=\"/var/Foo2.java\"/><codefragment><![CDATA[" + PMD.EOL + "code fragment 2" + PMD.EOL + "]]></codefragment></duplication></pmd-cpd>", report);  }}

⌨️ 快捷键说明

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