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" ,
"Restart attempts: /tmp/openclaw-state/logs/gateway-restart.log" ,
]);
});
it("renders systemd and windows hints by platform" , () => {
expect(
buildPlatformRuntimeLogHints({
platform: "linux" ,
env: {
OPENCLAW_STATE_DIR: "/tmp/openclaw-state" ,
},
systemdServiceName: "openclaw-gateway" ,
windowsTaskName: "OpenClaw Gateway" ,
}),
).toEqual([
"Logs: journalctl --user -u openclaw-gateway.service -n 200 --no-pager" ,
"Restart attempts: /tmp/openclaw-state/logs/gateway-restart.log" ,
]);
expect(
buildPlatformRuntimeLogHints({
platform: "win32" ,
env: {
OPENCLAW_STATE_DIR: "/tmp/openclaw-state" ,
},
systemdServiceName: "openclaw-gateway" ,
windowsTaskName: "OpenClaw Gateway" ,
}),
).toEqual([
'Logs: schtasks /Query /TN "OpenClaw Gateway" /V /FO LIST' ,
"Restart attempts: /tmp/openclaw-state/logs/gateway-restart.log" ,
]);
});
});
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" ,
]);
});
});
Messung V0.5 in Prozent C=100 H=100 G=100
¤ Dauer der Verarbeitung: 0.9 Sekunden
(vorverarbeitet am 2026-06-09)
¤
*© Formatika GbR, Deutschland