Files
my-pi/pi-permission-system/test/presentation/path-ask-payload.test.ts
T

37 lines
1.1 KiB
TypeScript

import { describe, expect, test } from "vitest";
import { buildPathAskPayload } from "#src/presentation/path-ask-payload";
describe("buildPathAskPayload", () => {
test("carries the typed path as the decision value and the rule that fired", () => {
const payload = buildPathAskPayload({
toolName: "read",
pathValue: "/etc/passwd",
agentName: "my-agent",
matchedPattern: "/etc/*",
});
expect(payload.kind).toBe("path");
expect(payload.request).toEqual({
requester: { agentName: "my-agent", forwarded: false, sessionId: null },
surface: "path",
toolName: "read",
invokedToolName: null,
value: "/etc/passwd",
matchedPattern: "/etc/*",
commandContext: null,
executedUnit: null,
});
expect(payload.evidence).toEqual([]);
});
test("leaves the requester unnamed when no agent is active", () => {
expect(
buildPathAskPayload({
toolName: "read",
pathValue: "/etc/passwd",
agentName: null,
}).request.requester,
).toEqual({ agentName: null, forwarded: false, sessionId: null });
});
});