-
Notifications
You must be signed in to change notification settings - Fork 1
/
jest.setup.ts
34 lines (32 loc) · 1.03 KB
/
jest.setup.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
/**
* Optional: configure or set up a testing framework before each test.
* If you delete this file, remove `setupFilesAfterEnv` from `jest.config.js`
*
* Used for __tests__/testing-library.js
* Learn more: https://github.com/testing-library/jest-dom
*/
import '@testing-library/jest-dom'
window.scrollTo = () => {}
if (typeof window.matchMedia !== 'function') {
Object.defineProperty(window, 'matchMedia', {
configurable: true,
writable: true,
value: jest.fn().mockImplementation((query) => ({
matches: (matchesOrMapOfMatches: any) => (qs: any) => ({
matches:
typeof matchesOrMapOfMatches === 'object'
? matchesOrMapOfMatches[qs]
: matchesOrMapOfMatches,
addListener: jest.fn(),
removeListener: jest.fn(),
}),
media: query,
onchange: null,
addListener: jest.fn(), // deprecated
removeListener: jest.fn(), // deprecated
addEventListener: jest.fn(),
removeEventListener: jest.fn(),
dispatchEvent: jest.fn(),
})),
})
}