rwadurian/backend/services/presence-service/jest.config.js

40 lines
1.0 KiB
JavaScript

// Jest 共享配置
const baseConfig = {
moduleFileExtensions: ['js', 'json', 'ts'],
rootDir: '.',
transform: {
'^.+\\.(t|j)s$': 'ts-jest',
},
testEnvironment: 'node',
moduleNameMapper: {
'^@/(.*)$': '<rootDir>/src/$1',
},
};
module.exports = {
...baseConfig,
collectCoverageFrom: ['src/**/*.(t|j)s', '!src/main.ts', '!src/**/*.module.ts'],
coverageDirectory: './coverage',
// 测试分组
projects: [
{
...baseConfig,
displayName: 'unit',
testMatch: ['<rootDir>/test/unit/**/*.spec.ts'],
setupFilesAfterEnv: ['<rootDir>/test/setup.ts'],
},
{
...baseConfig,
displayName: 'integration',
testMatch: ['<rootDir>/test/integration/**/*.spec.ts'],
setupFilesAfterEnv: ['<rootDir>/test/setup.ts'],
},
{
...baseConfig,
displayName: 'e2e',
testMatch: ['<rootDir>/test/e2e/**/*.(spec|e2e-spec).ts'],
setupFilesAfterEnv: ['<rootDir>/test/setup.ts', '<rootDir>/test/e2e/setup-e2e.ts'],
},
],
};