как тестировать redux-thunk

Всем привет, очень долго мучаюсь с вопросом тестирования redux-thunk, а именно асинхронный action с POST запросом.

У меня есть такой код:

import * as actions from './index'
import configureMockStore from 'redux-mock-store'
import thunk from 'redux-thunk'
import fetchMock from 'fetch-mock'

const middlewares = [ thunk ]
const mockStore = configureMockStore(middlewares)

const mockResult = { ...some data }
describe('action creators', () => {

  it('should create SEARCH_SUCCESS when searching', () => {
    fetchMock.postOnce('/url', mockResult)

    // Что делать если этот запрос Post и мне нежно в моке передать параметры?

    const expectedActions = [
      { type: actions.SEARCH_LOADING },
      { type: actions.SEARCH_SUCCESS, payload: mockResult  }
    ]
    const store = mockStore({ search: {
      result: {}
    }})

    return store.dispatch(actions.search('searchterm'))
      .then((data) => { // return of async actions
        expect(store.getActions()).toEqual(expectedActions)
      })

  })

})

Проблема в том что у меня в тесте выполняется реальный запрос. И в консоли показывает ошибку, например Network request Failed.

Что делать? Буду очень благодарен ответу


Ответы (0 шт):