-
Notifications
You must be signed in to change notification settings - Fork 1
/
jest.config.cjs
55 lines (55 loc) · 1.63 KB
/
jest.config.cjs
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
50
51
52
53
54
55
module.exports = {
verbose: true,
roots: ['<rootDir>/src'],
collectCoverageFrom: [
'src/**/*.{js,jsx,ts,tsx}',
'!src/**/*.stories.(js|jsx|ts|tsx)',
'!src/**/*.d.ts',
'!src/mocks/**',
],
coveragePathIgnorePatterns: [],
setupFilesAfterEnv: ['./config/jest/setupTests.ts'],
testEnvironment: 'jsdom',
transform: {
// configure jest to use swc for ts/tsx files
// see: https://swc.rs/docs/configuring-swc
'^.+\\.(ts|js|tsx|jsx|cjs)?$': '@swc/jest',
'^.+\\.css$': '<rootDir>/config/jest/cssTransform.cjs',
'^(?!.*\\.(js|jsx|mjs|cjs|ts|tsx|css|json)$)':
'<rootDir>/config/jest/fileTransform.cjs',
},
transformIgnorePatterns: [
'node_modules/(?!@ngrx|(?!deck.gl)|ng-dynamic)',
'[/\\\\]node_modules[/\\\\].+\\.(js|jsx|mjs|cjs|ts|tsx)$',
'^.+\\.module\\.(css|sass|scss)$',
],
modulePaths: ['<rootDir>/src'],
moduleNameMapper: {
'^@/(.*)$': '<rootDir>/src/$1',
'^react-native$': 'react-native-web',
'^.+\\.module\\.(css|sass|scss)$': 'identity-obj-proxy',
// Force module uuid to resolve with the CJS entry point,
// because Jest does not support package.json.exports.
// See https://github.com/uuidjs/uuid/issues/451
uuid: require.resolve('uuid'),
},
moduleFileExtensions: [
// Place tsx and ts to beginning as suggestion from Jest team
// https://jestjs.io/docs/configuration#modulefileextensions-arraystring
'tsx',
'ts',
'web.js',
'js',
'web.ts',
'web.tsx',
'json',
'web.jsx',
'jsx',
'node',
],
watchPlugins: [
'jest-watch-typeahead/filename',
'jest-watch-typeahead/testname',
],
resetMocks: true,
}