0
下面我有一段代碼來演示我如何測試/保留一個承諾,useSpyPromise
下面的函數使用參數承諾spyPromise
。我試圖弄清楚如何指定存根以在第一次調用(Promise.resolve(['hasLength']
)時返回一個承諾,並在第二次調用(Promise.resolve([]
)上解決不同的承諾。sinon.stub()。返回指定爲每個電話,而不是一次
let spyPromise = sinon.stub().returns(Promise.resolve(['hasLength']))
function useSpyPromise (spyPromise) {
let promiseOne = spyPromise
.then(d => {
if (d.length === 0) throw new Error('d 0')
return d
})
let promiseTwo = spyPromise
.then(d => {
if (d.length === 1) throw new Error('d 1')
return d
})
return {promiseOne, promiseTwo}
}