Trying to ignore all index files, but specifically the src/index.jsx and src/reportWebVitals.js files, however my coverage command still shows up covered lines.
My Github repo on the correct dev branch where this is an issue.
According to the docs, it should be as simple as adding the file to coveragePathIgnorePatterns and testPathIgnorePatterns.
jest.config
module.exports = {
testEnvironment: 'node',
testEnvironmentOptions: {
NODE_ENV: 'test',
},
restoreMocks: true,
coveragePathIgnorePatterns: [
'node_modules',
'index.js',
'index.jsx',
'server/src/config',
'server/src/app.js',
'src/index.jsx',
'src/reportWebVitals.js',
'tests',
],
coverageReporters: ['text', 'lcov', 'clover', 'html'],
testPathIgnorePatterns: ['index.js', 'index.jsx', 'src/index.jsx', 'src/reportWebVitals.js'],
roots: ['<rootDir>/server/tests'],
};
Also tried with a much longer version here:
module.exports = {
testEnvironment: 'node',
testEnvironmentOptions: {
NODE_ENV: 'test',
},
restoreMocks: true,
collectCoverageFrom: [
'src/{!(index),}.jsx',
'src/{!(reportWebVitals),}.js',
'src/{!(store),}.js'
],
coveragePathIgnorePatterns: [
'node_modules',
'index.js',
'index.jsx',
'server/src/config',
'server/src/app.js',
'index.jsx',
'reportWebVitals.js',
'store.js',
'tests',
],
coverageReporters: ['text', 'lcov', 'clover', 'html'],
modulePathIgnorePatterns: [
'node_modules',
'index.js',
'index.jsx',
'server/src/config',
'server/src/app.js',
'index.jsx',
'reportWebVitals.js',
'store.js',
'tests',
],
watchPathIgnorePatterns: [
'node_modules',
'index.js',
'index.jsx',
'server/src/config',
'server/src/app.js',
'index.jsx',
'reportWebVitals.js',
'store.js',
'tests',
],
testPathIgnorePatterns: [
'node_modules',
'index.js',
'index.jsx',
'server/src/config',
'server/src/app.js',
'index.jsx',
'reportWebVitals.js',
'store.js',
'tests',
],
roots: ['<rootDir>/server/tests'],
};
My package.json scripts
"client-dev": "react-scripts start",
"client-build": "react-scripts build",
"client-test": "react-scripts test ./src",
"client-coverage": "react-scripts test ./src --coverage",
UPDATE: One interesting thing I noted, I removed all my ignore rules form the jest.config.js and the coverage is still the same, node_modules isn't a problem in the coverage... so now exploring if my project is even picking up the config.
module.exports = {
testEnvironment: 'node',
testEnvironmentOptions: {
NODE_ENV: 'test',
},
restoreMocks: true,
coverageReporters: ['text', 'lcov', 'clover', 'html'],
};


