KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > test > net > sourceforge > pmd > cpd > FileReporterTest


1 /**
2  * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
3  */

4 package test.net.sourceforge.pmd.cpd;
5
6 import junit.framework.TestCase;
7 import net.sourceforge.pmd.cpd.FileReporter;
8 import net.sourceforge.pmd.cpd.ReportException;
9
10 import java.io.BufferedReader JavaDoc;
11 import java.io.File JavaDoc;
12 import java.io.FileReader JavaDoc;
13 import java.io.IOException JavaDoc;
14
15 /**
16  * @author Philippe T'Seyen
17  */

18 public class FileReporterTest extends TestCase {
19     public void testCreation() {
20         try {
21             new FileReporter(null);
22             fail("expected NullPointerException");
23         } catch (NullPointerException JavaDoc npe) {
24         }
25     }
26
27     public void testEmptyReport() throws ReportException {
28         File JavaDoc reportFile = new File JavaDoc("report.tmp");
29         FileReporter fileReporter = new FileReporter(reportFile);
30         fileReporter.report("");
31         assertTrue(reportFile.exists());
32         assertEquals(0, reportFile.length());
33         assertTrue(reportFile.delete());
34     }
35
36     public void testReport() throws ReportException, IOException JavaDoc {
37         String JavaDoc testString = "first line\nsecond line";
38         File JavaDoc reportFile = new File JavaDoc("report.tmp");
39         FileReporter fileReporter = new FileReporter(reportFile);
40
41         fileReporter.report(testString);
42         assertEquals(testString, readFile(reportFile));
43         assertTrue(reportFile.delete());
44     }
45
46     public void testInvalidFile() {
47         File JavaDoc reportFile = new File JavaDoc("/invalid_folder/report.tmp");
48         FileReporter fileReporter = new FileReporter(reportFile);
49         try {
50             fileReporter.report("");
51             fail("expected ReportException");
52         } catch (ReportException re) {
53         }
54     }
55
56     private String JavaDoc readFile(File JavaDoc file) throws IOException JavaDoc {
57         BufferedReader JavaDoc reader = null;
58         try {
59             reader = new BufferedReader JavaDoc(new FileReader JavaDoc(file));
60             StringBuffer JavaDoc buffer = new StringBuffer JavaDoc();
61             String JavaDoc line = reader.readLine();
62             while (line != null) {
63                 buffer.append(line);
64                 line = reader.readLine();
65                 if (line != null) {
66                     buffer.append('\n');
67                 }
68             }
69             return buffer.toString();
70         } finally {
71             if (reader != null) reader.close();
72         }
73     }
74 }
Popular Tags