function - 如何在 D 中模拟标准库函数

标签 function unit-testing mocking d phobos

我有一个函数,它在文件名上调用 isFile(来自 std.file),然后继续附加 .1、.2、.3 等,检查每个是否存在。

我想对函数进行单元测试,但为此我需要模拟 isFile。

我环顾四周,找到了模拟类而不是单个函数的方法。

最佳答案

由于我的回答与亚当的略有不同,所以我会添加它,他可以添加他的。

您可以为此目的使用“Scoped imports”。请参阅文档中的相应部分 http://dlang.org/module.html

这也是一个工作示例,如何模拟 isFile单元测试 block 内的函数(假设它在模块“模拟”中定义)

import std.file; 
import std.stdio;

int main(string[] args) 
{ 
    writeln(isFile("qq.d")); 
    return 0; 
} 

unittest 
{ 
    import mocks;
    writeln(isFile("qq.d")); 
}

关于function - 如何在 D 中模拟标准库函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26371331/

相关文章:

c++ - 像声明变量一样调用函数

python - 我如何使用模拟在 greenlet 中进行测试?

android - 在 Android 框架中使用 Power Mock 进行单元测试

python - 为什么函数中的 exec 中的导入不起作用?

javascript - JS函数被调用两次?

javascript - 如何从子函数中更改函数的返回值 (JavaScript)

java - NestedTree 上的测试 CheckBox 失败

java - JUnit 4 : Test case returns an object used in other tests in the test suite

android - 在android测试中重新启动应用程序

testing - 使用 Angularjs 和 requirejs 时在测试中注入(inject)