如何在开玩笑中测试saga yield观察者并行调用

问题描述 投票:0回答:1

我想测试我的传奇我能够测试单个传奇电话,但我如何使用jest测试我的观察者传奇

export default function* saga() {
  yield [
    takeLatest(dataTypeActions.ACTION1, fetchDataType),
    takeLatest(sourceActions.ACTION2, fetchFromSource),
    takeLatest(targetActions.ACTION3, fetchFromTarget),
  ];
}

一些正文将帮助我如何使用jest测试并行调用(使用生成器函数)

jestjs redux-saga saga redux-saga-test-plan
1个回答
1
投票

你可以像这样测试它:

it('watches several actions...', () => {
  const generator = yourSaga();
  expect(generator.next().value).toEqual([
    takeLatest(dataTypeActions.ACTION1, fetchDataType),
    takeLatest(sourceActions.ACTION2, fetchFromSource),
    takeLatest(targetActions.ACTION3, fetchFromTarget),
  ]);
});
© www.soinside.com 2019 - 2024. All rights reserved.