-
-
Notifications
You must be signed in to change notification settings - Fork 24
/
jest.config.js
83 lines (73 loc) · 2.5 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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
// For a detailed explanation regarding each configuration property, visit:
// https://jestjs.io/docs/en/configuration.html
export default {
// Automatically clear mock calls and instances between every test
clearMocks: true,
// Indicates whether the coverage information should be collected while executing the test
collectCoverage: true,
// An array of glob patterns indicating a set of files for which coverage information should be collected
// collectCoverageFrom: undefined,
// The directory where Jest should output its coverage files
coverageDirectory: 'coverage',
// moduleDirectories: ["node_modules", "packages"],
// An array of regexp pattern strings used to skip coverage collection
coveragePathIgnorePatterns: ['index.ts', '/node_modules/'],
moduleNameMapper: {
'^(\\.{1,2}/.*)\\.js$': '$1',
'^@tsed/logger$': '<rootDir>/packages/logger/src/index.ts',
},
// An object that configures minimum threshold enforcement for coverage results
coverageThreshold: {
global: {
statements: 94.25,
branches: 77.27,
functions: 90.42,
lines: 94.56
}
},
// An array of file extensions your modules use
moduleFileExtensions: ['js', 'json', 'jsx', 'ts', 'tsx', 'node'],
// The test environment that will be used for testing
testEnvironment: 'node',
// The glob patterns Jest uses to detect test files
testMatch: [
'**/packages/*/src/**/__tests__/**/*.[jt]s?(x)',
'**/packages/*/src/**/?(*.)+(spec|test).[tj]s?(x)',
'**/packages/*/test/**/?(*.)+(spec|test).[tj]s?(x)'
],
// A map from regular expressions to paths to transformers
transform: {
'^.+\\.(t|j)sx?$': ['@swc/jest', {
jsc: {
'target': 'es2021',
'parser': {
'syntax': 'typescript',
'tsx': true,
'decorators': true,
'dynamicImport': true,
'privateMethod': true,
'exportDefaultFrom': true,
'importMeta': true
},
'transform': {
'hidden': {
'jest': true
},
'legacyDecorator': true,
'decoratorMetadata': true
}
},
'module': {
'type': 'commonjs',
'strict': false,
'strictMode': true,
'lazy': false,
'noInterop': false
}
}]
},
modulePathIgnorePatterns: ['<rootDir>/packages/*/lib', '<rootDir>/dist'],
// The paths to modules that run some code to configure or set up the testing environment before each test
setupFiles: [],
extensionsToTreatAsEsm: ['.ts']
}