-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Description
Describe the bug
// /praxis/vite.config.ts
///
import { defineConfig } from 'vite';
import react from '@vitejs/plugin-react';
export default defineConfig({
// --- Vite 的配置 (用于 webapp) ---
plugins: [react()],
// --- Vitest 的配置 (唯一的测试配置来源) ---
test: {
// 明确指定项目的根目录
root: '.',
// 这个是 Vitest 官方推荐的最全面的匹配模式
include: ['**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
// 排除无需测试的目录
exclude: [
'**/node_modules/**',
'**/dist/**',
],
// 启用全局 API (describe, it, etc.)
globals: true,
// 为 UI 测试设置 jsdom 环境
// environment: 'jsdom',
},
});
I'm using a monorepo codebase, and as soon as I use root: '.', I get an error. If I comment it out, the error goes away. Is there something wrong with the parsing method?
"test:ui": "vitest --ui",
**pnpm test:ui
praxis-monorepo@0.1.1 test:ui /Users/kindred/Desktop/web/praxis
vitest --ui
TypeError [ERR_INVALID_FILE_URL_HOST]: File URL host must be "localhost" or empty on darwin
at getPathFromURLPosix (node:internal/url:1486:11)
at fileURLToPath (node:internal/url:1510:63)
at getPackageScopeConfig (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4_@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:703:32)
at packageResolve (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4_@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:1853:25)
at moduleResolve (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4_@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:1993:18)
at tryModuleResolve (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:2038:12)
at resolve$1 (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:2093:16)
at resolveSync (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4_@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:2126:10)
at resolvePathSync (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4_@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:2129:24)
at resolve (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:2300:22) {
code: 'ERR_INVALID_FILE_URL_HOST'
}**
Reproduction
https://github.com/indredK/praxis
System Info
praxis git:(main) ✗ pnpm test:ui
> praxis-monorepo@0.1.1 test:ui /Users/kindred/Desktop/web/praxis
> vitest --ui
TypeError [ERR_INVALID_FILE_URL_HOST]: File URL host must be "localhost" or empty on darwin
at getPathFromURLPosix (node:internal/url:1486:11)
at fileURLToPath (node:internal/url:1510:63)
at getPackageScopeConfig (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4_@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:703:32)
at packageResolve (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4_@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:1853:25)
at moduleResolve (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4_@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:1993:18)
at _tryModuleResolve (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4_@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:2038:12)
at _resolve$1 (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4_@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:2093:16)
at resolveSync (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4_@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:2126:10)
at resolvePathSync (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4_@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:2129:24)
at _resolve (file:///Users/kindred/Desktop/web/praxis/node_modules/.pnpm/vitest@3.2.4_@types+node@20.19.15_@vitest+ui@3.2.4_jsdom@27.0.0_postcss@8.5.6__yaml@2.8.1/node_modules/vitest/dist/chunks/coverage.DL5VHqXY.js:2300:22) {
code: 'ERR_INVALID_FILE_URL_HOST'
}
MISSING DEPENDENCY Cannot find dependency '@vitest/ui'
✔ Do you want to install @vitest/ui?Used Package Manager
pnpm
Validations
- Follow our Code of Conduct
- Read the Contributing Guidelines.
- Read the docs.
- Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
- Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
- The provided reproduction is a minimal reproducible example of the bug.