50 lines
1.1 KiB
TypeScript
50 lines
1.1 KiB
TypeScript
import { cwd } from 'node:process'
|
|
|
|
import Vue from '@vitejs/plugin-vue'
|
|
import Info from 'unplugin-info/vite'
|
|
|
|
import { playwright } from '@vitest/browser-playwright'
|
|
import { loadEnv } from 'vite'
|
|
import { defineConfig } from 'vitest/config'
|
|
|
|
export default defineConfig({
|
|
root: import.meta.dirname,
|
|
plugins: [
|
|
Info(),
|
|
Vue(),
|
|
],
|
|
test: {
|
|
env: loadEnv('test', cwd(), ''),
|
|
projects: [
|
|
{
|
|
extends: true,
|
|
test: {
|
|
name: 'node',
|
|
include: ['src/**/*.test.ts'],
|
|
exclude: ['src/**/*.browser.test.ts'],
|
|
fileParallelism: false,
|
|
hookTimeout: 20_000,
|
|
maxWorkers: 1,
|
|
testTimeout: 20_000,
|
|
},
|
|
},
|
|
{
|
|
extends: true,
|
|
test: {
|
|
name: 'browser',
|
|
include: ['src/**/*.browser.test.ts'],
|
|
exclude: ['**/node_modules/**'],
|
|
browser: {
|
|
enabled: true,
|
|
headless: true,
|
|
provider: playwright(),
|
|
instances: [
|
|
{ browser: 'chromium' },
|
|
],
|
|
},
|
|
},
|
|
},
|
|
],
|
|
},
|
|
})
|