Files
openclaw/src/auto-reply/reply/session-reset-cleanup.test.ts
2026-04-26 03:09:15 +01:00

28 lines
1000 B
TypeScript

import { afterEach, describe, expect, it } from "vitest";
import {
enqueueSystemEvent,
peekSystemEvents,
resetSystemEventsForTest,
} from "../../infra/system-events.js";
import { clearSessionResetRuntimeState } from "./session-reset-cleanup.js";
afterEach(() => {
resetSystemEventsForTest();
});
describe("clearSessionResetRuntimeState", () => {
it("clears reset queues and drains system events for normalized keys", () => {
enqueueSystemEvent("stale alpha", { sessionKey: "alpha" });
enqueueSystemEvent("stale beta", { sessionKey: "beta" });
enqueueSystemEvent("fresh gamma", { sessionKey: "gamma" });
const result = clearSessionResetRuntimeState([" alpha ", undefined, " ", "alpha", "beta"]);
expect(result.keys).toEqual(["alpha", "beta"]);
expect(result.systemEventsCleared).toBe(2);
expect(peekSystemEvents("alpha")).toEqual([]);
expect(peekSystemEvents("beta")).toEqual([]);
expect(peekSystemEvents("gamma")).toEqual(["fresh gamma"]);
});
});