Files
clawdbot/src/daemon/service-audit.test.ts
2026-01-08 22:18:07 +00:00

56 lines
1.5 KiB
TypeScript

import { describe, expect, it } from "vitest";
import {
auditGatewayServiceConfig,
SERVICE_AUDIT_CODES,
} from "./service-audit.js";
describe("auditGatewayServiceConfig", () => {
it("flags bun runtime", async () => {
const audit = await auditGatewayServiceConfig({
env: { HOME: "/tmp" },
platform: "darwin",
command: {
programArguments: ["/opt/homebrew/bin/bun", "gateway"],
environment: { PATH: "/usr/bin:/bin" },
},
});
expect(
audit.issues.some(
(issue) => issue.code === SERVICE_AUDIT_CODES.gatewayRuntimeBun,
),
).toBe(true);
});
it("flags version-managed node paths", async () => {
const audit = await auditGatewayServiceConfig({
env: { HOME: "/tmp" },
platform: "darwin",
command: {
programArguments: [
"/Users/test/.nvm/versions/node/v22.0.0/bin/node",
"gateway",
],
environment: {
PATH: "/usr/bin:/bin:/Users/test/.nvm/versions/node/v22.0.0/bin",
},
},
});
expect(
audit.issues.some(
(issue) =>
issue.code === SERVICE_AUDIT_CODES.gatewayRuntimeNodeVersionManager,
),
).toBe(true);
expect(
audit.issues.some(
(issue) => issue.code === SERVICE_AUDIT_CODES.gatewayPathNonMinimal,
),
).toBe(true);
expect(
audit.issues.some(
(issue) => issue.code === SERVICE_AUDIT_CODES.gatewayPathMissingDirs,
),
).toBe(true);
});
});