jest.config.js•986 B
/** @type {import('ts-jest').JestConfigWithTsJest} */
export default {
preset: 'ts-jest',
testEnvironment: 'node',
transform: {
'^.+\\.ts$': ['ts-jest', {
tsconfig: 'tsconfig.test.json',
useESM: true
}]
},
roots: ['<rootDir>/tests'],
testMatch: ['**/unit/**/*.test.ts'],
collectCoverageFrom: [
'src/**/*.ts',
'!src/**/*.test.ts'
],
coveragePathIgnorePatterns: [
'/node_modules/',
'/tests/',
'/samples/'
],
collectCoverage: true,
coverageDirectory: 'coverage',
coverageReporters: ['text', 'lcov'],
coverageThreshold: {
global: {
branches: 80,
functions: 80,
lines: 80,
statements: 80
}
},
extensionsToTreatAsEsm: ['.ts'],
reporters: [
'default',
['jest-junit', {
outputDirectory: '.',
outputName: 'junit.xml',
classNameTemplate: '{classname}',
titleTemplate: '{title}',
ancestorSeparator: ' › ',
usePathForSuiteName: true
}]
]
}