Files
buzz-sheet/lib/auth/authorization.test.ts
gunshiz 481123eec0
CI / Verify (push) Successful in 4m36s
CI / Build immutable images and deploy (push) Successful in 7m37s
feat(auth): check for admin role
2026-09-21 17:58:15 +07:00

28 lines
693 B
TypeScript

import { describe, expect, it } from "vitest";
import {
isAuthorizedAdmin,
} from "./authorization";
const verified = {
id: "admin",
email: "[email protected]",
emailVerified: true,
role: "admin",
};
describe("admin authorization", () => {
it("allows only verified admins", () => {
expect(isAuthorizedAdmin(verified)).toBe(true);
expect(
isAuthorizedAdmin({ ...verified, emailVerified: false }),
).toBe(false);
expect(isAuthorizedAdmin({ ...verified, role: "user" })).toBe(false);
expect(isAuthorizedAdmin({ ...verified, role: null })).toBe(false);
});
it("denies missing users", () => {
expect(isAuthorizedAdmin(null)).toBe(false);
});
});