Unit testing 如何在jimfs中强制IOException
我有与文件相关的代码要测试,我想测试一个无法读取的现有文件的错误处理Unit testing 如何在jimfs中强制IOException,unit-testing,jimfs,Unit Testing,Jimfs,我有与文件相关的代码要测试,我想测试一个无法读取的现有文件的错误处理 class SomeClass { //... public void load(Path path) { if (!Files.isRegularFile(path)) { return null; } //... try { // ... catch (IOException e) {
class SomeClass {
//...
public void load(Path path) {
if (!Files.isRegularFile(path)) {
return null;
}
//...
try {
// ...
catch (IOException e) {
// cleanup
}
}
}
我使用它将测试与实际文件系统隔离开来
那么,如何在jimfs上创建一个不可读的文件呢
我已经尝试通过所需路径上的
文件将posix权限和其他用户分配给路径。setAttribute
,在尝试读取或写入路径时,这两者似乎都被忽略了。不幸的是,目前不支持对Jimfs中的文件进行实际权限/访问检查。这是我认为最好的东西,但我还没有弄清楚细节:请参阅和。是否有其他方法可以从jimfs中导出IOException
,以便测试错误处理代码?