diff --git a/packages/vitest/src/node/workspace/resolveWorkspace.ts b/packages/vitest/src/node/workspace/resolveWorkspace.ts index 9150dcc6c..d36d611ab 100644 --- a/packages/vitest/src/node/workspace/resolveWorkspace.ts +++ b/packages/vitest/src/node/workspace/resolveWorkspace.ts @@ -44,6 +44,9 @@ export async function resolveWorkspace( 'bail', 'isolate', 'printConsoleTrace', + 'inspect', + 'inspectBrk', + 'fileParallelism', ] as const const cliOverrides = overridesOptions.reduce((acc, name) => { @@ -73,7 +76,7 @@ export async function resolveWorkspace( projectPromises.push(concurrent(() => initializeProject( index, vitest, - { ...options, root, configFile }, + { ...options, root, configFile, test: { ...options.test, ...cliOverrides } }, ))) }) diff --git a/test/browser/fixtures/inspect/vitest.config.ts b/test/browser/fixtures/inspect/vitest.config.ts index a4b93a518..ffb4bea01 100644 --- a/test/browser/fixtures/inspect/vitest.config.ts +++ b/test/browser/fixtures/inspect/vitest.config.ts @@ -5,6 +5,7 @@ export default defineConfig({ test: { watch: false, browser: { + enabled: true, provider: "playwright", name: "chromium", headless: true, diff --git a/test/browser/fixtures/inspect/vitest.config.with-workspace.ts b/test/browser/fixtures/inspect/vitest.config.with-workspace.ts new file mode 100644 index 000000000..ee91b8bcd --- /dev/null +++ b/test/browser/fixtures/inspect/vitest.config.with-workspace.ts @@ -0,0 +1,22 @@ +import { defineConfig } from "vitest/config"; + +export default defineConfig({ + server: { port: 5199 }, + test: { + watch: false, + + workspace: [ + { + test: { + name: "Browser in workspace", + browser: { + provider: "playwright", + enabled: true, + headless: true, + instances: [{ browser: "chromium" }] + }, + }, + }, + ], + }, +}); diff --git a/test/browser/specs/inspect.test.ts b/test/browser/specs/inspect.test.ts index efc063984..a67b31354 100644 --- a/test/browser/specs/inspect.test.ts +++ b/test/browser/specs/inspect.test.ts @@ -9,15 +9,15 @@ type Message = Partial> const IS_PLAYWRIGHT = process.env.PROVIDER === 'playwright' const REMOTE_DEBUG_URL = '127.0.0.1:9123' -test.runIf(IS_PLAYWRIGHT || !process.env.CI)('--inspect-brk stops at test file', async () => { - const { vitest, waitForClose } = await runVitestCli( - '--root', - 'fixtures/inspect', - '--browser', - '--no-file-parallelism', - '--inspect-brk', - REMOTE_DEBUG_URL, - ) +test.runIf(IS_PLAYWRIGHT || !process.env.CI).each(['', 'with workspace'])('--inspect-brk stops at test file %s', async (isWorkspace) => { + const options = ['--root', 'fixtures/inspect', '--no-file-parallelism', '--inspect-brk', REMOTE_DEBUG_URL] + + if (isWorkspace) { + options.push('--config') + options.push('vitest.config.with-workspace.ts') + } + + const { vitest, waitForClose } = await runVitestCli(...options) await vitest.waitForStdout(`Debugger listening on ws://${REMOTE_DEBUG_URL}`)