Files
boss/local-agent/heartbeat-error-state.test.mjs
2026-06-08 12:22:50 +08:00

18 lines
718 B
JavaScript

import test from "node:test";
import assert from "node:assert/strict";
import { recordHeartbeatRunnerError } from "./heartbeat-error-state.mjs";
test("heartbeat runner error is recorded as a visible runtime failure", () => {
const runtime = {};
const result = recordHeartbeatRunnerError(runtime, new Error("LOCAL_AGENT_HEARTBEAT_TIMEOUT"));
assert.equal(result.ok, false);
assert.equal(result.status, 0);
assert.equal(result.body, "LOCAL_AGENT_HEARTBEAT_TIMEOUT");
assert.equal(runtime.lastHeartbeatOk, false);
assert.equal(runtime.lastHeartbeatStatus, 0);
assert.equal(runtime.lastHeartbeatBody, "LOCAL_AGENT_HEARTBEAT_TIMEOUT");
assert.match(runtime.lastHeartbeatAt, /^\d{4}-\d{2}-\d{2}T/);
});