Skip to content

Commit 4b2eb7d

Browse files
committed
fix: replace the plugin configuration with reporter implementation
1 parent bc6ec31 commit 4b2eb7d

File tree

2 files changed

+20
-14
lines changed

2 files changed

+20
-14
lines changed

packages/worker/src/index.ts

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ export async function initVitest(
1616
const meta = data.meta
1717
const reporter = new VSCodeReporter({
1818
setupFilePaths: meta.setupFilePaths,
19+
debug: data.debug,
1920
})
2021

2122
let stdout: Writable | undefined
@@ -125,19 +126,6 @@ export async function initVitest(
125126
} as any,
126127
}
127128
},
128-
configureVitest(context) {
129-
const options = context.project.config.browser
130-
if (options?.enabled && typeof data.debug === 'object') {
131-
context.project.config.setupFiles.push(meta.setupFilePaths.browserDebug)
132-
context.vitest.config.inspector = {
133-
enabled: true,
134-
port: data.debug.port,
135-
host: data.debug.host,
136-
waitForDebugger: false,
137-
}
138-
context.project.config.inspector = context.vitest.config.inspector
139-
}
140-
},
141129
api: {
142130
vitest: {
143131
experimental: {

packages/worker/src/reporter.ts

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import type { RunnerTaskResultPack, UserConsoleLog } from 'vitest'
2-
import type { VitestWorkerRPC, WorkerInitMetadata } from 'vitest-vscode-shared'
2+
import type { VitestWorkerRPC, WorkerInitMetadata, WorkerRunnerOptions } from 'vitest-vscode-shared'
33
import type {
44
BrowserCommand,
55
Reporter,
@@ -15,20 +15,25 @@ import { ExtensionWorker } from './worker'
1515

1616
interface VSCodeReporterOptions {
1717
setupFilePaths: WorkerInitMetadata['setupFilePaths']
18+
debug: WorkerRunnerOptions['debug']
1819
}
1920

2021
export class VSCodeReporter implements Reporter {
2122
public rpc!: VitestWorkerRPC
2223
private vitest!: VitestCore
2324

2425
private setupFilePaths: WorkerInitMetadata['setupFilePaths']
26+
private debug: WorkerRunnerOptions['debug']
2527

2628
constructor(options: VSCodeReporterOptions) {
2729
this.setupFilePaths = options.setupFilePaths
30+
this.debug = options.debug
2831
}
2932

3033
onInit(vitest: VitestCore) {
3134
this.vitest = vitest
35+
this.configureBrowserDebugging(vitest)
36+
3237
vitest.projects.forEach((project) => {
3338
this.ensureSetupFileIsAllowed(project.vite.config)
3439
})
@@ -142,6 +147,19 @@ export class VSCodeReporter implements Reporter {
142147
})
143148
}
144149

150+
configureBrowserDebugging(vitest: VitestCore) {
151+
//
152+
// Note: This is too late to enable the inspector itself, but we can still add setup files
153+
//
154+
const isBrowserEnabled = vitest.projects.some(project => project.config.browser?.enabled)
155+
156+
if (isBrowserEnabled && this.debug !== undefined && typeof this.debug === 'object') {
157+
vitest.projects.forEach((project) => {
158+
project.config.setupFiles.push(this.setupFilePaths.browserDebug)
159+
})
160+
}
161+
}
162+
145163
toJSON() {
146164
return {}
147165
}

0 commit comments

Comments
 (0)