Шутка издеваться над окном - PullRequest
0 голосов
/ 06 ноября 2019

Как я могу издеваться над window.open с шуткой? Я попробовал несколько вариантов, но каждый из них потерпел неудачу

Мне нужно проверить, вызывается ли window.open и должен ли он вызываться с определенными параметрами

Предположим, у меня что-то вроде этого

open(): void {
  window.open('/link');
}

1 Ответ

0 голосов
/ 06 ноября 2019

Установите эти пакеты:

jest-environment-jsdom
jest-environment-jsdom-global

Добавьте "testEnvironment": "jest-environment-jsdom-global" в конфигурации Jest.

Предположим, у вас есть такая функция:

open() {
  window.open("abc");
}

Затем внутритестовый файл:

it("should open the url in window", () => {
  const openSpy =  jest.spyOn(window, "open");

  open();

  expect(openSpy).toHaveBeenCalledTimes(1);
  expect(openSpy).toHaveBeenCalledWith("abc");
});
...