























@@ -26,13 +26,22 @@ function requireRecord(value: unknown, label: string): Record<string, unknown> {
26262727function spawnCall(mock: unknown, callIndex: number) {
2828const calls = (mock as { mock?: { calls?: Array<Array<unknown>> } }).mock?.calls ?? [];
29-const call = calls.at(callIndex);
29+const call = calls[callIndex];
3030if (!call) {
3131throw new Error(`Expected spawn call ${callIndex + 1}`);
3232}
3333return call;
3434}
353536+function spawnShellCommand(mock: unknown, callIndex: number): string {
37+const call = spawnCall(mock, callIndex);
38+const args = call[1];
39+if (!Array.isArray(args) || typeof args[6] !== "string") {
40+throw new Error(`Expected spawn call ${callIndex + 1} shell command`);
41+}
42+return args[6];
43+}
44+3645function expectSpawn(mock: unknown, callIndex: number, command: string, args: Array<unknown>) {
3746const call = spawnCall(mock, callIndex);
3847expect(call[0]).toBe(command);
@@ -110,7 +119,7 @@ describe("gateway-watch tmux wrapper", () => {
110119});
111120112121expect(code).toBe(0);
113-const command = spawnSync.mock.calls.at(1)?.[1]?.[6] as string;
122+const command = spawnShellCommand(spawnSync, 1);
114123expect(command).toContain("'OPENCLAW_RUN_NODE_CPU_PROF_DIR=.artifacts/gateway-watch-profiles'");
115124expect(command).toContain("'OPENCLAW_TRACE_SYNC_IO=0'");
116125expect(command).not.toContain("--benchmark");
@@ -142,7 +151,7 @@ describe("gateway-watch tmux wrapper", () => {
142151});
143152144153expect(code).toBe(0);
145-const command = spawnSync.mock.calls.at(1)?.[1]?.[6] as string;
154+const command = spawnShellCommand(spawnSync, 1);
146155expect(command).toContain("'OPENCLAW_TRACE_SYNC_IO=1'");
147156expect(command).toContain(
148157"'OPENCLAW_RUN_NODE_OUTPUT_LOG=.artifacts/gateway-watch-profiles/gateway-watch-output.log'",
@@ -174,7 +183,7 @@ describe("gateway-watch tmux wrapper", () => {
174183});
175184176185expect(code).toBe(0);
177-const command = spawnSync.mock.calls.at(1)?.[1]?.[6] as string;
186+const command = spawnShellCommand(spawnSync, 1);
178187expect(command).toContain("'OPENCLAW_RUN_NODE_CPU_PROF_DIR=.artifacts/gateway-watch-profiles'");
179188expect(command).not.toContain("--benchmark-no-force");
180189expect(command).toContain("'gateway'");
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。