Как протестировать оконные объекты с помощью шутливых тестов - PullRequest
0 голосов
/ 08 октября 2018

Я пытаюсь проверить класс, который возвращает значения в зависимости от значений, присутствующих в объекте окна.

window.test = 123;

Я хочу смоделировать свойство test объекта окна на значение 123, чтобывозможность корректного тестированияПоходит на тривиальный вопрос, но не может найти ответ на Google или в другом месте.Пожалуйста, совет.

1 Ответ

0 голосов
/ 08 октября 2018

Если существует window (т. Е. Jest работает с JSDOM, что делается по умолчанию), оно должно быть:

beforeEach(() => {
  window.test = 123;
});

afterEach(() => {
  delete window.test;
});

Если его не существует, это:

beforeEach(() => {
  global.window = { test: 123 };
});

afterEach(() => {
  delete global.window;
});

В зависимости от того, используется ли window в другом месте, может быть полезно выполнить резервное копирование во временную переменную в beforeEach и восстановить в afterEach.

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