forked from admin/PlantAI-rag-new
- git mv 保留历史:ui/(Vue3+Vite)、sdk/(BFF 中间层)
- 路径语义修正:db_path/figures_cache 改相对 sdk/(BFF cwd),
历史库 sdk/backend/data 迁移至 sdk/data/(会话/图片缓存无损)
- 引用修复 ~15 处:config.py、deploy/*.sh、vitest/playwright 配置、
单测导入路径、docs、README、gitignore、.env.example
- 骨架:agent/{qa,methodology,legacy-rag,vendor}、knowledge/manifest.yaml、
tooling/{compile,kb,crypto,assemble,audit,tools,scripts} + README
- 门禁验证:sdk pytest 125 通过、ui vitest 158 通过、
生产 BFF 脚本重启四上游全绿 + 静态托管 + 会话库无损
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
40 lines
1.7 KiB
JavaScript
40 lines
1.7 KiB
JavaScript
// vitest.config.js —— B1 归属。单测配置(jsdom + @vue/test-utils)。
|
||
// 测试文件位于项目根 tests/frontend/unit(ui/ 之外),依赖解析自 ui/node_modules:
|
||
// - server.fs.allow 放行上级目录
|
||
// - include 用绝对路径(与运行 cwd 无关)
|
||
// - 测试文件中的裸导入(pinia/vue/@vue/test-utils)以 alias 指到 ui/node_modules 的 ESM 入口
|
||
// 运行方式(任选):
|
||
// cd ui && npx vitest run tests/frontend/unit/b1
|
||
// 或项目根:npx --prefix ui vitest run --config ui/vitest.config.js tests/frontend/unit/b1
|
||
import { fileURLToPath } from 'node:url';
|
||
import { defineConfig } from 'vitest/config';
|
||
import vue from '@vitejs/plugin-vue';
|
||
|
||
const nodeModules = fileURLToPath(new URL('./node_modules', import.meta.url));
|
||
const testsDir = fileURLToPath(new URL('../tests/frontend/unit', import.meta.url));
|
||
|
||
export default defineConfig({
|
||
plugins: [vue()],
|
||
// 独立依赖缓存目录:避免与 dev server(node_modules/.vite)争用 optimizeDeps 锁
|
||
cacheDir: 'node_modules/.vite-vitest',
|
||
resolve: {
|
||
alias: {
|
||
// 测试文件在 ui/ 外,裸包名解析不到 ui/node_modules
|
||
pinia: `${nodeModules}/pinia/dist/pinia.mjs`,
|
||
vue: `${nodeModules}/vue/index.mjs`,
|
||
'@vue/test-utils': `${nodeModules}/@vue/test-utils/dist/vue-test-utils.esm-bundler.mjs`,
|
||
},
|
||
},
|
||
server: {
|
||
// 测试文件位于项目根 tests/(ui/ 之外),放行上级目录
|
||
fs: { allow: ['..'] },
|
||
},
|
||
test: {
|
||
environment: 'jsdom',
|
||
// 测试目录在项目根 tests/frontend/unit(B1/B2/B3 各自子树)
|
||
include: [`${testsDir}/**/*.{test,spec}.js`],
|
||
globals: false,
|
||
setupFiles: [`${testsDir}/b1/setup.js`],
|
||
},
|
||
});
|