【发布时间】:2016-07-11 14:15:56
【问题描述】:
我正在为异步 node.js 函数编写一些测试,该函数使用 Mocha、Chai 和 Sinon 库返回一个 Promise。
假设这是我的功能:
function foo(params) {
return (
mkdir(params)
.then(dir => writeFile(dir))
)
}
mkdir 和 writeFile 都是返回承诺的异步函数。
我需要测试 mkdir 是否被调用一次,并将 params 提供给 foo。
我该怎么做?
我已经看过很多关于如何断言 foo 的整体返回值的示例(sinon-as-promised 对此非常有帮助),但没有关于如何确保在 promise 中调用各个函数。
也许我忽略了某些东西,这不是正确的方法吗?
【问题讨论】:
-
mkdir不是在 Promise 中调用的,而是从foo同步调用的,你可以像往常一样测试它吗?还是要测试是否调用了writeFile?
标签: javascript node.js promise mocha.js sinon