gpt4 book ai didi

javascript - redux saga 的简单磁带 js 测试因未定义而失败

转载 作者:行者123 更新时间:2023-11-28 21:26:18 26 4
gpt4 key购买 nike

我已经为我的 sagas 写了一些磁带测试,但最简单的例子总是因为同样的原因而失败。我有一个单行传奇:

export function* clearUser(){
yield* put({type: 'CLEAR_USER'});
}

我的磁带测试同样简单:

test('clear user saga', (assert)=> {
const gen = clearUser();
assert.deepEqual(
gen.next().value,
put({type: 'CLEAR_USER'}),
'clear user should pass to reducer to remove user from state'
)

assert.deepEqual(
gen.next(),
{ done: true, value: undefined },
'clear user saga should complete'
)

assert.end()
});

但是,第一个断言失败并表示该值未定义:

  operator: deepEqual
expected: |-
{ '@@redux-saga/IO': true, PUT: { action: { type: 'CLEAR_USER' }, channel: null } }
actual: |-
undefined

我已经确认我正在导入 saga,并且其他测试都在运行,为什么这个简单的测试会失败?

最佳答案

您需要yield您的put 效果,而不是委托(delegate)给另一个生成器。

比较yield*对比yield

关于javascript - redux saga 的简单磁带 js 测试因未定义而失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39737802/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com