Проверить функцию в функции с Jest? - PullRequest
2 голосов
/ 01 мая 2019

Я тестирую Redux Action Creator с Jest

Это создатель действия:

const addDiscount = ({ code }) => (dispatch, getState) => {
    const { id } = getState().token;

    return dispatch({
        apiCall: discount.put({
            body: {
                code
            },
            id,
        }),
        types: ADD_DISCOUNT.triplet,
    });
};

И это мой тест:

const apiCallMock = jest.fn()
const dispatch = jest.fn(() => {
    return {
        apiCall: apiCallMock,
    };
});
const customerOrderId = 'customer-order-id';
const getState = jest.fn(() => ({
    token: {
        customerOrderId,
    },
}));

const res = addDiscount({ code: 'abc123' })(dispatch, getState);

console.log(res)
console.log(dispatch.mock.calls[0][0]);
console.log(apiCallMock.mock);

ЕслиЯ пытаюсь console.log(res) результат не определен.

console.log(dispatch.mock.calls[0][0]); показывает типы, но apiCall - это функция, которая еще не была запущена.

console.log(apiCallMock.mock);, по-видимому, не был запущен

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