From 9f2fda6079e2f73f7c24692fd0c92f63e949851b Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Fri, 8 May 2026 20:33:46 +0100 Subject: [PATCH] test: tighten core ui helper assertions --- .../provider-registry.test.ts | 1 - src/media-understanding/shared.test.ts | 1 - test/test-env.test.ts | 46 ++++++++++++------- ui/src/ui/views/debug.test.ts | 1 - ui/src/ui/views/usage-render-details.test.ts | 9 ++-- 5 files changed, 33 insertions(+), 25 deletions(-) diff --git a/src/media-understanding/provider-registry.test.ts b/src/media-understanding/provider-registry.test.ts index 167dc32d08f..65961832d65 100644 --- a/src/media-understanding/provider-registry.test.ts +++ b/src/media-understanding/provider-registry.test.ts @@ -23,7 +23,6 @@ function requireMediaProvider( providerId: string, ): MediaUnderstandingProvider { const provider = getMediaUnderstandingProvider(providerId, registry); - expect(provider).toBeDefined(); if (!provider) { throw new Error(`expected media-understanding provider ${providerId}`); } diff --git a/src/media-understanding/shared.test.ts b/src/media-understanding/shared.test.ts index a5bf0cc30b7..a19023b69fb 100644 --- a/src/media-understanding/shared.test.ts +++ b/src/media-understanding/shared.test.ts @@ -48,7 +48,6 @@ afterEach(() => { function getFirstGuardedFetchCall() { const call = fetchWithSsrFGuardMock.mock.calls[0]?.[0]; - expect(call).toBeTruthy(); if (!call) { throw new Error("Expected fetchWithSsrFGuard to be called"); } diff --git a/test/test-env.test.ts b/test/test-env.test.ts index 7ce7a8a3653..704690d7b58 100644 --- a/test/test-env.test.ts +++ b/test/test-env.test.ts @@ -34,6 +34,32 @@ function createTempHome(): string { return makeTempDir(tempDirs, "openclaw-test-env-real-home-"); } +function requireRecord( + value: Record | undefined, + label: string, +): Record { + if (!value) { + throw new Error(`expected copied ${label} config`); + } + return value; +} + +function requireTelegramStreaming( + value: + | { + mode?: string; + chunkMode?: string; + block?: { enabled?: boolean }; + preview?: { chunk?: { minChars?: number } }; + } + | undefined, +) { + if (!value) { + throw new Error("expected copied telegram streaming config"); + } + return value; +} + afterEach(() => { while (cleanupFns.length > 0) { cleanupFns.pop()?.(); @@ -141,29 +167,17 @@ describe("installTestEnv", () => { }; }; const providers = copiedConfig.models?.providers; - expect(providers).toBeDefined(); - if (!providers) { - throw new Error("expected copied model providers config"); - } + requireRecord(providers, "model providers"); expect(providers.custom).toEqual({ baseUrl: "https://example.test/v1" }); - const agentDefaults = copiedConfig.agents?.defaults; - const agentConfig = copiedConfig.agents?.list?.[0]; - expect(agentDefaults).toBeDefined(); - expect(agentConfig).toBeDefined(); - if (!agentDefaults || !agentConfig) { - throw new Error("expected copied agent config"); - } + const agentDefaults = requireRecord(copiedConfig.agents?.defaults, "agent defaults"); + const agentConfig = requireRecord(copiedConfig.agents?.list?.[0], "agent"); expect(agentDefaults.workspace).toBeUndefined(); expect(agentDefaults.agentDir).toBeUndefined(); expect(agentConfig.workspace).toBeUndefined(); expect(agentConfig.agentDir).toBeUndefined(); - const telegramStreaming = copiedConfig.channels?.telegram?.streaming; - expect(telegramStreaming).toBeDefined(); - if (!telegramStreaming) { - throw new Error("expected copied telegram streaming config"); - } + const telegramStreaming = requireTelegramStreaming(copiedConfig.channels?.telegram?.streaming); expect(telegramStreaming).toEqual({ mode: "block", chunkMode: "newline", diff --git a/ui/src/ui/views/debug.test.ts b/ui/src/ui/views/debug.test.ts index af731c661cd..b7766c773ba 100644 --- a/ui/src/ui/views/debug.test.ts +++ b/ui/src/ui/views/debug.test.ts @@ -58,7 +58,6 @@ describe("renderDebug", () => { ); const command = container.querySelector(".callout .mono"); - expect(command).toBeTruthy(); if (!command) { throw new Error("expected debug security audit command"); } diff --git a/ui/src/ui/views/usage-render-details.test.ts b/ui/src/ui/views/usage-render-details.test.ts index c24fec16071..a37a4720047 100644 --- a/ui/src/ui/views/usage-render-details.test.ts +++ b/ui/src/ui/views/usage-render-details.test.ts @@ -69,14 +69,11 @@ describe("computeFilteredUsage", () => { makePoint({ timestamp: 3000, totalTokens: 300, cost: 0.3 }), ]; const result = computeFilteredUsage(baseUsage, points, 1000, 2000); - expect(result).toMatchObject({ + const filtered = expectFilteredUsage(result); + expect(filtered).toMatchObject({ totalTokens: 300, // 100 + 200 }); - expect(result).toBeDefined(); - if (!result) { - throw new Error("expected filtered usage aggregate"); - } - expect(result.totalCost).toBeCloseTo(0.3); // 0.1 + 0.2 + expect(filtered.totalCost).toBeCloseTo(0.3); // 0.1 + 0.2 }); it("handles reversed range (end < start)", () => {