Files
gridpilot.gg/vitest.config.ts

56 lines
1.3 KiB
TypeScript

import { defineConfig } from 'vitest/config';
import path from 'path';
export default defineConfig({
resolve: {
alias: {
'@': path.resolve(__dirname, '.'),
packages: path.resolve(__dirname, './packages'),
'packages/': path.resolve(__dirname, './packages'),
},
},
test: {
globals: true,
watch: false,
environment: 'jsdom',
setupFiles: ['./tests/setup.ts'],
include: ['tests/**/*.test.ts', 'tests/**/*.test.tsx'],
exclude: ['tests/e2e/**/*'],
env: {
NODE_ENV: 'test',
},
coverage: {
provider: 'v8',
reporter: ['text', 'json', 'html'],
exclude: [
'node_modules/',
'tests/',
'**/*.d.ts',
'**/*.config.*',
'**/dist/**',
],
},
// Longer timeout for integration tests
testTimeout: 30000,
server: {
deps: {
inline: ['jsdom', 'parse5'],
},
},
},
});
// Separate E2E config - used when running test:e2e script
export const e2eConfig = defineConfig({
test: {
globals: true,
environment: 'node',
include: ['tests/e2e/**/*.e2e.test.ts'],
env: {
NODE_ENV: 'test',
},
// E2E tests need longer timeouts due to browser operations
testTimeout: 120000,
hookTimeout: 60000,
},
});