Skip to content

Commit f66e0d8

Browse files
Nikunj GandhiNikunj Gandhi
authored andcommitted
BAEL-3214 | Unit tests for class FileWriter
1 parent dea5daf commit f66e0d8

1 file changed

Lines changed: 123 additions & 0 deletions

File tree

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
package com.baeldung.filewriter;
2+
3+
import static org.junit.Assert.assertEquals;
4+
5+
import java.io.File;
6+
import java.io.FileNotFoundException;
7+
import java.io.FileOutputStream;
8+
import java.io.FileWriter;
9+
import java.io.IOException;
10+
import java.nio.charset.Charset;
11+
import java.nio.file.Files;
12+
import java.nio.file.Path;
13+
14+
import org.junit.After;
15+
import org.junit.Test;
16+
17+
public class FileWriterExampleTest {
18+
19+
@After
20+
public void tearDown() throws IOException {
21+
Files.delete(Path.of("src/test/resources/FileWriterTest.txt"));
22+
}
23+
24+
@Test
25+
public void testFileWriter_Constructor_With_FileName() throws IOException {
26+
try (FileWriter fileWriter = new FileWriter("src/test/resources/FileWriterTest.txt")) {
27+
fileWriter.write("Hello Folks!");
28+
}
29+
30+
assertEquals("Hello Folks!", new String(Files.readAllBytes(Path.of("src/test/resources/FileWriterTest.txt"))));
31+
}
32+
33+
@Test
34+
public void testFileWriter_Constructor_With_FileName_And_Charset() throws IOException {
35+
try (FileWriter fileWriter = new FileWriter("src/test/resources/FileWriterTest.txt", Charset.forName("US-ASCII"))) {
36+
fileWriter.write("Hello Folks! Let us learn the Façade design pattern");
37+
}
38+
39+
System.out.println(new String(Files.readAllBytes(Path.of("src/test/resources/FileWriterTest.txt"))));
40+
assertEquals("Hello Folks! Let us learn the Fa?ade design pattern", new String(Files.readAllBytes(Path.of("src/test/resources/FileWriterTest.txt"))));
41+
}
42+
43+
@Test
44+
public void testFileWriter_Constructor_With_FileName_And_AppendFlag() throws IOException {
45+
try (FileWriter fileWriter = new FileWriter("src/test/resources/FileWriterTest.txt")) {
46+
fileWriter.write("Hello Folks!");
47+
}
48+
49+
try (FileWriter fileWriter = new FileWriter("src/test/resources/FileWriterTest.txt", true)) {
50+
fileWriter.write("Let us learn the Façade design pattern");
51+
}
52+
53+
assertEquals("Hello Folks!Let us learn the Façade design pattern", new String(Files.readAllBytes(Path.of("src/test/resources/FileWriterTest.txt"))));
54+
}
55+
56+
@Test
57+
public void testFileWriter_Constructor_With_FileName_And_Charset_And_AppendFlag() throws IOException {
58+
try (FileWriter fileWriter = new FileWriter("src/test/resources/FileWriterTest.txt", Charset.forName("US-ASCII"))) {
59+
fileWriter.write("Hello Folks!");
60+
}
61+
62+
try (FileWriter fileWriter = new FileWriter("src/test/resources/FileWriterTest.txt", Charset.forName("US-ASCII"), true)) {
63+
fileWriter.write("Let us learn the Façade design pattern");
64+
}
65+
66+
assertEquals("Hello Folks!Let us learn the Fa?ade design pattern", new String(Files.readAllBytes(Path.of("src/test/resources/FileWriterTest.txt"))));
67+
}
68+
69+
@Test
70+
public void testFileWriter_Constructor_With_File() throws IOException {
71+
try (FileWriter fileWriter = new FileWriter(new File("src/test/resources/FileWriterTest.txt"))) {
72+
fileWriter.write("Hello Folks!");
73+
}
74+
75+
assertEquals("Hello Folks!", new String(Files.readAllBytes(Path.of("src/test/resources/FileWriterTest.txt"))));
76+
}
77+
78+
@Test
79+
public void testFileWriter_Constructor_With_File_And_Charset() throws IOException {
80+
try (FileWriter fileWriter = new FileWriter(new File("src/test/resources/FileWriterTest.txt"), Charset.forName("US-ASCII"))) {
81+
fileWriter.write("Hello Folks!Let us learn the Façade design pattern");
82+
}
83+
84+
assertEquals("Hello Folks!Let us learn the Fa?ade design pattern", new String(Files.readAllBytes(Path.of("src/test/resources/FileWriterTest.txt"))));
85+
}
86+
87+
@Test
88+
public void testFileWriter_Constructor_With_File_And_AppendFlag() throws IOException {
89+
try (FileWriter fileWriter = new FileWriter(new File("src/test/resources/FileWriterTest.txt"))) {
90+
fileWriter.write("Hello Folks!");
91+
}
92+
93+
try (FileWriter fileWriter = new FileWriter(new File("src/test/resources/FileWriterTest.txt"), true)) {
94+
fileWriter.write("Let us learn the Façade design pattern");
95+
}
96+
97+
assertEquals("Hello Folks!Let us learn the Façade design pattern", new String(Files.readAllBytes(Path.of("src/test/resources/FileWriterTest.txt"))));
98+
}
99+
100+
@Test
101+
public void testFileWriter_Constructor_With_File_And_Charset_And_AppendFlag() throws IOException {
102+
try (FileWriter fileWriter = new FileWriter(new File("src/test/resources/FileWriterTest.txt"), Charset.forName("US-ASCII"))) {
103+
fileWriter.write("Hello Folks!");
104+
}
105+
106+
try (FileWriter fileWriter = new FileWriter(new File("src/test/resources/FileWriterTest.txt"), Charset.forName("US-ASCII"), true)) {
107+
fileWriter.write("Let us learn the Façade design pattern");
108+
}
109+
110+
assertEquals("Hello Folks!Let us learn the Fa?ade design pattern", new String(Files.readAllBytes(Path.of("src/test/resources/FileWriterTest.txt"))));
111+
}
112+
113+
@Test
114+
public void testFileWriter_Constructor_With_FileDescriptor() throws FileNotFoundException, IOException {
115+
try(FileOutputStream fos = new FileOutputStream(new File("src/test/resources/FileWriterTest.txt"));
116+
FileWriter fileWriter = new FileWriter(fos.getFD())){
117+
fileWriter.write("Hello Folks!");
118+
}
119+
120+
assertEquals("Hello Folks!", new String(Files.readAllBytes(Path.of("src/test/resources/FileWriterTest.txt"))));
121+
}
122+
123+
}

0 commit comments

Comments
 (0)