From 1c51e5f7139d97be811afad4f8ccb0dcb7597d94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ari=20Perkki=C3=B6?= Date: Sat, 28 Jun 2025 09:43:05 +0300 Subject: [PATCH] test: migrate to Vitest inline projects --- package.json | 4 ++-- vitest.config.ts | 41 +++++++++++++++++++++++++++++++++++++---- vitest.e2e.config.ts | 14 -------------- vitest.unit.config.ts | 9 --------- vitest.workspace.ts | 6 ------ 5 files changed, 39 insertions(+), 35 deletions(-) delete mode 100644 vitest.e2e.config.ts delete mode 100644 vitest.unit.config.ts delete mode 100644 vitest.workspace.ts diff --git a/package.json b/package.json index b84deca0a91..d9d0e08fc1e 100644 --- a/package.json +++ b/package.json @@ -17,11 +17,11 @@ "format": "prettier --write --cache .", "format-check": "prettier --check --cache .", "test": "vitest", - "test-unit": "vitest --project unit", + "test-unit": "vitest --project unit*", "test-e2e": "node scripts/build.js vue -f global -d && vitest --project e2e", "test-dts": "run-s build-dts test-dts-only", "test-dts-only": "tsc -p packages-private/dts-built-test/tsconfig.json && tsc -p ./packages-private/dts-test/tsconfig.test.json", - "test-coverage": "vitest run --project unit --coverage", + "test-coverage": "vitest run --project unit* --coverage", "prebench": "node scripts/build.js -pf esm-browser reactivity", "prebench-compare": "node scripts/build.js -pf esm-browser reactivity", "bench": "vitest bench --project=unit --outputJson=temp/bench.json", diff --git a/vitest.config.ts b/vitest.config.ts index 3fce4ce87c2..58d73110068 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -1,4 +1,4 @@ -import { defineConfig } from 'vitest/config' +import { configDefaults, defineConfig } from 'vitest/config' import { entries } from './scripts/aliases.js' export default defineConfig({ @@ -25,9 +25,6 @@ export default defineConfig({ globals: true, pool: 'threads', setupFiles: 'scripts/setup-vitest.ts', - environmentMatchGlobs: [ - ['packages/{vue,vue-compat,runtime-dom}/**', 'jsdom'], - ], sequence: { hooks: 'list', }, @@ -49,5 +46,41 @@ export default defineConfig({ 'packages/runtime-dom/src/components/Transition*', ], }, + + projects: [ + { + extends: true, + test: { + name: 'unit', + exclude: [ + ...configDefaults.exclude, + '**/e2e/**', + '**/{vue,vue-compat,runtime-dom}/**', + ], + }, + }, + { + extends: true, + test: { + name: 'unit-jsdom', + include: ['packages/{vue,vue-compat,runtime-dom}/**/*.{test,spec}.*'], + exclude: [...configDefaults.exclude, '**/e2e/**'], + environment: 'jsdom', + }, + }, + { + extends: true, + test: { + name: 'e2e', + environment: 'jsdom', + poolOptions: { + threads: { + singleThread: !!process.env.CI, + }, + }, + include: ['packages/vue/__tests__/e2e/*.spec.ts'], + }, + }, + ], }, }) diff --git a/vitest.e2e.config.ts b/vitest.e2e.config.ts deleted file mode 100644 index 622bda0bd57..00000000000 --- a/vitest.e2e.config.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { mergeConfig } from 'vitest/config' -import config from './vitest.config' - -export default mergeConfig(config, { - test: { - name: 'e2e', - poolOptions: { - threads: { - singleThread: !!process.env.CI, - }, - }, - include: ['packages/vue/__tests__/e2e/*.spec.ts'], - }, -}) diff --git a/vitest.unit.config.ts b/vitest.unit.config.ts deleted file mode 100644 index 0082997e0d1..00000000000 --- a/vitest.unit.config.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { configDefaults, mergeConfig } from 'vitest/config' -import config from './vitest.config' - -export default mergeConfig(config, { - test: { - name: 'unit', - exclude: [...configDefaults.exclude, '**/e2e/**'], - }, -}) diff --git a/vitest.workspace.ts b/vitest.workspace.ts deleted file mode 100644 index a20586e7cfe..00000000000 --- a/vitest.workspace.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { defineWorkspace } from 'vitest/config' - -export default defineWorkspace([ - './vitest.unit.config.ts', - './vitest.e2e.config.ts', -])