【发布时间】:2021-02-04 15:50:45
【问题描述】:
sinon.js 9.0.2
在测试中我创建了一个存根:
test.js
const myHandler = {
handle: (some_var_to_pass) => sinon.stub()["resolves"]([{ whatever: "whatever" }]),
};
然后将测试中的实际代码作为一些端点请求(使用async / await)来执行以下代码:
code.js
module.exports = (myHandler) => ({
getStuff: async (req, res, next) => {
const var1 = "something1";
const var2 = "something2";
const my_response = await myHandler.handle()(var1, var2);
console.log("my response", JSON.stringify(my_response)); //correct, returns { whatever: "whatever"}
console.log("Executed stub: ", myHandler.handle(some_var_to_pass).callCount); //always returns zero
我控制myHandler.handle 正确地通过存根创建,my_response 是
{ whatever: "whatever"}
但是,myHandler.handle().callCount 保持为零(不是undefined)。我缺少什么使它正确增加?或者我需要在创建存根时将.callCount 实际设置为 1(会很奇怪)?
【问题讨论】:
标签: javascript testing async-await sinon stub