import { beforeEach, describe, expect, it, vi } from "vitest"; const mocks = vi.hoisted(() => ({ createConfigIO: vi.fn().mockReturnValue({ configPath: "/tmp/openclaw-dev/openclaw.json", }), })); vi.mock("./io.js", () => ({ createConfigIO: mocks.createConfigIO, })); let formatConfigPath: typeof import("./logging.js").formatConfigPath; let logConfigUpdated: typeof import("./logging.js").logConfigUpdated; beforeEach(async () => { vi.resetModules(); ({ formatConfigPath, logConfigUpdated } = await import("./logging.js")); }); describe("config logging", () => { it("formats the live config path when no explicit path is provided", () => { expect(formatConfigPath()).toBe("/tmp/openclaw-dev/openclaw.json"); }); it("logs the live config path when no explicit path is provided", () => { const runtime = { log: vi.fn() }; logConfigUpdated(runtime as never); expect(runtime.log).toHaveBeenCalledWith("Updated /tmp/openclaw-dev/openclaw.json"); }); });