我正在尝试向TemporaryFolder创建的文件写入一些字符串。
我需要提供3个字符串:
Line1 a
Line2 b c
Line 3
1)我这样做了,但是它没有添加任何东西。 testedContent
的长度仍然为0。我在做什么错? :
private ContentFileRetriever contentFileRetriever = new ContentFileRetrieverService();
@Rule
public TemporaryFolder tempFolder = new TemporaryFolder();
@Before
public void setup() {
}
@Test
public void getContentFile() throws IOException {
File textFile = tempFolder.newFile("testText.txt");
String pathFile = textFile.getPath();
FileWriter fileWriter = new FileWriter(textFile.getName());
fileWriter.write("Line1 a");
fileWriter.write("Line2 b c");
fileWriter.write("Line3 3");
String[] testedContent = contentFileRetriever.getContentFile(pathFile);
String[] expected = {"Line1 a", "Line2 b c", "Line 3"};
assertArrayEquals(expected, testedContent);
}
2)我应该使用@Before
方法还是在测试中进行设置?
3)我读到该文件夹将被自动删除,因此我不需要对.deleteOnExit()
执行textFile
吗?
答案 0 :(得分:0)
我看到两个问题:
这对我有用:
@Test
public void getContentFile() throws IOException {
File textFile = tempFolder.newFile("testText.txt");
FileWriter fileWriter = new FileWriter(textFile);
fileWriter.write("Line1 a");
fileWriter.write("Line2 b c");
fileWriter.write("Line3 3");
fileWriter.close();
}