From aa1552c2be68620bd53eb97bdc3850981412aa8f Mon Sep 17 00:00:00 2001 From: ibuibu Date: Sun, 19 Nov 2023 16:29:16 +0900 Subject: [PATCH 1/2] Correspond to the case where the specified file path contains / --- packages/vitest/src/node/workspace.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/vitest/src/node/workspace.ts b/packages/vitest/src/node/workspace.ts index 1deefba4c6fc..d4e8fb4bcf4b 100644 --- a/packages/vitest/src/node/workspace.ts +++ b/packages/vitest/src/node/workspace.ts @@ -254,7 +254,8 @@ export class WorkspaceProject { return testFiles.filter((t) => { const testFile = relative(dir, t) return filters.some((f) => { - return testFile.includes(f) || testFile.includes(relative(dir, f)) + const relativePath = f.endsWith('/') ? `${relative(dir, f)}/` : relative(dir, f) + return testFile.includes(f) || testFile.includes(relativePath) }) }) } From 51482d5af722013efc5e37d7f21b48607ab66970 Mon Sep 17 00:00:00 2001 From: ibuibu Date: Mon, 20 Nov 2023 21:39:09 +0900 Subject: [PATCH 2/2] use path.join --- packages/vitest/src/node/workspace.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/vitest/src/node/workspace.ts b/packages/vitest/src/node/workspace.ts index d4e8fb4bcf4b..74ceed148536 100644 --- a/packages/vitest/src/node/workspace.ts +++ b/packages/vitest/src/node/workspace.ts @@ -1,7 +1,7 @@ import { promises as fs } from 'node:fs' import fg from 'fast-glob' import mm from 'micromatch' -import { dirname, relative, resolve, toNamespacedPath } from 'pathe' +import { dirname, join, relative, resolve, toNamespacedPath } from 'pathe' import type { TransformResult, ViteDevServer, InlineConfig as ViteInlineConfig } from 'vite' import { ViteNodeRunner } from 'vite-node/client' import { ViteNodeServer } from 'vite-node/server' @@ -254,7 +254,7 @@ export class WorkspaceProject { return testFiles.filter((t) => { const testFile = relative(dir, t) return filters.some((f) => { - const relativePath = f.endsWith('/') ? `${relative(dir, f)}/` : relative(dir, f) + const relativePath = f.endsWith('/') ? join(relative(dir, f), '/') : relative(dir, f) return testFile.includes(f) || testFile.includes(relativePath) }) })