forked from twilio-labs/paste
-
Notifications
You must be signed in to change notification settings - Fork 0
/
jest.config.js
49 lines (47 loc) · 1.35 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
37
38
39
40
41
42
43
44
45
46
47
48
49
const TestTheme = require('./.jest/globals/TestTheme');
module.exports = {
globals: {
TestTheme,
},
testRegex: '(/__tests__/.*|(\\.|/)(test|spec))\\.(js|jsx|ts|tsx)?$',
testEnvironment: 'jsdom',
testPathIgnorePatterns: [
'<rootDir>/packages/(?:.+?)/dist/',
'<rootDir>/packages/(?:.+?)/.cache/',
'<rootDir>/cypress/',
'<rootDir>/packages/paste-cra-template/',
'<rootDir>/apps/',
],
cacheDirectory: '.jest-cache',
coverageDirectory: '.jest-coverage',
coveragePathIgnorePatterns: [
'<rootDir>/packages/(?:.+?)/dist/',
'<rootDir>/packages/(?:.+?)/cjs/',
'<rootDir>/packages/(?:.+?)/esm/',
'<rootDir>/apps/',
],
coverageReporters: ['html', 'text'],
coverageThreshold: {
global: {
branches: 100,
functions: 100,
lines: 100,
statements: 100,
},
},
transformIgnorePatterns: ['node_modules/'],
transform: {
'^.+\\.(js|jsx|ts|tsx)?$': '@swc/jest',
},
extensionsToTreatAsEsm: ['.ts', '.tsx'],
setupFilesAfterEnv: ['<rootDir>/.jest/setupFilesAfterEnv.js'],
snapshotSerializers: ['@emotion/jest/serializer'],
};
if (process.env.USE_REACT_16 === 'true') {
module.exports.cacheDirectory = '.jest-cache-react-16';
module.exports.moduleNameMapper = {
...module.exports.moduleNameMapper,
'^react-dom((\\/.*)?)$': 'react-dom-16$1',
'^react((\\/.*)?)$': 'react-16$1',
};
}