使用redux-saga-test-plan模拟动作负载

时间:2018-10-23 00:49:08

标签: redux-saga redux-saga-test-plan

给出一个对动作有效载荷进行操作的传奇,其中action已被takeLatest传入,例如

export function* mySaga(action) {
  try {
    yield all(action.payload.items.map(p => call(doSomething, p)));
    }
    yield put(actionSuccess());
  } catch (error) {
    yield put(actionFailed(error));
  }
}

export function* watchMySaga() {
  yield takeLatest(AN_ACTION, mySaga);
}

如何在action的{​​{1}}测试中模拟redux-saga-test-plan?由于mySagaaction.payload,因此我的测试当前抛出错误。

1 个答案:

答案 0 :(得分:1)

看起来,您只需将模拟操作对象作为第二个参数传递给expectSaga,例如

return expectSaga(mySaga, action)
    .provide([[...]])
    .put(actionSuccess())
    .run();