Как применить Mock к онлайн-редуксу - PullRequest
0 голосов
/ 10 октября 2018

В моем случае я реализую Integration Test, и мне нужно вызвать Action со структурой redux-offline.

export const rev_geocoding = (token: string, params: LocationServiceType) => {
  return (dispatch: ThunkDispatch) => {
    dispatch({
      type: LOCATION_SUCCESS,
      value: 'setCityInfoOffline',
      meta: {
        offline: {
          effect: {
            url: buildUrl(TYPE_GET, 'revgeocoding', params),
            method: TYPE_GET,
            headers: buildHeaders(token)
          },
          commit: { type: LOCATION_SUCCESS, value: 'setCityInfo' },
          rollback:  { type: SHOW_ALERT, value: { type: 'warning', message: Constants.alert_messages.request_error } }
        }
      }
    });
  };
};

Меня не интересует тестирование redux-offline или запросэто выполняется в effect param.Я просто хочу применить насмешку, чтобы иметь возможность ходить в моих тестах.

в тесте я звоню rev_geocoding, и я ожидаю, что LOCATION_SUCCESS будет вызываться дважды внутри commit.

и отправка неверной информации в параметрах для проверки моей rollback отправки.

В обоих случаях цель состоит в том, чтобы заполнить coverage и подтвердить изменение состояний.

выпуск GITHUB

...