-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathjest.config.js
36 lines (30 loc) · 1.1 KB
/
jest.config.js
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
35
36
module.exports = {
// The root of your source code, typically /src
// `<rootDir>` is a token Jest substitutes
roots: ['<rootDir>/src'],
// Jest transformations -- this adds support for TypeScript
// using ts-jest
transform: {
'^.+\\.tsx?$': 'ts-jest',
},
// Runs special logic, such as cleaning up components
// when using React Testing Library and adds special
// extended assertions to Jest
setupFilesAfterEnv: ['./setup-jest.ts'],
// Test spec file resolution pattern
// Matches parent folder `__tests__` and filename
// should contain `spec`.
testRegex: '/__tests__/.*.spec.(ts|tsx)?$',
// Module file extensions for importing
moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'],
testEnvironment: 'jsdom',
};
if (process.env.REACT_VERSION === 'v17') {
module.exports.cacheDirectory = '.cache/jest-cache-react-17';
module.exports.moduleNameMapper = {
...module.exports.moduleNameMapper,
'^react-dom((\\/.*)?)$': 'react-dom-17$1',
'^react((\\/.*)?)$': 'react-17$1',
'^@testing-library/react((\\/.*)?)$': '@testing-library/react-12$1',
};
}