From 72d5e72e6d7b7997c4ecb11972fc405be8ec67d2 Mon Sep 17 00:00:00 2001 From: gensokyo-dev <342580529+gensokyo-dev@users.noreply.github.com> Date: Sun, 8 Nov 2026 15:14:10 +0800 Subject: [PATCH] perf(tests): reuse CLI sessions in Electron call-path regressions (#9335) Co-authored-by: gensokyo-dev --- .../cli/electronWrappedCallPaths.test.ts | 26 +++++++++++-------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/tests/boundary/cli/electronWrappedCallPaths.test.ts b/tests/boundary/cli/electronWrappedCallPaths.test.ts index cafbc548e8..6c5c4ba83f 100644 --- a/tests/boundary/cli/electronWrappedCallPaths.test.ts +++ b/tests/boundary/cli/electronWrappedCallPaths.test.ts @@ -7,7 +7,11 @@ import { z } from "zod"; import { createTestTempDirectory } from "../../fixtures/temporaryDirectory.js"; import { connectLocalToolsMcp } from "../../fixtures/localToolsMcp.js"; import { writeFixtureFiles } from "../../support/javascriptApplicationFixture.js"; -import { cliTest, type TestCli } from "../../support/cli/cliFixture.js"; +import { + cliTest, + runFileCli, + type TestCli, +} from "../../support/cli/cliFixture.js"; import { javascriptApplicationAnalysisResultSchema } from "../../../src/domain/javascript/javascriptApplicationAnalysis.js"; import { applicationFeatureTraceResultSchema } from "../../../src/domain/javascript/javascriptFeatureTraceSchemas.js"; import { analyzeJavaScriptDirectory } from "../../support/cli/javascriptApplication.js"; @@ -219,7 +223,7 @@ cliTest( direction: "outgoing", }), ); - const traced = await cli.run({ + const traced = await runFileCli(cli, { arguments: ["trace-application-feature", input, "--json"], }); expect(traced.exitCode).toBe(0); @@ -421,7 +425,7 @@ cliTest( "main.js": `const { ipcMain, clipboard } = require("electron"); ipcMain.handle("nested:write", (event, value) => clipboard.writeText(value));`, }); - const output = await cli.run({ + const output = await runFileCli(cli, { arguments: ["analyze-javascript-application", root, "--json"], }); expect(output.exitCode, output.stderr).toBe(0); @@ -463,7 +467,7 @@ cliTest( direction: "outgoing", }), ); - const traced = await cli.run({ + const traced = await runFileCli(cli, { arguments: ["trace-application-feature", traceInput, "--json"], }); expect(traced.exitCode).toBe(0); @@ -491,7 +495,7 @@ cliTest( "main.js": `const { ipcMain } = require("electron"); ipcMain.on("write", (event) => event.sender.copy());`, }); - const output = await cli.run({ + const output = await runFileCli(cli, { arguments: ["analyze-javascript-application", root, "--json"], }); expect(output.exitCode).toBe(0); @@ -548,7 +552,7 @@ cliTest( "main.js": `const { ipcMain } = require("electron"); ipcMain.handle("nested:write", (event, value) => value);`, }); - const output = await cli.run({ + const output = await runFileCli(cli, { arguments: ["analyze-javascript-application", root, "--json"], }); expect(output.exitCode).toBe(0); @@ -581,7 +585,7 @@ cliTest( direction: "outgoing", }), ); - const traced = await cli.run({ + const traced = await runFileCli(cli, { arguments: ["trace-application-feature", traceInput, "--json"], }); expect(traced.exitCode).toBe(0); @@ -851,7 +855,7 @@ cliTest( e.ipcMain.on("shallow:run", event => event.sender.copy()); e.ipcMain.on("deep:run", event => event.sender.copy());`, }); - const output = await cli.run({ + const output = await runFileCli(cli, { arguments: ["analyze-javascript-application", root, "--json"], }); expect(output.exitCode).toBe(0); @@ -905,7 +909,7 @@ cliTest( "main.js": `const e=require("electron"); e.ipcMain.on("shared:run", event => event.sender.copy());`, }); - const output = await cli.run({ + const output = await runFileCli(cli, { arguments: ["analyze-javascript-application", root, "--json"], }); expect(output.exitCode, output.stderr).toBe(0); @@ -940,7 +944,7 @@ cliTest( join(root, "main.js"), 'const e=require("electron"); e.ipcMain.on("shared:run", () => {}); e.ipcMain.on("shared:run", () => {});', ); - const competing = await cli.run({ + const competing = await runFileCli(cli, { arguments: ["analyze-javascript-application", root, "--json"], }); expect(competing.exitCode, competing.stderr).toBe(0); @@ -971,7 +975,7 @@ cliTest( "main.js": `const { ipcMain } = require("electron"); ipcMain.on("empty:key", event => event.sender.copy());`, }); - const output = await cli.run({ + const output = await runFileCli(cli, { arguments: ["analyze-javascript-application", root, "--json"], }); expect(output.exitCode).toBe(0);