我想知道我的方法是否正确,以及类似情况的最佳做法是什么。
方案
我正在尝试使用Sinon.js在我的authController中存根函数调用,它接受两个参数并在Callback函数中处理结果以将其传递给Next()回调。类似的东西:
// requestController.js
module.exports = function(req, res, next) {
authController.handle(req, res, function(apiMethod) {
if (apiMethod !== undefined || apiMethod !== null) {
apiMethod(next);
} else {
next();
}
});
};
上面的方法是在我的requestController中调用的,它处理所有请求并需要authController来检查身份验证。
问题是如何使用sinon来存根或模拟authController
的行为并返回假apiMethod
但其余代码继续并调用{{ 1}}。
提前感谢您的推荐。
答案 0 :(得分:1)
仍然有错误。对于单元测试,您的代码应如下所示:
module.exports = function(req, res, next) {
apiMethod = function() {
//your code goes here
}
authController.handle(req, res, apiMethod);
};
围绕apiMethod
的函数是多余的