Files
Moltbot/src/daemon/runtime-hints.test.ts
2026-03-07 21:09:26 +00:00

72 lines
2.4 KiB
TypeScript

import { describe, expect, it } from "vitest";
import { buildPlatformRuntimeLogHints, buildPlatformServiceStartHints } from "./runtime-hints.js";
describe("buildPlatformRuntimeLogHints", () => {
it("renders launchd log hints on darwin", () => {
expect(
buildPlatformRuntimeLogHints({
platform: "darwin",
env: {
OPENCLAW_STATE_DIR: "/tmp/openclaw-state",
OPENCLAW_LOG_PREFIX: "gateway",
},
systemdServiceName: "openclaw-gateway",
windowsTaskName: "OpenClaw Gateway",
}),
).toEqual([
"Launchd stdout (if installed): /tmp/openclaw-state/logs/gateway.log",
"Launchd stderr (if installed): /tmp/openclaw-state/logs/gateway.err.log",
]);
});
it("renders systemd and windows hints by platform", () => {
expect(
buildPlatformRuntimeLogHints({
platform: "linux",
systemdServiceName: "openclaw-gateway",
windowsTaskName: "OpenClaw Gateway",
}),
).toEqual(["Logs: journalctl --user -u openclaw-gateway.service -n 200 --no-pager"]);
expect(
buildPlatformRuntimeLogHints({
platform: "win32",
systemdServiceName: "openclaw-gateway",
windowsTaskName: "OpenClaw Gateway",
}),
).toEqual(['Logs: schtasks /Query /TN "OpenClaw Gateway" /V /FO LIST']);
});
});
describe("buildPlatformServiceStartHints", () => {
it("builds platform-specific service start hints", () => {
expect(
buildPlatformServiceStartHints({
platform: "darwin",
installCommand: "openclaw gateway install",
startCommand: "openclaw gateway",
launchAgentPlistPath: "~/Library/LaunchAgents/com.openclaw.gateway.plist",
systemdServiceName: "openclaw-gateway",
windowsTaskName: "OpenClaw Gateway",
}),
).toEqual([
"openclaw gateway install",
"openclaw gateway",
"launchctl bootstrap gui/$UID ~/Library/LaunchAgents/com.openclaw.gateway.plist",
]);
expect(
buildPlatformServiceStartHints({
platform: "linux",
installCommand: "openclaw gateway install",
startCommand: "openclaw gateway",
launchAgentPlistPath: "~/Library/LaunchAgents/com.openclaw.gateway.plist",
systemdServiceName: "openclaw-gateway",
windowsTaskName: "OpenClaw Gateway",
}),
).toEqual([
"openclaw gateway install",
"openclaw gateway",
"systemctl --user start openclaw-gateway.service",
]);
});
});