prometheus

Форк
0
/
setupTests.ts 
40 строк · 1.3 Кб
1
import { configure } from 'enzyme';
2
import Adapter from '@wojtekmaj/enzyme-adapter-react-17';
3
import { GlobalWithFetchMock } from 'jest-fetch-mock';
4
import 'mutationobserver-shim'; // Needed for CodeMirror.
5
import './globals';
6
import 'jest-canvas-mock';
7

8
configure({ adapter: new Adapter() });
9
const customGlobal: GlobalWithFetchMock = global as GlobalWithFetchMock;
10
customGlobal.fetch = require('jest-fetch-mock');
11
customGlobal.fetchMock = customGlobal.fetch;
12

13
// https://stackoverflow.com/questions/39830580/jest-test-fails-typeerror-window-matchmedia-is-not-a-function
14
// https://jestjs.io/docs/manual-mocks#mocking-methods-which-are-not-implemented-in-jsdom
15
Object.defineProperty(window, 'matchMedia', {
16
  writable: true,
17
  value: jest.fn().mockImplementation((query) => ({
18
    matches: false,
19
    media: query,
20
    onchange: null,
21
    addListener: jest.fn(), // Deprecated
22
    removeListener: jest.fn(), // Deprecated
23
    addEventListener: jest.fn(),
24
    removeEventListener: jest.fn(),
25
    dispatchEvent: jest.fn(),
26
  })),
27
});
28

29
// CodeMirror in the expression input requires this DOM API. When we upgrade react-scripts
30
// and the associated Jest deps, hopefully this won't be needed anymore.
31
document.getSelection = function () {
32
  return {
33
    addRange: function () {
34
      return;
35
    },
36
    removeAllRanges: function () {
37
      return;
38
    },
39
  };
40
};
41

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.