Repository navigation
Expand file tree
/
Copy pathjest.config.js
More file actions
66 lines (64 loc) · 2.58 KB
/
Copy pathjest.config.js
File metadata and controls
66 lines (64 loc) · 2.58 KB
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
const config = {
roots: ['<rootDir>/src'],
verbose: true,
setupFiles: ['<rootDir>/src/setupTests.ts'],
preset: 'ts-jest',
testEnvironment: 'jsdom',
testEnvironmentOptions: {
customExportConditions: [''],
},
clearMocks: true,
transform: {
'^.+\\.(js|jsx|mjs)$': 'babel-jest',
},
transformIgnorePatterns: [
'<rootDir>/node_modules/(?!(@patternfly|react-monaco-editor|monaco-.*|lodash-es|screenfull|uuid|@openshift/dynamic-plugin-sdk|cidr-tools|ip-bigint)/)',
],
testPathIgnorePatterns: [
'^.+\\.(fixtures?)\\.[jt]sx?$',
'.*(TestUtils|Utils|Helper)(?!.*\\.(test|spec))\\.[jt]sx?$',
],
moduleNameMapper: {
/* Map Assisted UI lib to a mock that defines the same API but won't import the actual code */
'@openshift-assisted/ui-lib/ocm': '<rootDir>/__mocks__/assistedUiMock.ts',
/* Map Assisted UI lib translations to a mock file too */
'@openshift-assisted/locales/([a-z]{2,3}/translation.json)':
'<rootDir>/__mocks__/assistedUiTranslationMock.json',
'^react-markdown$': '<rootDir>/__mocks__/markdownMock.tsx',
'^rehype-raw$': '<rootDir>/__mocks__/rehype-raw.ts',
'^remark-gfm$': '<rootDir>/__mocks__/remark-gfm.ts',
'^axios$': '<rootDir>/node_modules/axios/dist/node/axios.cjs',
'\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$':
'<rootDir>/__mocks__/fileMock.js',
'\\.(css|less|scss)$': '<rootDir>/__mocks__/styleMock.js',
'^~/(.*)$': '<rootDir>/src/$1',
'^src/components/common/TechnologyPreview$': '<rootDir>/__mocks__/technologyPreviewFake.tsx',
'@scalprum/react-core': '<rootDir>/__mocks__/scalprumComponentMock.tsx',
'keycloak-js': '<rootDir>/__mocks__/keycloakMock.ts',
},
globals: {
APP_DEVMODE: false,
APP_DEV_SERVER: false,
// Warning! Moving this config to the "ts-jes" transform makes the test slower and close to double the used heap size
'ts-jest': {
isolatedModules: true,
tsconfig: { module: 'esnext', moduleResolution: 'node' },
},
},
moduleFileExtensions: ['js', 'jsx', 'ts', 'tsx', 'json', 'node', 'mjs'],
testTimeout: 10000,
collectCoverageFrom: ['src/**/*.{js,jsx,ts,tsx}'],
coveragePathIgnorePatterns: [
'<rootDir>/src/.*fixtures.*',
'<rootDir>/src/.*mock.*',
'<rootDir>/src/.*index.*',
'<rootDir>/src/.*stories.*',
'<rootDir>/src/.*styles.*',
'<rootDir>/src/.*types.*',
'<rootDir>/src/.*constants.*',
'<rootDir>/src/services/apiRequest.*',
],
coverageDirectory: 'unitTestCoverage',
coverageReporters: ['html', 'json-summary', 'text-summary', 'lcov'],
};
module.exports = config;