我正在学习使用Jest和Enzyme为动作创作者编写测试。这是我与React Native一起使用的动作创建者。
请考虑以下代码:
import {
FETCH_FAIL
} from './types';
export const fetchFail = (dispatch) => {
dispatch({
type: FETCH_FAIL,
payload: "An error occurred. Try again later."
});
};
我为此动作创建者编写了以下测试:
import configureStore from 'redux-mock-store';
import thunk from 'redux-thunk';
const middlewares = [thunk];
const mockStore = configureStore(middlewares);
test('should fail fetch', async () => {
const payload = {
type: FETCH_FAIL,
payload: "An error occurred. Try again later."
}
const store = mockStore({ data:[], isConnected: false });
expect(store.dispatch(actions.fetchFail())).toEqual(payload);
})
我的测试失败,显示以下结果:
TypeError:调度不是函数
我在做什么错?
thunk
返回已分派的操作>export const fetchFail = (dispatch) => {
return dispatch({
type: FETCH_FAIL,
payload: "An error occurred. Try again later."
});
};