/**
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
*/
package net.sourceforge.pmd.renderers;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.Reader;
import java.io.StringReader;
import net.sourceforge.pmd.PMD;
import net.sourceforge.pmd.Report.ProcessingError;
public class PapariTextRendererTest extends AbstractRendererTst {
private static String naString = "n/a";
static {
naString = naString.substring(naString.lastIndexOf(File.separator) + 1);
}
@Override
public Renderer getRenderer() {
TextColorRenderer result = new TextColorRenderer() {
@Override
protected Reader getReader(String sourceFile) throws FileNotFoundException {
return new StringReader("public class Foo {}");
}
};
result.setProperty(TextColorRenderer.COLOR, "false");
return result;
}
@Override
public String getExpected() {
return "* file: n/a" + PMD.EOL + " src: " + naString + ":1:1" + PMD.EOL + " rule: Foo" + PMD.EOL
+ " msg: blah" + PMD.EOL + " code: public class Foo {}" + PMD.EOL + PMD.EOL + PMD.EOL + PMD.EOL
+ "Summary:" + PMD.EOL + PMD.EOL + " : 1" + PMD.EOL + "* warnings: 1" + PMD.EOL;
}
@Override
public String getExpectedEmpty() {
return PMD.EOL + PMD.EOL + "Summary:" + PMD.EOL + PMD.EOL + "* warnings: 0" + PMD.EOL;
}
@Override
public String getExpectedMultiple() {
return "* file: n/a" + PMD.EOL + " src: " + naString + ":1:1" + PMD.EOL + " rule: Foo" + PMD.EOL
+ " msg: blah" + PMD.EOL + " code: public class Foo {}" + PMD.EOL + PMD.EOL + " src: "
+ naString + ":1:1" + PMD.EOL + " rule: Foo" + PMD.EOL + " msg: blah" + PMD.EOL
+ " code: public class Foo {}" + PMD.EOL + PMD.EOL + PMD.EOL + PMD.EOL + "Summary:" + PMD.EOL
+ PMD.EOL + " : 2" + PMD.EOL + "* warnings: 2" + PMD.EOL;
}
@Override
public String getExpectedError(ProcessingError error) {
return PMD.EOL + PMD.EOL + "Summary:" + PMD.EOL + PMD.EOL + " err: Error" + PMD.EOL + PMD.EOL
+ "* errors: 0" + PMD.EOL + "* warnings: 0" + PMD.EOL;
}
public static junit.framework.Test suite() {
return new junit.framework.JUnit4TestAdapter(PapariTextRendererTest.class);
}
}