У меня есть простая сага этого вида:
const getAccountDetails = function * () {
const { url } = yield select(state => state.appConfig)
const accountDetails = yield call(apiFetchAccountDetails, url)
}
Я пытаюсь написать модульный тест:
describe('getAccountDetails', () => {
const iterator = getAccountDetails()
it("should yield an Effect 'select(state=> state.appConfig)'", () => {
const effect = iterator.next().value
const expected = select(state => state.appConfig)
expect(effect).to.deep.eql(expected)
})
Этот тест не пройден.Хотя effect
и expected
очень похожи, они не идентичны.
По крайней мере одно из различий скрыто в payload.selector.scopes
, где ожидаемый эффект и ожидаемые следующие:
Поскольку объемы этих двух всегда будут разными, как эти тесты могут когда-либо работать?
eta: этот шаблон адаптированиз примера , связанного с документами redux-saga