39 lines
1.1 KiB
TypeScript
39 lines
1.1 KiB
TypeScript
import { describe, expect, it, vi } from "vitest";
|
|
|
|
import type { ClawdbotConfig } from "../../config/config.js";
|
|
import { enqueueSystemEvent, resetSystemEventsForTest } from "../../infra/system-events.js";
|
|
import { prependSystemEvents } from "./session-updates.js";
|
|
|
|
describe("prependSystemEvents", () => {
|
|
it("adds a local timestamp to queued system events", async () => {
|
|
vi.useFakeTimers();
|
|
const timestamp = new Date("2026-01-12T20:19:17");
|
|
vi.setSystemTime(timestamp);
|
|
|
|
enqueueSystemEvent("Model switched.", { sessionKey: "agent:main:main" });
|
|
|
|
const result = await prependSystemEvents({
|
|
cfg: {} as ClawdbotConfig,
|
|
sessionKey: "agent:main:main",
|
|
isMainSession: false,
|
|
isNewSession: false,
|
|
prefixedBodyBase: "User: hi",
|
|
});
|
|
|
|
const expectedTimestamp = timestamp.toLocaleString("en-US", {
|
|
hour12: false,
|
|
year: "numeric",
|
|
month: "2-digit",
|
|
day: "2-digit",
|
|
hour: "2-digit",
|
|
minute: "2-digit",
|
|
second: "2-digit",
|
|
});
|
|
|
|
expect(result).toContain(`System: [${expectedTimestamp}] Model switched.`);
|
|
|
|
resetSystemEventsForTest();
|
|
vi.useRealTimers();
|
|
});
|
|
});
|