diff --git a/packages/extension/src/apiProcess.ts b/packages/extension/src/apiProcess.ts index 2076ec8..9a3e8a2 100644 --- a/packages/extension/src/apiProcess.ts +++ b/packages/extension/src/apiProcess.ts @@ -6,7 +6,7 @@ import type { ExtensionWorkerProcess } from './spawn/types' import type { ProcessSpawnOptions } from './spawn/ws' import type { TestFileMetadata } from './testTreeData' import { readFileSync } from 'node:fs' -import { normalize, relative, resolve } from 'pathe' +import { normalize, relative } from 'pathe' import pm from 'picomatch' import { createQueuedHandler } from 'vitest-vscode-shared' import * as vscode from 'vscode' @@ -58,9 +58,7 @@ export class VitestProjectConfig { } get htmlReportPath() { - const config = this.extensionConfig - if (!config.htmlReporter) return - return resolve(config.root, config.htmlReporter.outputDir || '.vitest', 'index.html') + return this.extensionConfig.htmlReportPath } get package() { diff --git a/packages/shared/src/index.ts b/packages/shared/src/index.ts index bae2793..4a206eb 100644 --- a/packages/shared/src/index.ts +++ b/packages/shared/src/index.ts @@ -51,12 +51,9 @@ export interface ExtensionEnvironment { } export interface ExtensionWorkerConfig { - root: string projects: SerializedProject[] workspaceSource: string | false - htmlReporter?: { - outputDir?: string - } + htmlReportPath?: string } export interface ExtensionWorkerTransport { diff --git a/packages/worker-legacy/src/index.ts b/packages/worker-legacy/src/index.ts index 58c1616..7e5aaae 100644 --- a/packages/worker-legacy/src/index.ts +++ b/packages/worker-legacy/src/index.ts @@ -203,7 +203,7 @@ export async function initVitest( : vitest.config.workspace != null || vitest.config.projects != null ? vitest.server.config.configFile || false : false - const config: ExtensionWorkerConfig = { root: vitest.config.root, projects, workspaceSource } + const config: ExtensionWorkerConfig = { projects, workspaceSource } return { vitest, reporter, diff --git a/packages/worker/src/index.ts b/packages/worker/src/index.ts index d0611b5..0d8f09a 100644 --- a/packages/worker/src/index.ts +++ b/packages/worker/src/index.ts @@ -8,6 +8,7 @@ import type { Reporter, TestUserConfig } from 'vitest/node' import { Console } from 'node:console' import { Writable } from 'node:stream' import { toArray } from '@vitest/utils/helpers' +import { resolve } from 'pathe' import { VSCodeReporter } from './reporter' import { ExtensionWorker } from './worker' @@ -168,11 +169,15 @@ export async function initVitest( const workspaceSource: string | false = vitest.config.projects != null ? vitest.vite.config.configFile || false : false - const config: ExtensionWorkerConfig = { root: vitest.config.root, projects, workspaceSource } + const config: ExtensionWorkerConfig = { projects, workspaceSource } for (const reporter of vitest.config.reporters) { if (Array.isArray(reporter) && reporter[0] === 'html') { const options = reporter[1] as { outputDir?: string } - config.htmlReporter = { outputDir: options.outputDir } + config.htmlReportPath = resolve( + vitest.config.root, + options.outputDir || '.vitest', + 'index.html', + ) break } }