fork of hey-api/openapi-ts because I need some additional things
1import { platform } from 'node:os';
2
3import type { ViteUserConfig } from 'vitest/config';
4import { configDefaults, defineConfig, mergeConfig } from 'vitest/config';
5
6export function createVitestConfig(
7 root: string,
8 config: ViteUserConfig = {},
9): ViteUserConfig {
10 const baseConfig = defineConfig({
11 plugins: [],
12 test: {
13 coverage: {
14 exclude: ['bin', 'dist', 'src/**/*.d.ts'],
15 include: ['src/**/*.ts', 'src/**/*.tsx', 'src/**/*.vue'],
16 provider: 'v8',
17 },
18 exclude: [...configDefaults.exclude],
19 pool: platform() === 'win32' ? 'threads' : 'forks',
20 poolOptions: {
21 forks: {
22 singleFork: false,
23 },
24 threads: {
25 singleThread: false,
26 },
27 },
28 root,
29 testTimeout: platform() === 'win32' ? 10000 : 5000,
30 },
31 });
32
33 return mergeConfig(baseConfig, config);
34}