Как проверить необработанное отклонение и обработанное отклонение в Jest JS - PullRequest
0 голосов
/ 06 сентября 2018

У меня есть класс, где я хочу ловить ошибки отклонения.

export class Logger {

  constructor () {
  this.registerHooks()
 }
 registerHooks() {
    window.addEventListener("unhandledrejection", (e) => {
      e.preventDefault();
      var reason = e.detail.reason;
      (reason)
console.log(
    });

    window.addEventListener("rejectionhandled", (e) => {
      e.preventDefault();
      var promise = e.detail.promise;
      this.warn(e)
    });
  }

Как я могу проверить эти 2 случая с помощью Jest? ..

1 Ответ

0 голосов
/ 07 сентября 2018

Я опишу пример только для одного случая. Второй случай требует аналогичного подхода.

  1. Извлечение функции-обработчика события в отдельный метод. Например onUnhandledRejection.
  2. Макет Logger.prototype.onUnhandledRejection.
  3. Создать Logger экземпляр.
  4. Выполнить window.dispatchEvent('unhandledrejection').
  5. Проверьте, был ли вызван instance.onUnhandledRejection.

Вышеуказанные шаги позволяют проверить, правильно ли вы установили обработчики событий. Затем вы можете проверить onUnhandledRejection как любой другой метод класса.

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