const path = require('path');
const { readdirSync, statSync } = require('fs-extra');
const collectCoverageFrom = [];
const loop = (dirPath) => {
const files = readdirSync(dirPath);
for (const file of files) {
const filePath = path.join(dirPath, file);
if (statSync(filePath).isDirectory()) {
loop(filePath);
} else if (/\.test\.[tj]sx?$|\.spec\.[tj]sx?$/.test(path.basename(filePath))) {
collectCoverageFrom.push(path.relative(__dirname, filePath).replace(/\.test\.|\.spec\./, '.'));
}
}
};
loop(__dirname);
module.exports = {
displayName: 'ui',
preset: '../../jest.preset.js',
transform: {
'^(?!.*\\.(js|jsx|ts|tsx|css|json)$)': '@nrwl/react/plugins/jest',
'^.+\\.[tj]sx?$': ['babel-jest', { presets: ['@nrwl/react/babel'] }],
},
moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx'],
collectCoverage: true,
collectCoverageFrom,
coverageReporters: ['clover', 'json', 'lcov', 'text'],
coverageDirectory: '../../coverage/packages/ui',
setupFilesAfterEnv: ['./jest.setup.js'],
};