From 63b8013b44fa50f6f3a448582cd2c072405cb5a4 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Sat, 9 May 2026 08:22:04 +0100 Subject: [PATCH] test: tighten realtime voice talkback assertions --- src/talk/agent-talkback-runtime.test.ts | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/talk/agent-talkback-runtime.test.ts b/src/talk/agent-talkback-runtime.test.ts index 039928310df..0cd39765fd0 100644 --- a/src/talk/agent-talkback-runtime.test.ts +++ b/src/talk/agent-talkback-runtime.test.ts @@ -8,9 +8,16 @@ function makeLogger() { }; } -function expectConsultRequest(call: unknown, expected: Record) { - expect(call).toMatchObject(expected); - expect((call as { signal?: unknown } | undefined)?.signal).toBeInstanceOf(AbortSignal); +function expectConsultRequest( + call: unknown, + expected: { metadata: unknown; question: string; responseStyle: string }, +) { + if (!call || typeof call !== "object") { + throw new Error("Expected talkback consult request object"); + } + const { signal, ...request } = call as { signal?: unknown }; + expect(signal).toBeInstanceOf(AbortSignal); + expect(request).toStrictEqual(expected); } describe("realtime voice agent talkback queue", () => { @@ -35,6 +42,7 @@ describe("realtime voice agent talkback queue", () => { await vi.advanceTimersByTimeAsync(100); expectConsultRequest(consult.mock.calls[0]?.[0], { + metadata: undefined, question: "first\nsecond", responseStyle: "brief", }); @@ -76,10 +84,12 @@ describe("realtime voice agent talkback queue", () => { await vi.runAllTimersAsync(); expectConsultRequest(consult.mock.calls[0]?.[0], { + metadata: undefined, question: "first", responseStyle: "brief", }); expectConsultRequest(consult.mock.calls[1]?.[0], { + metadata: undefined, question: "ignored\nsecond", responseStyle: "brief", }); @@ -125,13 +135,13 @@ describe("realtime voice agent talkback queue", () => { await vi.runAllTimersAsync(); expectConsultRequest(consult.mock.calls[1]?.[0], { - question: "owner", metadata: ownerMetadata, + question: "owner", responseStyle: "brief", }); expectConsultRequest(consult.mock.calls[2]?.[0], { - question: "guest", metadata: guestMetadata, + question: "guest", responseStyle: "brief", }); expect(deliver).toHaveBeenCalledWith("owner-answer");