import { beforeAll, describe, expect, it, vi } from "vitest"; const resolveGatewayLogPathsMock = vi.fn(() => ({ logDir: "C:\\tmp\\openclaw-state\\logs", stdoutPath: "C:\\tmp\\openclaw-state\\logs\\gateway.log", stderrPath: "C:\\tmp\\openclaw-state\\logs\\gateway.err.log", })); const resolveGatewaySupervisorLogPathsMock = vi.fn(() => ({ logDir: "C:\\Users\\test\\Library\\Logs\\openclaw", stdoutPath: "C:\\Users\\test\\Library\\Logs\\openclaw\\gateway.log", stderrPath: "C:\\Users\\test\\Library\\Logs\\openclaw\\gateway.err.log", })); const resolveGatewayRestartLogPathMock = vi.fn( () => "C:\\tmp\\openclaw-state\\logs\\gateway-restart.log", ); vi.mock("./restart-logs.js", () => ({ resolveGatewayLogPaths: resolveGatewayLogPathsMock, resolveGatewaySupervisorLogPaths: resolveGatewaySupervisorLogPathsMock, resolveGatewayRestartLogPath: resolveGatewayRestartLogPathMock, })); let buildPlatformRuntimeLogHints: typeof import("./runtime-hints.js").buildPlatformRuntimeLogHints; describe("buildPlatformRuntimeLogHints", () => { beforeAll(async () => { ({ buildPlatformRuntimeLogHints } = await import("./runtime-hints.js")); }); it("strips windows drive prefixes from darwin display paths", () => { expect( buildPlatformRuntimeLogHints({ platform: "darwin", systemdServiceName: "openclaw-gateway", windowsTaskName: "OpenClaw Gateway", }), ).toEqual([ "Launchd stdout (if installed): /Users/test/Library/Logs/openclaw/gateway.log", "Launchd stderr (if installed): suppressed", "Restart attempts: /tmp/openclaw-state/logs/gateway-restart.log", ]); }); });