Sinonを使用してコールバックを呼び出す外部メソッドをどのようにモックしますか?次のコードの例では、getTextはコールバック関数の応答として「文字列」を返す必要があります
sinon.stub(a, 'getText').returns('a string')
let cb = function(err, response) {
console.log(response)
}
a.getText('abc', cb)
コールバック関数cbを呼び出すため、出力「文字列」を生成する必要がありますが、出力はありません
callsArgWith
を使用できます
sinon.stub(a, 'getText').callsArgWith(1, null, 'kkk')
let cb = function(err, response) {
console.log(response)
}
a.getText('abc', cb)
_sinon.stub(a, 'getText').yields(null, 'a string');
_
yields()
は、指定された引数(_null, 'a string'
_)を使用してスタブ関数に渡される最初の関数引数を呼び出します。