import { defineConfig } from 'vitest/config';
import { resolve } from 'path';
export default defineConfig({
test: {
globals: true,
environment: 'node',
env: {
NODE_ENV: 'test',
},
globalSetup: ['./src/test/setup/global-setup.ts'],
setupFiles: ['./src/test/setup/test-setup.ts'],
fileParallelism: false,
pool: 'forks',
poolOptions: {
forks: {
maxForks: 1,
minForks: 1,
},
},
testTimeout: 30000,
retry: 2,
coverage: {
provider: 'v8',
reporter: ['text', 'json', 'html', 'lcov'],
exclude: [
'node_modules/',
'dist/',
'*.config.ts',
'**/*.d.ts',
'**/*.test.ts',
'**/*.spec.ts',
'src/cli.ts',
'src/setup.ts',
],
},
include: ['src/**/*.{test,spec}.ts'],
exclude: ['node_modules', 'dist'],
},
resolve: {
alias: {
'@': resolve(__dirname, './src'),
},
},
});