From 950831d6d1988e4c85f062f1ee2e2851232a9aa8 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Wed, 13 May 2026 03:13:47 +0100 Subject: [PATCH] test: dedupe gateway discovery mock reads --- src/gateway/server-discovery-runtime.test.ts | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/gateway/server-discovery-runtime.test.ts b/src/gateway/server-discovery-runtime.test.ts index 910f8fe375e..865c52af9c1 100644 --- a/src/gateway/server-discovery-runtime.test.ts +++ b/src/gateway/server-discovery-runtime.test.ts @@ -54,6 +54,15 @@ const makeDiscoveryService = (params: { }, }); +function latestZoneParams(): Parameters[0] { + const calls = mocks.writeWideAreaGatewayZone.mock.calls; + const call = calls[calls.length - 1]; + if (!call) { + throw new Error("Expected wide-area gateway zone to be written"); + } + return call[0]; +} + describe("startGatewayDiscovery", () => { const prevEnv = { ...process.env }; @@ -220,10 +229,7 @@ describe("startGatewayDiscovery", () => { expect(service.service.advertise).not.toHaveBeenCalled(); expect(mocks.resolveTailnetDnsHint).toHaveBeenCalledWith({ enabled: true }); - const [zoneParams] = mocks.writeWideAreaGatewayZone.mock.calls.at(-1) ?? []; - if (zoneParams === undefined) { - throw new Error("Expected wide-area gateway zone to be written"); - } + const zoneParams = latestZoneParams(); expect(zoneParams.domain).toBe("openclaw.internal."); expect(zoneParams.gatewayPort).toBe(18789); expect(zoneParams.displayName).toBe("Lab Mac (OpenClaw)"); @@ -253,10 +259,7 @@ describe("startGatewayDiscovery", () => { logDiscovery: logs, }); - const [zoneParams] = mocks.writeWideAreaGatewayZone.mock.calls.at(-1) ?? []; - if (zoneParams === undefined) { - throw new Error("Expected wide-area gateway zone to be written"); - } + const zoneParams = latestZoneParams(); expect(zoneParams.cliPath).toBeUndefined(); expect(mocks.resolveBonjourCliPath).not.toHaveBeenCalled(); });