31 lines
938 B
JavaScript
31 lines
938 B
JavaScript
/** @type {import('ts-jest').JestConfigWithTsJest} */
|
|
export default {
|
|
preset: 'ts-jest/presets/default-esm',
|
|
testEnvironment: 'jsdom',
|
|
setupFilesAfterEnv: ['<rootDir>/src/setupTests.ts'],
|
|
globals: {
|
|
'ts-jest': {
|
|
useESM: true,
|
|
},
|
|
},
|
|
moduleNameMapper: {
|
|
'^@/(.*)$': '<rootDir>/src/$1',
|
|
'\\.(css|less|scss|sass)$': 'identity-obj-proxy',
|
|
'\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$': 'jest-transform-stub',
|
|
},
|
|
transform: {
|
|
'^.+\\.tsx?$': ['ts-jest', { useESM: true }],
|
|
},
|
|
testRegex: '(/__tests__/.*|(\\.|/)(test|spec))\\.[jt]sx?$',
|
|
moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'],
|
|
extensionsToTreatAsEsm: ['.ts', '.tsx'],
|
|
collectCoverageFrom: [
|
|
'src/**/*.{ts,tsx}',
|
|
'!src/**/*.d.ts',
|
|
'!src/main.tsx',
|
|
'!src/vite-env.d.ts',
|
|
],
|
|
coverageDirectory: 'coverage',
|
|
coverageReporters: ['text', 'lcov', 'html'],
|
|
};
|