mirror of
https://github.com/WeBankFinTech/fes.js.git
synced 2025-04-06 03:59:53 +08:00
47 lines
1.7 KiB
JavaScript
47 lines
1.7 KiB
JavaScript
import { existsSync } from 'fs';
|
|
import { join } from 'path';
|
|
|
|
export default (cwd, args) => {
|
|
const testMatchTypes = ['spec', 'test'];
|
|
if (args.e2e) {
|
|
testMatchTypes.push('e2e');
|
|
}
|
|
const hasSrc = existsSync(join(cwd, 'src'));
|
|
return {
|
|
collectCoverageFrom: [
|
|
'index.{js,jsx,vue}',
|
|
hasSrc && 'src/**/*.{js,jsx,vue}',
|
|
'!**/.fes/**',
|
|
'!**/typings/**',
|
|
'!**/types/**',
|
|
'!**/fixtures/**',
|
|
'!**/examples/**',
|
|
'!**/*.d.ts',
|
|
].filter(Boolean),
|
|
moduleFileExtensions: [
|
|
'js',
|
|
'jsx',
|
|
'json',
|
|
// tell Jest to handle *.vue files
|
|
'vue',
|
|
],
|
|
transform: {
|
|
// process *.vue files with vue-jest
|
|
'^.+\\.vue$': require.resolve('vue3-jest'),
|
|
'.+\\.(css|styl|less|sass|scss|jpg|jpeg|png|svg|gif|eot|otf|webp|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$':
|
|
require.resolve('jest-transform-stub'),
|
|
'^.+\\.jsx?$': require.resolve('../helpers/transformers/javascript'),
|
|
},
|
|
transformIgnorePatterns: ['/node_modules/'],
|
|
// support the same @ -> src alias mapping in source code
|
|
moduleNameMapper: {
|
|
'^@/(.*)$': '<rootDir>/src/$1',
|
|
},
|
|
testMatch: [`**/tests/**/*.(${testMatchTypes.join('|')}).[jt]s?(x)`, '**/__tests__/**/*.[jt]s?(x)'],
|
|
// https://github.com/facebook/jest/issues/6766
|
|
testURL: 'http://localhost/',
|
|
watchPlugins: [require.resolve('jest-watch-typeahead/filename'), require.resolve('jest-watch-typeahead/testname')],
|
|
verbose: true,
|
|
};
|
|
};
|