2026-06-17 13:24:03 +08:00
|
|
|
import type { Config } from 'jest';
|
2024-05-27 19:35:14 +08:00
|
|
|
|
2026-06-17 13:24:03 +08:00
|
|
|
const config: Config = {
|
|
|
|
|
testEnvironment: 'jsdom',
|
|
|
|
|
transform: {
|
|
|
|
|
'^.+\\.(ts|tsx|js|jsx)$': [
|
|
|
|
|
'esbuild-jest',
|
|
|
|
|
{
|
|
|
|
|
sourcemap: true,
|
|
|
|
|
loaders: {
|
|
|
|
|
'.ts': 'tsx',
|
|
|
|
|
},
|
2024-05-27 19:35:14 +08:00
|
|
|
},
|
2026-06-17 13:24:03 +08:00
|
|
|
],
|
|
|
|
|
},
|
|
|
|
|
moduleNameMapper: {
|
|
|
|
|
'^@/(.*)$': '<rootDir>/src/$1',
|
|
|
|
|
'\\.(css|less|scss|sass)$': '<rootDir>/__mocks__/styleMock.js',
|
|
|
|
|
'\\.(jpg|jpeg|png|gif|svg|webp)$': '<rootDir>/__mocks__/fileMock.js',
|
|
|
|
|
},
|
|
|
|
|
setupFilesAfterEnv: ['<rootDir>/jest-setup.ts'],
|
|
|
|
|
collectCoverageFrom: [
|
|
|
|
|
'src/**/*.{ts,tsx,js,jsx}',
|
|
|
|
|
'!src/.umi/**',
|
|
|
|
|
'!src/.umi-test/**',
|
|
|
|
|
'!src/.umi-production/**',
|
|
|
|
|
'!**/*.d.ts',
|
|
|
|
|
'!coverage/**',
|
|
|
|
|
'!dist/**',
|
|
|
|
|
'!config/**',
|
|
|
|
|
'!mock/**',
|
|
|
|
|
],
|
|
|
|
|
coverageThreshold: {
|
|
|
|
|
global: {
|
|
|
|
|
lines: 1,
|
2024-05-27 19:35:14 +08:00
|
|
|
},
|
2026-06-17 13:24:03 +08:00
|
|
|
},
|
|
|
|
|
testPathIgnorePatterns: ['/node_modules/', '/dist/'],
|
2024-05-27 19:35:14 +08:00
|
|
|
};
|
2026-06-17 13:24:03 +08:00
|
|
|
|
|
|
|
|
export default config;
|