From ee40b9bbbd4646ce7e479218a2bc54866de4794b Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Tue, 12 May 2026 08:58:04 +0100 Subject: [PATCH] test: guard embedded subscribe mock calls --- src/agents/pi-embedded-runner/run/llm-idle-timeout.test.ts | 2 +- src/agents/pi-embedded-subscribe.handlers.tools.test.ts | 2 +- ...ssion.includes-canvas-action-metadata-tool-summaries.test.ts | 2 +- ...-session.reopens-fenced-blocks-splitting-inside-them.test.ts | 2 +- ...cribe-embedded-pi-session.subscribeembeddedpisession.test.ts | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/agents/pi-embedded-runner/run/llm-idle-timeout.test.ts b/src/agents/pi-embedded-runner/run/llm-idle-timeout.test.ts index a1f9c92269d..1ad4c05b489 100644 --- a/src/agents/pi-embedded-runner/run/llm-idle-timeout.test.ts +++ b/src/agents/pi-embedded-runner/run/llm-idle-timeout.test.ts @@ -438,7 +438,7 @@ describe("streamWithIdleTimeout", () => { expect(error).toBeInstanceOf(Error); expect((error as Error).message).toMatch(/LLM idle timeout/); expect(onIdleTimeout).toHaveBeenCalledTimes(1); - const [timeoutError] = onIdleTimeout.mock.calls[0] ?? []; + const [timeoutError] = onIdleTimeout.mock.calls.at(0) ?? []; expect(timeoutError).toBeInstanceOf(Error); expect((timeoutError as Error).message).toMatch(/LLM idle timeout/); }); diff --git a/src/agents/pi-embedded-subscribe.handlers.tools.test.ts b/src/agents/pi-embedded-subscribe.handlers.tools.test.ts index eea91989636..f7980835722 100644 --- a/src/agents/pi-embedded-subscribe.handlers.tools.test.ts +++ b/src/agents/pi-embedded-subscribe.handlers.tools.test.ts @@ -179,7 +179,7 @@ describe("handleToolExecutionStart read path checks", () => { await handleToolExecutionStart(ctx, evt); expect(warn).toHaveBeenCalledTimes(1); - expect(String(warn.mock.calls[0]?.[0] ?? "")).toContain("read tool called without path"); + expect(String(warn.mock.calls.at(0)?.[0] ?? "")).toContain("read tool called without path"); }); it("awaits onBlockReplyFlush before continuing tool start processing", async () => { diff --git a/src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.includes-canvas-action-metadata-tool-summaries.test.ts b/src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.includes-canvas-action-metadata-tool-summaries.test.ts index 20ec5b929b3..8ec6c711032 100644 --- a/src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.includes-canvas-action-metadata-tool-summaries.test.ts +++ b/src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.includes-canvas-action-metadata-tool-summaries.test.ts @@ -22,7 +22,7 @@ describe("subscribeEmbeddedPiSession", () => { await Promise.resolve(); expect(onToolResult).toHaveBeenCalledTimes(1); - const payload = onToolResult.mock.calls[0][0]; + const payload = onToolResult.mock.calls.at(0)?.[0]; expect(payload.text).toContain("🖼️"); expect(payload.text).toContain("Canvas"); expect(payload.text).toContain("/tmp/a2ui.jsonl"); diff --git a/src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.reopens-fenced-blocks-splitting-inside-them.test.ts b/src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.reopens-fenced-blocks-splitting-inside-them.test.ts index 06b8e3e04e0..9f77f8f456a 100644 --- a/src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.reopens-fenced-blocks-splitting-inside-them.test.ts +++ b/src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.reopens-fenced-blocks-splitting-inside-them.test.ts @@ -34,6 +34,6 @@ describe("subscribeEmbeddedPiSession", () => { emitAssistantTextDeltaAndEnd({ emit, text }); expect(onBlockReply).toHaveBeenCalledTimes(3); - expect(onBlockReply.mock.calls[1][0].text).toBe("~~~sh\nline1\nline2\n~~~"); + expect(onBlockReply.mock.calls.at(1)?.[0].text).toBe("~~~sh\nline1\nline2\n~~~"); }); }); diff --git a/src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.subscribeembeddedpisession.test.ts b/src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.subscribeembeddedpisession.test.ts index 5f2bde7e0ea..7161e7c79f2 100644 --- a/src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.subscribeembeddedpisession.test.ts +++ b/src/agents/pi-embedded-subscribe.subscribe-embedded-pi-session.subscribeembeddedpisession.test.ts @@ -249,7 +249,7 @@ describe("subscribeEmbeddedPiSession", () => { await flushBlockReplyCallbacks(); expect(onBlockReply).toHaveBeenCalledTimes(1); - expect(onBlockReply.mock.calls[0][0].text).toBe("Final answer"); + expect(onBlockReply.mock.calls.at(0)?.[0].text).toBe("Final answer"); const streamTexts = onReasoningStream.mock.calls .map((call) => call[0]?.text)