zappyzep/shared/src/apiPermissions.test.ts
2019-11-08 00:04:24 +02:00

13 lines
694 B
TypeScript

import { ApiPermissions, hasPermission } from "./apiPermissions";
import test from "ava";
test("Directly granted permissions match", t => {
t.is(hasPermission(new Set([ApiPermissions.ManageAccess]), ApiPermissions.ManageAccess), true);
t.is(hasPermission(new Set([ApiPermissions.ManageAccess]), ApiPermissions.Owner), false);
});
test("Implicitly granted permissions by hierarchy match", t => {
t.is(hasPermission(new Set([ApiPermissions.ManageAccess]), ApiPermissions.EditConfig), true);
t.is(hasPermission(new Set([ApiPermissions.ManageAccess]), ApiPermissions.ReadConfig), true);
t.is(hasPermission(new Set([ApiPermissions.EditConfig]), ApiPermissions.ManageAccess), false);
});