Javascript 如何在sagas中模拟异步调用的响应
我有一个如下代码:Javascript 如何在sagas中模拟异步调用的响应,javascript,reactjs,react-native,jestjs,Javascript,Reactjs,React Native,Jestjs,我有一个如下代码: export function* terminateOrderSaga(action: Action) { const {orderId, onPaymentRequired} = action.payload; const { data: {unsubscribe: unsubscribeResponse}, } = yield call(unsubscribeMutat
export function* terminateOrderSaga(action: Action) {
const {orderId, onPaymentRequired} = action.payload;
const {
data: {unsubscribe: unsubscribeResponse},
} = yield call(unsubscribeMutation, {
orderId,
});
const {status, ticketInfo} = unsubscribeResponse || {};
const {zones, price} = ticketInfo;
}
我想嘲笑这个请求:
yield call(unsubscribeMutation, {
orderId,
});
我在测试文件中尝试了以下几个选项:
unsubscribeMutation.mockImplementationOnce({unsubscribe: {status: "OK", ticketInfo:{price:23, zones: 'ASD'}})
但id似乎不起作用,它似乎仍在调用服务器,而没有返回模拟响应
mockImplementationOnce
需要一个函数。可能尝试使用mockImplementationOnce(()=>({unsubscribe:{status:“OK”,ticketInfo:{price:23,zones:'ASD'}))
或使用mockReturnValueOnce
mockImplementationOnce
需要一个函数。可能尝试使用mockImplementationOnce(()=>({unsubscribe:{status:“OK”,ticketInfo:{price:23,zones:'ASD'}))
或使用mockReturnValueOnce
。