test: guard google meet mock calls

This commit is contained in:
Peter Steinberger
2026-05-12 11:56:05 +01:00
parent 7625a8b6d6
commit 636636ca92

View File

@@ -1395,7 +1395,7 @@ describe("google-meet plugin", () => {
await tool.execute("id", { action: "leave", sessionId: joined.details.session.id });
const [endParams] = voiceCallMocks.endMeetVoiceCallGatewayCall.mock.calls[0] as unknown as [
const [endParams] = voiceCallMocks.endMeetVoiceCallGatewayCall.mock.calls.at(0) as unknown as [
Record<string, unknown>,
];
expect(requireRecord(endParams.config, "voice-call end config").defaultTransport).toBe(
@@ -1455,9 +1455,9 @@ describe("google-meet plugin", () => {
});
expect(requireRecord(spoken.details, "spoken details").spoken).toBe(true);
const [speakParams] = voiceCallMocks.speakMeetViaVoiceCallGateway.mock.calls[0] as unknown as [
Record<string, unknown>,
];
const [speakParams] = voiceCallMocks.speakMeetViaVoiceCallGateway.mock.calls.at(
0,
) as unknown as [Record<string, unknown>];
expect(requireRecord(speakParams.config, "voice-call speak config").defaultTransport).toBe(
"twilio",
);
@@ -2173,7 +2173,7 @@ describe("google-meet plugin", () => {
respond,
});
expect(respond.mock.calls[0]?.[0]).toBe(true);
expect(respond.mock.calls.at(0)?.[0]).toBe(true);
expect(runCommandWithTimeout).not.toHaveBeenCalled();
const openCall = callGatewayFromCli.mock.calls.find(
([, , request]) => requireRecord(request, "browser request").path === "/tabs/open",
@@ -2194,7 +2194,7 @@ describe("google-meet plugin", () => {
([, , request]) => (request as { path?: string }).path === "/permissions/grant",
),
).toBe(false);
const payload = requireRecord(respond.mock.calls[0]?.[1], "join response payload");
const payload = requireRecord(respond.mock.calls.at(0)?.[1], "join response payload");
const session = requireRecord(payload.session, "join session");
const chrome = requireRecord(session.chrome, "join chrome session");
const health = requireRecord(chrome.health, "join chrome health");
@@ -2253,7 +2253,7 @@ describe("google-meet plugin", () => {
respond,
});
expect(respond.mock.calls[0]?.[0]).toBe(true);
expect(respond.mock.calls.at(0)?.[0]).toBe(true);
const grantCall = callGatewayFromCli.mock.calls.find(
([, , request]) => requireRecord(request, "browser request").path === "/permissions/grant",
);
@@ -2349,7 +2349,7 @@ describe("google-meet plugin", () => {
respond,
});
expect(respond.mock.calls[0]?.[0]).toBe(true);
expect(respond.mock.calls.at(0)?.[0]).toBe(true);
expect(events.indexOf("browser:/act")).toBeGreaterThan(-1);
expect(events.indexOf("command:bridge start")).toBeGreaterThan(
events.indexOf("browser:/act"),
@@ -2435,7 +2435,7 @@ describe("google-meet plugin", () => {
respond,
});
expect(respond.mock.calls[0]?.[0]).toBe(true);
expect(respond.mock.calls.at(0)?.[0]).toBe(true);
expect(events).toContain("browser:/act");
expect(events).not.toContain("command:bridge start");
} finally {
@@ -2874,7 +2874,7 @@ describe("google-meet plugin", () => {
respond,
});
const payload = requireRecord(respond.mock.calls[0]?.[1], "join response payload");
const payload = requireRecord(respond.mock.calls.at(0)?.[1], "join response payload");
expect(payload.spoken).toBe(false);
const session = requireRecord(payload.session, "join session");
const chrome = requireRecord(session.chrome, "join chrome session");
@@ -2923,7 +2923,7 @@ describe("google-meet plugin", () => {
await vi.advanceTimersByTimeAsync(2_000);
await run;
const payload = requireRecord(respond.mock.calls[0]?.[1], "join response payload");
const payload = requireRecord(respond.mock.calls.at(0)?.[1], "join response payload");
expect(payload.spoken).toBe(false);
const session = requireRecord(payload.session, "join session");
const chrome = requireRecord(session.chrome, "join chrome session");
@@ -2962,8 +2962,8 @@ describe("google-meet plugin", () => {
respond,
});
expect(respond.mock.calls[0]?.[0]).toBe(true);
expect(nodesList.mock.calls[0]).toStrictEqual([]);
expect(respond.mock.calls.at(0)?.[0]).toBe(true);
expect(nodesList.mock.calls.at(0)).toStrictEqual([]);
const stopCall = nodesInvoke.mock.calls.find(([rawCall]) => {
const call = requireRecord(rawCall, "node invoke");
const params = requireRecord(call.params, "node invoke params");
@@ -3018,7 +3018,7 @@ describe("google-meet plugin", () => {
expect(startParams.mode).toBe("transcribe");
expect(startParams.launch).toBe(false);
expect(startParams.joinTimeoutMs).toBe(30000);
const payload = requireRecord(respond.mock.calls[0]?.[1], "join response payload");
const payload = requireRecord(respond.mock.calls.at(0)?.[1], "join response payload");
const session = requireRecord(payload.session, "join session");
expect(session.transport).toBe("chrome-node");
const chrome = requireRecord(session.chrome, "join chrome session");
@@ -3062,7 +3062,7 @@ describe("google-meet plugin", () => {
expect(
nodesInvoke.mock.calls.filter(([call]) => call.command === "googlemeet.chrome"),
).toHaveLength(2);
const payload = requireRecord(second.mock.calls[0]?.[1], "second join response payload");
const payload = requireRecord(second.mock.calls.at(0)?.[1], "second join response payload");
const session = requireRecord(payload.session, "second join session");
const chrome = requireRecord(session.chrome, "second join chrome session");
const health = requireRecord(chrome.health, "second join chrome health");
@@ -3107,7 +3107,7 @@ describe("google-meet plugin", () => {
expect(
nodesInvoke.mock.calls.filter(([call]) => call.command === "googlemeet.chrome"),
).toHaveLength(2);
const payload = requireRecord(second.mock.calls[0]?.[1], "second join response payload");
const payload = requireRecord(second.mock.calls.at(0)?.[1], "second join response payload");
const session = requireRecord(payload.session, "second join session");
expect(session.notes).toContain("Reused existing active Meet session.");
});
@@ -3476,7 +3476,7 @@ describe("google-meet plugin", () => {
params: { url: "https://meet.google.com/abc-defg-hij" },
respond: joinRespond,
});
const joinPayload = requireRecord(joinRespond.mock.calls[0]?.[1], "join response payload");
const joinPayload = requireRecord(joinRespond.mock.calls.at(0)?.[1], "join response payload");
const joinSession = requireRecord(joinPayload.session, "join session");
const joinChrome = requireRecord(joinSession.chrome, "join chrome session");
expect(requireRecord(joinChrome.health, "join chrome health").inCall).toBe(false);
@@ -3489,7 +3489,7 @@ describe("google-meet plugin", () => {
await status?.({ params: {}, respond: statusRespond });
const statusPayload = requireRecord(
statusRespond.mock.calls[0]?.[1],
statusRespond.mock.calls.at(0)?.[1],
"status response payload",
);
const sessions = statusPayload.sessions as unknown[];
@@ -3595,7 +3595,7 @@ describe("google-meet plugin", () => {
});
expect(join).toHaveBeenCalledTimes(1);
const joinArgs = requireRecord(join.mock.calls[0]?.[0], "test speech join args");
const joinArgs = requireRecord(join.mock.calls.at(0)?.[0], "test speech join args");
expect(joinArgs.message).toBe("Say exactly: hello.");
expect(joinArgs.mode).toBe("agent");
expect(speak).not.toHaveBeenCalled();
@@ -3643,7 +3643,7 @@ describe("google-meet plugin", () => {
});
expect(join).toHaveBeenCalledTimes(1);
const joinArgs = requireRecord(join.mock.calls[0]?.[0], "test speech join args");
const joinArgs = requireRecord(join.mock.calls.at(0)?.[0], "test speech join args");
expect(joinArgs.message).toBe("Say exactly: hello.");
expect(joinArgs.mode).toBe("bidi");
});
@@ -3965,7 +3965,7 @@ describe("google-meet plugin", () => {
respond,
});
expect(respond.mock.calls[0]?.[0]).toBe(true);
expect(respond.mock.calls.at(0)?.[0]).toBe(true);
expect(runCommandWithTimeout).toHaveBeenNthCalledWith(2, ["bridge", "status"], {
timeoutMs: 30000,
});
@@ -4092,7 +4092,7 @@ describe("google-meet plugin", () => {
await vi.advanceTimersByTimeAsync(GOOGLE_MEET_AGENT_TRANSCRIPT_DEBOUNCE_MS);
expect(sendAudio).toHaveBeenCalledTimes(1);
const audioChunk = sendAudio.mock.calls[0]?.[0];
const audioChunk = sendAudio.mock.calls.at(0)?.[0];
expect(Buffer.isBuffer(audioChunk)).toBe(true);
expect(audioChunk.byteLength).toBeGreaterThan(0);
expect(runtime.agent.runEmbeddedPiAgent).toHaveBeenCalled();
@@ -4277,7 +4277,7 @@ describe("google-meet plugin", () => {
args: { question: "What should I say about launch timing?" },
});
expect(bridge.submitToolResult).toHaveBeenCalled();
const firstToolResultCall = bridge.submitToolResult.mock.calls[0];
const firstToolResultCall = bridge.submitToolResult.mock.calls.at(0);
expect(firstToolResultCall?.[0]).toBe("tool-call-1");
expect(firstToolResultCall?.[2]).toStrictEqual({ willContinue: true });
const progressPayload = requireRecord(firstToolResultCall?.[1], "tool progress payload");
@@ -4362,7 +4362,7 @@ describe("google-meet plugin", () => {
}
expect(runtime.agent.runEmbeddedPiAgent).toHaveBeenCalledTimes(1);
const agentRequest = requireRecord(
runtime.agent.runEmbeddedPiAgent.mock.calls[0]?.[0],
runtime.agent.runEmbeddedPiAgent.mock.calls.at(0)?.[0],
"embedded agent request",
);
expect(agentRequest.messageProvider).toBe("google-meet");
@@ -4495,7 +4495,7 @@ describe("google-meet plugin", () => {
"Are we still on track?\\nPlease include launch blockers.",
);
expect(sendUserMessage).toHaveBeenCalledTimes(1);
const sentUserMessage = sendUserMessage.mock.calls[0]?.[0];
const sentUserMessage = sendUserMessage.mock.calls.at(0)?.[0];
expect(typeof sentUserMessage).toBe("string");
expect(sentUserMessage).toContain(JSON.stringify("The launch is still on track."));
expect(sessionStore).toHaveProperty("agent:jay:subagent:google-meet:meet-1");
@@ -4767,7 +4767,7 @@ describe("google-meet plugin", () => {
args: { question: "What should I say?" },
});
expect(bridge.submitToolResult).toHaveBeenCalled();
const firstToolResultCall = bridge.submitToolResult.mock.calls[0];
const firstToolResultCall = bridge.submitToolResult.mock.calls.at(0);
expect(firstToolResultCall?.[0]).toBe("tool-call-1");
expect(firstToolResultCall?.[2]).toStrictEqual({ willContinue: true });
const progressPayload = requireRecord(firstToolResultCall?.[1], "node tool progress payload");