java - 如何模拟存在但无法读取的路径

标签 java unit-testing mocking mockito

我需要为使用java.nio.Files.isReadable(Path)的方法编写测试

如何模拟存在但无法读取的路径?

我无法创建文件(或目录)并删除执行用户的读取权限,因为这样我就无法在执行测试后清理它;我没有说如何模拟 Files.isReadable(Path) 因为它是一个静态方法,在要测试的方法中调用。

更新:我尝试了File#setReadable(false),但这似乎没有效果。

最佳答案

File tempFile = File.createTempFile("hello", ".tmp");
boolean success = file.setReadOnly();

// and execute your test
// make sure you need to capture various error scenario that might occur during 
   file creation and setting the file to ready only. 

关于java - 如何模拟存在但无法读取的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60637040/

相关文章:

Java 相当于 C# $"{var}"格式

java - 使用 Java 编写客户端通过 UDP 连接向服务器发送 HTTP 请求消息

c# - NUnit 的 Is.EqualTo 是否不能可靠地用于从泛型类派生的类?

scala - Clojure GUI 编程很难

c# - 如何模拟作为接口(interface)的接口(interface)属性

java - 使用JAX-RS(RESTEasy)作为中间件: brokering a client's request to another server

Java 到 Clojure 重写

.net - 测试终结器和 IDisposable

java - 测试类的固定装置内的异常处理?

python - 如何使用 pytest-mock 或 magicmock 模拟导入的对象