1 package test.net.sourceforge.pmd.renderers;
2
3 import java.io.File;
4 import java.io.IOException;
5
6 import net.sourceforge.pmd.Report.ProcessingError;
7 import net.sourceforge.pmd.renderers.AbstractRenderer;
8 import net.sourceforge.pmd.renderers.YAHTMLRenderer;
9
10 import org.junit.After;
11 import org.junit.Before;
12
13 public class YAHTMLRendererTest extends AbstractRendererTst {
14
15 private String outputDir;
16
17 @Before
18 public void setUp() throws IOException {
19 outputDir = getTemporaryDirectory("pmdtest").getAbsolutePath();
20 }
21
22 @After
23 public void cleanUp() {
24 deleteDirectory(new File(outputDir));
25 }
26
27 private File getTemporaryDirectory(String prefix) throws IOException {
28
29 File dir = File.createTempFile(prefix, "");
30 dir.delete();
31 dir.mkdir();
32 return dir;
33 }
34
35 private void deleteDirectory(File dir) {
36
37 File[] a = dir.listFiles();
38 if (a != null) {
39 for (File f: a) {
40 if (f.isDirectory()) {
41 deleteDirectory(f);
42 } else {
43 f.delete();
44 }
45 }
46 }
47 dir.delete();
48 }
49
50 public AbstractRenderer getRenderer() {
51 return new YAHTMLRenderer(outputDir);
52 }
53
54 public String getExpected() {
55 return "<h3 align=\"center\">The HTML files are located in '" + outputDir + "'.</h3>";
56 }
57
58 public String getExpectedEmpty() {
59 return getExpected();
60 }
61
62 public String getExpectedMultiple() {
63 return getExpected();
64 }
65
66 public String getExpectedError(ProcessingError error) {
67 return getExpected();
68 }
69
70 public static junit.framework.Test suite() {
71 return new junit.framework.JUnit4TestAdapter(YAHTMLRendererTest.class);
72 }
73 }