如何编写一个JUnit测试,检查FileInputStream是否已关闭?
考虑以下代码:
import java.io.FileInputStream;
class FileInputStreamDemo {
public static void main(String args[]) throws Exception {
FileInputStream fis = new FileInputStream(args[0]);
// Read and display data
int i;
while ((i = fis.read()) != -1) {
System.out.println(i);
}
fis.close();
}
}
我想写一个像这样的测试:
@Test
public void test() {
FileInputStreamDemo.main("file.txt");
// test here, if input stream to file is closed correctly
}
虽然该代码示例没有太多意义,但我想知道如何编写一个JUnit测试,检查FIS是否已关闭。(如果可能:甚至没有对原始FIS对象的引用)