我的 node.js 应用程序中有一个 JS 方法,我想对其进行单元测试。它对服务方法进行多次调用,每次都向该服务传递一个回调;回调累积结果。
如何使用 Jasmine 存根服务方法,以便每次调用存根时,它都会使用由参数确定的响应调用回调?
这是(就像)我正在测试的方法:
function methodUnderTest() {
var result = [];
var f = function(response) {result.push(response)};
service_method(arg1, arg2, f);
service_method(other1, other2, f);
// Do something with the results...
}
我想指定当使用 arg1 和 arg2 调用 service_method 时,存根将使用特定响应调用 f 回调,而当使用 other1 和 other2 调用它时,它将使用不同的特定响应调用相同的回调。
我也会考虑一个不同的框架。(我试过 Nodeunit,但没有让它做我想做的事。)