Files

51 lines
1.3 KiB
TypeScript

import { playwright } from '@vitest/browser-playwright'
import { preview } from '@vitest/browser-preview'
import { mergeConfig } from 'vite'
import { configDefaults, defineConfig } from 'vitest/config'
import viteConfig from './vite.config'
// known working set of tests for providers
// pnpm -C packages/ui test:ui
// PROVIDER=preview pnpm -C packages/ui test:ui SmallTab -t access
const providerName = (process.env.PROVIDER || 'playwright') as
| 'playwright'
| 'preview'
const testConfig = defineConfig({
optimizeDeps: {
include: [
'vue-router',
'splitpanes',
'd3-graph-controller',
'vue-virtual-scroller',
'rrweb-snapshot',
],
},
test: {
reporters: [
process.env.VITEST_CI_BLOB_LABEL
? ['blob', { label: process.env.VITEST_CI_BLOB_LABEL }]
: {},
process.env.VITEST_CI_MERGE_REPORTS
? ['html', { singleFile: true }]
: {},
...configDefaults.reporters,
],
browser: {
enabled: true,
traceView: true,
headless: true,
provider:
providerName === 'preview'
? preview()
: playwright({
actionTimeout: 5000,
}),
instances: [{ browser: 'chromium' }],
},
},
})
export default mergeConfig(viteConfig, testConfig)