使用Jest测试Saga生成器功能

我试图使用Jest编写此生成器功能logOffSaga的单元测试。我尝试了几种方法,但是找不到正确的方法来兑现这一承诺。谁能帮我解决这个问题?

export function abcFunction() {
  return api(EndPoints.CONTROLS)
    .post('logoff')
    .then(response => ({ response }))
    .catch(error => ({ error }));
}

export function* logOffSaga() {
  yield take(LOGOFF);
  const { response,error } = yield abcFunction();

  if (response && response.status === ResponseCodes.OK) {
    yield something();
  } else if (error) {
    yield somethingElse();
  }
}

单元测试:

  const genlogOffSaga = logOffSaga();

  it('should wait for LOGOFF',() => {
    expect(genlogOffSaga.next().value).toEqual(take(LOGOFF));
  });

如何基于abcFunction的返回值测试其余代码?

huzhanyuan09 回答:使用Jest测试Saga生成器功能

请您显示LOGOFF操作。 测试一下会更加清楚。 LOGOFF是您要产生的动作吗?

本文链接:https://www.f2er.com/3161285.html

大家都在问