Тестирование пост-саги - PullRequest
0 голосов
/ 16 июня 2020

Я пытаюсь протестировать следующую сагу, но мне не повезло:

    params: typeSafeAction<typeof getRefreshTokenRequest>
) {
    const requestURL = '/.netlify/functions/refreshToken'

    try {
        const response = yield call(request, requestURL, {
            method: 'POST',
            body: serialize({
                userId: params.payload
            })
        })

        authToken.token = response.authToken

        yield put(getRefreshTokenSuccess(response.user))
    } catch (error) {
            yield put(getRefreshTokenError(error))
        }
    }
}

Я пытаюсь правильно протестировать, но у меня много проблем. Мой тест выглядит так:

    let refreshTokenGenerator: Generator

    const params = {
        type: ActionTypes.GET_REFRESH_TOKEN_REQUEST,
        payload: ''
    }

    beforeEach(() => {
        refreshTokenGenerator = refreshTokenSaga(
            params as typeSafeAction<typeof getRefreshTokenRequest>
        )

        const callDescriptor = refreshTokenGenerator.next().value
        expect(callDescriptor).toMatchSnapshot()
    })

    it('should dispatch the getRefreshTokenSuccess action if call was successfull', () => {
        const response = { id: 0, name: '' }
        const putDescriptor = refreshTokenGenerator.next(response).value

        expect(putDescriptor).toEqual(put(getRefreshTokenSuccess(response)))
    })
}

Он дает такие ошибки, как:

- Expected
+ Received
-       "payload": Object {
-         "id": 0,
-         "name": "",
-       },
+       "payload": undefined,

Или по какой-то причине вызывает функцию ошибки. у кого-нибудь есть идеи? любая помощь будет оценена!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...