如何使用sinon模拟调用回调的外部方法? 给出以下代码的示例,getText应该在回调函数
中返回'a string'作为响应sinon.stub(a, 'getText').returns('a string')
let cb = function(err, response) {
console.log(response)
}
a.getText('abc', cb)
它应该产生输出'一个字符串'因为它调用回调函数cb但是没有输出
答案 0 :(得分:12)
您可以使用callsArgWith
sinon.stub(a, 'getText').callsArgWith(1, null, 'kkk')
let cb = function(err, response) {
console.log(response)
}
a.getText('abc', cb)
答案 1 :(得分:11)
sinon.stub(a, 'getText').yields(null, 'a string');
yields()
将使用提供的参数(null, 'a string'
)调用第一个传递给存根函数的函数参数。