import { describe, expect, it } from "vitest"; import { evaluateLicensePolicy, evaluateSecretPolicy, } from "@/lib/security-policies"; const basePolicy = { enforcementMode: "block" as const, secretBlockedTypes: ["aws_access_key"], secretMinSeverity: "HIGH" as const, licenseAllowedTypes: ["permissive"], licenseBlockedLicenses: ["GPL-3.0"], isEnabled: true, }; describe("security policy evaluation", () => { it("flags blocked secret type", () => { const result = evaluateSecretPolicy(basePolicy, "aws_access_key", "LOW"); expect(result.violated).toBe(true); }); it("flags secret by severity threshold", () => { const result = evaluateSecretPolicy(basePolicy, "generic", "CRITICAL"); expect(result.violated).toBe(true); }); it("flags blocked license name", () => { const result = evaluateLicensePolicy(basePolicy, "copyleft", "LICENSE-GPL-3.0", "License: GPL-3.0"); expect(result.violated).toBe(true); }); it("flags disallowed license type", () => { const result = evaluateLicensePolicy(basePolicy, "copyleft", "LICENSE-MPL-2.0", "License: MPL-2.0"); expect(result.violated).toBe(true); }); });