Как настроить модульное тестирование с помощью FETCH - PullRequest
0 голосов
/ 19 декабря 2018

Я пытался настроить модульное тестирование на VSC - JS / React для следующего кода ниже.

getNotificationgetNotificationCount = () =>{
fetch(`${this.state.services.NotificationReporting.URL}/NOTIFICATIONS?$count=true&$filter=contains(Notified,'${this.state.user.Email}') and Status eq 'Unread'`, {
  headers: {
    'Content-Type': 'application/json',
    'Ocp-Apim-Subscription-Key': this.state.services.NotificationReporting.subscription_key,
    "DDHFirm": this.state.user.DDHFirm
  },
  method: 'GET',
  credentials: 'include',
})
.then(res => {return(validationManager.ResolveHTTPResponse(res, 'Request Successful', 'Request Failed', res.ok ? true : false))})
  .then(response => {
    this.setState({
      unreadNotifications: response.body ? response.body['@odata.count'] : 0,
    })
  })

}

Ожидается, что функция / метод получит вызов в данный момент.Фактические результаты будут обработаны позже

1 Ответ

0 голосов
/ 19 декабря 2018

Вы можете настроить шпиона в функции, чтобы проверить, был ли он вызван:

const spy = jest.spyOn(Component.prototype, 'getNotificationgetNotificationCount');
const wrapper = mount(<Component {...props} />);
// Next line will call the function, replace it with
// any code that will trigger the call
wrapper.instance().getNotificationgetNotificationCount();
expect(spy).toHaveBeenCalled();

Это будет просто проверять, была ли вызвана функция, независимо от результатов.

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