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

我想对该功能进行单元测试,但是要做到这一点,我需要模拟isFile。

我四处张望,发现了模拟类而不是单个函数的方法。

最佳答案

由于我的答案与亚当的答案略有不同,因此我将添加它,他也可以添加他的答案。

为此,可以使用“范围导入”。请参阅文档http://dlang.org/module.html中的相应部分

这也是一个工作示例,如何在unittest块中模拟isFile函数(假设它在模块“ mocks”中定义)

import std.file;
import std.stdio;

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

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

09-18 05:38