Skip to content

Commit

Permalink
fixed root jest coverage report
Browse files Browse the repository at this point in the history
this is a workaround until this PR gets merged: jestjs/jest#9633
  • Loading branch information
starikcetin committed Feb 28, 2021
1 parent 6d1a0a1 commit eeeb06d
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 24 deletions.
26 changes: 16 additions & 10 deletions backend/jest.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,23 +5,29 @@ const name = require('./package.json').name;
module.exports = {
name,
displayName: name,
rootDir: '..',
preset: 'ts-jest',
testEnvironment: 'node',
roots: ['<rootDir>/src'],
roots: [`<rootDir>/${name}/src`],
transformIgnorePatterns: [
'<rootDir>/node_modules/',
'<rootDir>/src/__gen/',
'<rootDir>/src/common/',
`<rootDir>/${name}/node_modules/`,
`<rootDir>/${name}/src/__gen/`,
`<rootDir>/${name}/src/common/`,
],
collectCoverageFrom: [
'src/**/*.ts',
'!src/**/*.d.ts',
'!src/__gen/**',
'!src/common/**',
`${name}/src/**/*.ts`,
`!${name}/src/**/*.d.ts`,
`!${name}/src/__gen/**`,
`!${name}/src/common/**`,
],
testMatch: [
'<rootDir>/src/**/__tests__/**/*.ts',
'<rootDir>/src/**/*.spec.ts',
`<rootDir>/${name}/src/**/__tests__/**/*.ts`,
`<rootDir>/${name}/src/**/*.spec.ts`,
],
moduleFileExtensions: ['ts', 'js', 'json', 'node'],
globals: {
'ts-jest': {
tsconfig: `<rootDir>/${name}/tsconfig.json`,
},
},
};
16 changes: 11 additions & 5 deletions common/jest.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,20 @@ const name = require('./package.json').name;
module.exports = {
name,
displayName: name,
rootDir: '..',
preset: 'ts-jest',
testEnvironment: 'node',
roots: ['<rootDir>/src'],
transformIgnorePatterns: ['<rootDir>/node_modules/'],
collectCoverageFrom: ['src/**/*.ts', '!src/**/*.d.ts'],
roots: [`<rootDir>/${name}/src`],
transformIgnorePatterns: [`<rootDir>/${name}/node_modules/`],
collectCoverageFrom: [`${name}/src/**/*.ts`, `!${name}/src/**/*.d.ts`],
testMatch: [
'<rootDir>/src/**/__tests__/**/*.ts',
'<rootDir>/src/**/*.spec.ts',
`<rootDir>/${name}/src/**/__tests__/**/*.ts`,
`<rootDir>/${name}/src/**/*.spec.ts`,
],
moduleFileExtensions: ['ts', 'js', 'json', 'node'],
globals: {
'ts-jest': {
tsconfig: `<rootDir>/${name}/tsconfig.json`,
},
},
};
19 changes: 11 additions & 8 deletions frontend/jest.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,23 @@ const name = require('./package.json').name;
module.exports = {
name,
displayName: name,
roots: ['<rootDir>/src'],
collectCoverageFrom: ['src/**/*.{js,jsx,ts,tsx}', '!src/**/*.d.ts'],
rootDir: '..',
roots: [`<rootDir>/${name}/src`],
collectCoverageFrom: [
`${name}/src/**/*.{js,jsx,ts,tsx}`,
`!${name}/src/**/*.d.ts`,
],
setupFiles: ['react-app-polyfill/jsdom'],
setupFilesAfterEnv: ['<rootDir>/src/setupTests.ts'],
setupFilesAfterEnv: [`<rootDir>/${name}/src/setupTests.ts`],
testMatch: [
'<rootDir>/src/**/__tests__/**/*.{js,jsx,ts,tsx}',
'<rootDir>/src/**/*.{spec,test}.{js,jsx,ts,tsx}',
`<rootDir>/${name}/src/**/__tests__/**/*.{js,jsx,ts,tsx}`,
`<rootDir>/${name}/src/**/*.{spec,test}.{js,jsx,ts,tsx}`,
],
testEnvironment: 'jest-environment-jsdom-fourteen',
transform: {
'^.+\\.(js|jsx|ts|tsx)$': ['babel-jest', { cwd: __dirname }],
'^.+\\.css$': '<rootDir>/config/jest/cssTransform.js',
'^(?!.*\\.(js|jsx|ts|tsx|css|json)$)':
'<rootDir>/config/jest/fileTransform.js',
'^.+\\.css$': `<rootDir>/${name}/config/jest/cssTransform.js`,
'^(?!.*\\.(js|jsx|ts|tsx|css|json)$)': `<rootDir>/${name}/config/jest/fileTransform.js`,
},
transformIgnorePatterns: [
'[/\\\\]node_modules[/\\\\].+\\.(js|jsx|ts|tsx)$',
Expand Down
5 changes: 4 additions & 1 deletion jest.config.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
const packageNames = require('./package.json').workspaces;
const packageConfigFiles = packageNames.map(name => `<rootDir>/${name}/jest.config.js`);
const getPackageCoveragePaths = name => require(`./${name}/jest.config.js`).collectCoverageFrom;
const coveragePaths = packageNames.map(getPackageCoveragePaths).flat();

module.exports = {
projects: [...packageConfigFiles]
projects: [...packageConfigFiles],
collectCoverageFrom: [...coveragePaths]
};

0 comments on commit eeeb06d

Please sign in to comment.