


















@@ -214,6 +214,17 @@ function callProcessMessage(overrides: { cfg?: unknown } = {}) {
214214});
215215}
216216217+function mockCallArg(mockFn: ReturnType<typeof vi.fn>, label: string, callIndex = 0, argIndex = 0) {
218+const call = mockFn.mock.calls.at(callIndex);
219+if (!call) {
220+throw new Error(`Expected ${label} call ${callIndex}`);
221+}
222+if (!(argIndex in call)) {
223+throw new Error(`Expected ${label} call ${callIndex} argument ${argIndex}`);
224+}
225+return call[argIndex];
226+}
227+217228// ---------------------------------------------------------------------------
218229// Tests
219230// ---------------------------------------------------------------------------
@@ -244,7 +255,13 @@ describe("processMessage group system prompt wiring", () => {
244255245256await callProcessMessage();
246257247-expect(buildContextMock.mock.calls[0][0].groupSystemPrompt).toBe("from config");
258+expect(
259+(
260+mockCallArg(buildContextMock, "buildWhatsAppInboundContext") as {
261+groupSystemPrompt?: string;
262+}
263+).groupSystemPrompt,
264+).toBe("from config");
248265});
249266250267it("fires message_received hooks with canonical WhatsApp correlation fields", async () => {
@@ -324,7 +341,10 @@ describe("processMessage group system prompt wiring", () => {
324341},
325342);
326343expect(internalReceived).toHaveBeenCalledTimes(1);
327-const [internalEvent] = internalReceived.mock.calls[0] ?? [];
344+const internalEvent = mockCallArg(internalReceived, "internal message received") as Record<
345+string,
346+unknown
347+>;
328348expect(internalEvent.timestamp).toBeInstanceOf(Date);
329349expect({ ...internalEvent, timestamp: undefined }).toEqual({
330350type: "message",
@@ -382,7 +402,9 @@ describe("processMessage group system prompt wiring", () => {
382402await callProcessMessage();
383403384404expect(trackBackgroundTaskMock).toHaveBeenCalledTimes(1);
385-expect(trackBackgroundTaskMock.mock.calls[0]?.[0]).toBeInstanceOf(Set);
386-expect(trackBackgroundTaskMock.mock.calls[0]?.[1]).toBeInstanceOf(Promise);
405+expect(mockCallArg(trackBackgroundTaskMock, "trackBackgroundTask")).toBeInstanceOf(Set);
406+expect(mockCallArg(trackBackgroundTaskMock, "trackBackgroundTask", 0, 1)).toBeInstanceOf(
407+Promise,
408+);
387409});
388410});
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。