26 lines
960 B
TypeScript
26 lines
960 B
TypeScript
import { describe, expect, it } from "vitest";
|
|
|
|
import { stripPluginOnlyAllowlist, type PluginToolGroups } from "./tool-policy.js";
|
|
|
|
const pluginGroups: PluginToolGroups = {
|
|
all: ["lobster", "workflow_tool"],
|
|
byPlugin: new Map([["lobster", ["lobster", "workflow_tool"]]]),
|
|
};
|
|
|
|
describe("stripPluginOnlyAllowlist", () => {
|
|
it("strips allowlist when it only targets plugin tools", () => {
|
|
const policy = stripPluginOnlyAllowlist({ allow: ["lobster"] }, pluginGroups);
|
|
expect(policy?.allow).toBeUndefined();
|
|
});
|
|
|
|
it("strips allowlist when it only targets plugin groups", () => {
|
|
const policy = stripPluginOnlyAllowlist({ allow: ["group:plugins"] }, pluginGroups);
|
|
expect(policy?.allow).toBeUndefined();
|
|
});
|
|
|
|
it("keeps allowlist when it mixes plugin and core entries", () => {
|
|
const policy = stripPluginOnlyAllowlist({ allow: ["lobster", "read"] }, pluginGroups);
|
|
expect(policy?.allow).toEqual(["lobster", "read"]);
|
|
});
|
|
});
|