From a57691cdcbaa3a95faecf45878bd325219c4838e Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Mon, 11 May 2026 13:15:40 +0100 Subject: [PATCH] test: tighten gateway websocket assertions --- .../server/ws-connection.startup.test.ts | 39 ++++++++++++------- src/gateway/server/ws-connection.test.ts | 2 +- 2 files changed, 27 insertions(+), 14 deletions(-) diff --git a/src/gateway/server/ws-connection.startup.test.ts b/src/gateway/server/ws-connection.startup.test.ts index 5d0d061a1442..9bd161fc55d6 100644 --- a/src/gateway/server/ws-connection.startup.test.ts +++ b/src/gateway/server/ws-connection.startup.test.ts @@ -107,19 +107,32 @@ describe("attachGatewayWsConnectionHandler startup readiness", () => { ).toBe(true); }); - expect(sent).toContainEqual( - expect.objectContaining({ - type: "res", - id: "connect-1", - ok: false, - error: expect.objectContaining({ - code: "UNAVAILABLE", - retryable: true, - retryAfterMs: 500, - details: { reason: GATEWAY_STARTUP_UNAVAILABLE_REASON }, - }), - }), - ); + const response = sent.find( + (frame) => + typeof frame === "object" && + frame !== null && + (frame as { type?: unknown; id?: unknown }).type === "res" && + (frame as { id?: unknown }).id === "connect-1", + ) as + | { + type?: unknown; + id?: unknown; + ok?: unknown; + error?: { + code?: unknown; + retryable?: unknown; + retryAfterMs?: unknown; + details?: unknown; + }; + } + | undefined; + expect(response?.type).toBe("res"); + expect(response?.id).toBe("connect-1"); + expect(response?.ok).toBe(false); + expect(response?.error?.code).toBe("UNAVAILABLE"); + expect(response?.error?.retryable).toBe(true); + expect(response?.error?.retryAfterMs).toBe(500); + expect(response?.error?.details).toEqual({ reason: GATEWAY_STARTUP_UNAVAILABLE_REASON }); await vi.waitFor(() => { expect(socket.close).toHaveBeenCalledWith(1013, "gateway starting"); }); diff --git a/src/gateway/server/ws-connection.test.ts b/src/gateway/server/ws-connection.test.ts index fc3f7af37811..f511680648bd 100644 --- a/src/gateway/server/ws-connection.test.ts +++ b/src/gateway/server/ws-connection.test.ts @@ -158,7 +158,7 @@ describe("attachGatewayWsConnectionHandler", () => { currentAuth = createResolvedAuth("token-after"); - expect(handlerParams.getResolvedAuth()).toMatchObject({ token: "token-after" }); + expect(handlerParams.getResolvedAuth().token).toBe("token-after"); expect(handlerParams.getRequiredSharedGatewaySessionGeneration?.()).toBe( resolveSharedGatewaySessionGeneration(currentAuth), );