From 2f73f423c7c1e1b2802bd59099fc0a74612efbee Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Sat, 9 May 2026 15:03:07 +0100 Subject: [PATCH] test: tighten command session assertions --- src/agents/command/cli-compaction.test.ts | 41 +++++++++++++---------- src/agents/command/session-store.test.ts | 26 ++++++-------- 2 files changed, 35 insertions(+), 32 deletions(-) diff --git a/src/agents/command/cli-compaction.test.ts b/src/agents/command/cli-compaction.test.ts index c83c5f64f1b..b6f6c4c8d0d 100644 --- a/src/agents/command/cli-compaction.test.ts +++ b/src/agents/command/cli-compaction.test.ts @@ -145,23 +145,30 @@ describe("runCliTurnCompactionLifecycle", () => { }); expect(compactCalls).toHaveLength(1); - expect(compactCalls[0]).toMatchObject({ - sessionId, - sessionKey, - sessionFile, - tokenBudget: 1_000, - currentTokenCount: 950, - force: true, - compactionTarget: "budget", - }); - expect(maintenance).toHaveBeenCalledWith( - expect.objectContaining({ - reason: "compaction", - sessionId, - sessionKey, - sessionFile, - }), - ); + const compactCall = compactCalls[0]; + expect(compactCall?.sessionId).toBe(sessionId); + expect(compactCall?.sessionKey).toBe(sessionKey); + expect(compactCall?.sessionFile).toBe(sessionFile); + expect(compactCall?.tokenBudget).toBe(1_000); + expect(compactCall?.currentTokenCount).toBe(950); + expect(compactCall?.force).toBe(true); + expect(compactCall?.compactionTarget).toBe("budget"); + expect(maintenance).toHaveBeenCalledTimes(1); + const maintenanceCalls = maintenance.mock.calls as unknown as Array< + [ + { + reason?: string; + sessionId?: string; + sessionKey?: string; + sessionFile?: string; + }, + ] + >; + const maintenanceCall = maintenanceCalls[0]?.[0]; + expect(maintenanceCall?.reason).toBe("compaction"); + expect(maintenanceCall?.sessionId).toBe(sessionId); + expect(maintenanceCall?.sessionKey).toBe(sessionKey); + expect(maintenanceCall?.sessionFile).toBe(sessionFile); expect(updatedEntry?.compactionCount).toBe(1); expect(updatedEntry?.cliSessionBindings?.["claude-cli"]).toBeUndefined(); expect(updatedEntry?.cliSessionIds?.["claude-cli"]).toBeUndefined(); diff --git a/src/agents/command/session-store.test.ts b/src/agents/command/session-store.test.ts index 7d93eaf4baf..5df61d201dd 100644 --- a/src/agents/command/session-store.test.ts +++ b/src/agents/command/session-store.test.ts @@ -383,13 +383,11 @@ describe("updateSessionStoreAfterAgentRun", () => { }); const persisted = loadSessionStore(storePath, { skipCache: true })[sessionKey]; - expect(persisted?.acp).toMatchObject({ - backend: "acpx", - agent: "codex", - runtimeSessionName: "runtime-1", - mode: "persistent", - state: "idle", - }); + expect(persisted?.acp?.backend).toBe("acpx"); + expect(persisted?.acp?.agent).toBe("codex"); + expect(persisted?.acp?.runtimeSessionName).toBe("runtime-1"); + expect(persisted?.acp?.mode).toBe("persistent"); + expect(persisted?.acp?.state).toBe("idle"); expect(staleInMemory[sessionKey]?.acp).toEqual(persisted?.acp); }); }); @@ -439,14 +437,12 @@ describe("updateSessionStoreAfterAgentRun", () => { }); const persisted = loadSessionStore(storePath, { skipCache: true })[sessionKey]; - expect(persisted).toMatchObject({ - status: "done", - startedAt: 1_000, - endedAt: 1_900, - runtimeMs: 900, - modelProvider: "openai", - model: "gpt-5.4", - }); + expect(persisted?.status).toBe("done"); + expect(persisted?.startedAt).toBe(1_000); + expect(persisted?.endedAt).toBe(1_900); + expect(persisted?.runtimeMs).toBe(900); + expect(persisted?.modelProvider).toBe("openai"); + expect(persisted?.model).toBe("gpt-5.4"); expect(staleInMemory[sessionKey]?.status).toBe("done"); }); });