From 20af5fe9b6ac7668144375293ab3fad805d63b5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maren=20S=C3=BCwer?= Date: Tue, 28 Aug 2018 16:08:42 +0200 Subject: [PATCH] add seletor for createPermission --- scm-ui/src/permissions/modules/permissions.js | 8 ++++++++ .../src/permissions/modules/permissions.test.js | 16 ++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/scm-ui/src/permissions/modules/permissions.js b/scm-ui/src/permissions/modules/permissions.js index 71b78e9f6b..666a532d03 100644 --- a/scm-ui/src/permissions/modules/permissions.js +++ b/scm-ui/src/permissions/modules/permissions.js @@ -360,3 +360,11 @@ export function getModifyPermissionFailure( namespace + "/" + name + "/" + permissionname ); } + +export function hasCreatePermission( + state: Object, + namespace: string, + name: string +) { + return state.permissions[namespace + "/" + name].createPermission; +} diff --git a/scm-ui/src/permissions/modules/permissions.test.js b/scm-ui/src/permissions/modules/permissions.test.js index 376c855d21..524e1a1d48 100644 --- a/scm-ui/src/permissions/modules/permissions.test.js +++ b/scm-ui/src/permissions/modules/permissions.test.js @@ -13,6 +13,7 @@ import reducer, { getModifyPermissionFailure, isModifyPermissionPending, createPermission, + hasCreatePermission, MODIFY_PERMISSION_FAILURE, MODIFY_PERMISSION_PENDING, FETCH_PERMISSIONS, @@ -433,4 +434,19 @@ describe("permissions selectors", () => { getModifyPermissionFailure({}, "hitchhiker", "puzzle42", "user_eins") ).toBe(undefined); }); + + it("should return true, when createPermission is true", () => { + const state = { + permissions: { + ["/hitchhiker/puzzle42"]: { + createPermission: true + } + } + }; + expect(hasCreatePermission(state, "hitchhiker", "puzzle42")).toBe(true); + }); + + it("should return false, when createPermission is false", () => { + expect(hasCreatePermission({}, "hitchiker", "puzzle42")).toEqual(false); + }); });