import type { Config } from '@jest/types' /* eslint-env node */ const config: Config.InitialOptions = { preset: 'ts-jest/presets/default-esm', testEnvironment: 'node', modulePathIgnorePatterns: ['smoke-tests'], reporters: [ 'default', [ 'jest-junit', { outputDirectory: 'coverage', outputName: 'jest-junit.xml', ancestorSeparator: ' › ', uniqueOutputName: 'false', suiteNameTemplate: '{filepath}', classNameTemplate: '{classname}', titleTemplate: '{title}', }, ], ], coverageReporters: ['clover', 'json', 'lcov', ['text', { file: 'coverage.txt' }], 'json-summary'], collectCoverageFrom: ['src/**/*.(t|j)s', '!src/**/*.d.(t|j)s'], coverageThreshold: { global: { branches: 80, functions: 80, lines: 80, statements: 80, }, }, // .js imports support moduleNameMapper: { '^(\\.\\.?\\/.+)\\.jsx?$': '$1', }, } export default config