diff --git a/src/testRunner/unittests/helpers/tscWatch.ts b/src/testRunner/unittests/helpers/tscWatch.ts index 2e6dbc2b8c9..be6f02282b9 100644 --- a/src/testRunner/unittests/helpers/tscWatch.ts +++ b/src/testRunner/unittests/helpers/tscWatch.ts @@ -30,6 +30,7 @@ export interface TscWatchCompileChange extends TscWatchCheckOptions { scenario: string; @@ -57,6 +58,7 @@ function tscWatchCompile(input: TscWatchCompile) { edits, baselineSourceMap, baselineDependencies, + skipIncrementalVerification, } = input; ts.Debug.assert(isWatch(commandLineArgs), "use verifyTsc"); const { cb, getPrograms } = commandLineCallbacks(sys); @@ -74,6 +76,7 @@ function tscWatchCompile(input: TscWatchCompile) { getPrograms, baselineSourceMap, baselineDependencies, + skipIncrementalVerification, edits, watchOrSolution, }); @@ -143,6 +146,7 @@ export function runWatchBaseline | undefined)?.getResolutionCache?.(), useSourceOfProjectReferenceRedirect, @@ -191,6 +197,7 @@ export function watchBaseline({ sys, baselineSourceMap, baselineDependencies, + skipIncrementalVerification, caption, resolutionCache, useSourceOfProjectReferenceRedirect, @@ -205,7 +212,7 @@ export function watchBaseline({ baselineDependencies, ); // Verify program structure and resolution cache when incremental edit with tsc --watch (without build mode) - if (resolutionCache && programs.length) { + if (!skipIncrementalVerification && resolutionCache && programs.length) { ts.Debug.assert(programs.length === 1); verifyProgramStructureAndResolutionCache( caption!, diff --git a/src/testRunner/unittests/helpers/tsserver.ts b/src/testRunner/unittests/helpers/tsserver.ts index 22cf54e993d..8b7bbe15d0c 100644 --- a/src/testRunner/unittests/helpers/tsserver.ts +++ b/src/testRunner/unittests/helpers/tsserver.ts @@ -197,6 +197,7 @@ export interface TestSessionOptions extends ts.server.SessionOptions, TestTyping disableAutomaticTypingAcquisition?: boolean; useCancellationToken?: boolean | number; regionDiagLineCountThreshold?: number; + skipIncrementalVerification?: true; } export type TestSessionPartialOptionsAndHost = & Partial> @@ -237,7 +238,7 @@ export class TestSession extends ts.server.Session { hrtime: process.hrtime, logger: opts.logger, canUseEvents: true, - incrementalVerifier, + incrementalVerifier: opts.skipIncrementalVerification ? undefined : incrementalVerifier, typesMapLocation: customTypesMap.path, typingsInstaller, ...opts, diff --git a/src/testRunner/unittests/tscWatch/moduleResolution.ts b/src/testRunner/unittests/tscWatch/moduleResolution.ts index a5597a77e5a..99743ca3b41 100644 --- a/src/testRunner/unittests/tscWatch/moduleResolution.ts +++ b/src/testRunner/unittests/tscWatch/moduleResolution.ts @@ -540,6 +540,7 @@ describe("unittests:: tscWatch:: moduleResolution::", () => { sys, commandLineArgs: ["-w", "--extendedDiagnostics"], edits: edits(), + skipIncrementalVerification: true, }), ); diff --git a/src/testRunner/unittests/tsserver/moduleResolution.ts b/src/testRunner/unittests/tsserver/moduleResolution.ts index 20a3852c28e..4f9b29367f9 100644 --- a/src/testRunner/unittests/tsserver/moduleResolution.ts +++ b/src/testRunner/unittests/tsserver/moduleResolution.ts @@ -162,7 +162,7 @@ describe("unittests:: tsserver:: moduleResolution::", () => { it(scenario, () => { const host = getHost(); const indexFile = "/home/src/projects/project/index.mts"; - const session = new TestSession(host); + const session = new TestSession({ host, skipIncrementalVerification: true }); openFilesForSession([indexFile], session); verifyGetErrRequest({ files: [indexFile], session }); forEachTscWatchEdit(session, edits(), () => verifyGetErrRequest({ session, files: [indexFile] }));