Создание макета для глобального - PullRequest
0 голосов
/ 27 июня 2018

Я написал надстройку для Microsoft Office, используя библиотеки Office.js и TypeScript. Я использую Jest для юнит-тестирования.

Я сталкиваюсь с проблемами, когда @types/office-js объявляет определения типов, где все находится за глобальными объектами Office и Word. Я не могу написать фальшивую / фиктивную реализацию для них, поскольку они конфликтуют с определениями типов. Я также не могу напрямую импортировать или использовать Jest mock на @microsoft/office-js, так как это не настоящий модуль - он предназначен для загрузки браузером в теге script. Когда я запускаю Jest, он не разрешает мои новые глобальные пространства имен - ReferenceError: Word is not defined.

Вот упрощенное представление о том, что мне нужно сделать:

// __mocks__/word.ts
//@ts-ignore
export namespace Word {
    // stuff
}

// __tests__/something.ts
it('should find Word', () => Word...);

Как я могу создать свои подделки / макеты, чтобы я мог проверить вызовы?

1 Ответ

0 голосов
/ 27 июня 2018

Ну, я попробовал еще одну вещь.

ставлю

(<any>global).Word = Word;

внизу word.ts и все выглядит счастливым.

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