From 80aad7ccc1a25b6557ca993a017a40ce533fde8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maren=20S=C3=BCwer?= Date: Thu, 23 Aug 2018 12:25:00 +0200 Subject: [PATCH] correct getting failure function and is loading --- scm-ui/src/modules/failure.js | 1 + .../src/permissions/containers/Permissions.js | 7 +++---- scm-ui/src/permissions/modules/permissions.js | 18 ++++++++++++----- .../permissions/modules/permissions.test.js | 20 +++++++++++++------ 4 files changed, 31 insertions(+), 15 deletions(-) diff --git a/scm-ui/src/modules/failure.js b/scm-ui/src/modules/failure.js index 9328b59e78..94ff209ca6 100644 --- a/scm-ui/src/modules/failure.js +++ b/scm-ui/src/modules/failure.js @@ -59,6 +59,7 @@ export function getFailure( itemId?: string | number ) { if (state.failure) { + console.log(state.failure); let identifier = actionType; if (itemId) { identifier += "/" + itemId; diff --git a/scm-ui/src/permissions/containers/Permissions.js b/scm-ui/src/permissions/containers/Permissions.js index b97f2991f1..24b1ccef75 100644 --- a/scm-ui/src/permissions/containers/Permissions.js +++ b/scm-ui/src/permissions/containers/Permissions.js @@ -36,8 +36,7 @@ class Permissions extends React.Component { } render() { - const { namespace, name, loading, error, permissions, t } = this.props; - + const { loading, error, permissions, t } = this.props; if (error) { return ( { const mapStateToProps = (state, ownProps) => { const namespace = ownProps.namespace; const name = ownProps.name; - const error = getFetchPermissionsFailure(state); - const loading = isFetchPermissionsPending(state); + const error = getFetchPermissionsFailure(state, namespace, name); + const loading = isFetchPermissionsPending(state, namespace, name); const permissions = getPermissionsOfRepo(state, namespace, name); return { namespace, diff --git a/scm-ui/src/permissions/modules/permissions.js b/scm-ui/src/permissions/modules/permissions.js index 63bf61b6fc..c82a4cba91 100644 --- a/scm-ui/src/permissions/modules/permissions.js +++ b/scm-ui/src/permissions/modules/permissions.js @@ -6,7 +6,7 @@ import type { PermissionCollection } from "../types/Permissions"; import { isPending } from "../../modules/pending"; import { getFailure } from "../../modules/failure"; -export const FETCH_PERMISSIONS = "scm/repos/FETCH_PERMISSIONS"; +export const FETCH_PERMISSIONS = "scm/permissions/FETCH_PERMISSIONS"; export const FETCH_PERMISSIONS_PENDING = `${FETCH_PERMISSIONS}_${ types.PENDING_SUFFIX }`; @@ -112,10 +112,18 @@ export function getPermissionsOfRepo( } } -export function isFetchPermissionsPending(state: Object) { - return isPending(state, FETCH_PERMISSIONS); +export function isFetchPermissionsPending( + state: Object, + namespace: string, + name: string +) { + return isPending(state, FETCH_PERMISSIONS, namespace + "/" + name); } -export function getFetchPermissionsFailure(state: Object) { - return getFailure(state, FETCH_PERMISSIONS); +export function getFetchPermissionsFailure( + state: Object, + namespace: string, + name: string +) { + return getFailure(state, FETCH_PERMISSIONS, namespace + "/" + name); } diff --git a/scm-ui/src/permissions/modules/permissions.test.js b/scm-ui/src/permissions/modules/permissions.test.js index e0a14f9241..dcc302e97a 100644 --- a/scm-ui/src/permissions/modules/permissions.test.js +++ b/scm-ui/src/permissions/modules/permissions.test.js @@ -168,26 +168,34 @@ describe("permissions selectors", () => { it("should return true, when fetch permissions is pending", () => { const state = { pending: { - [FETCH_PERMISSIONS]: true + [FETCH_PERMISSIONS + "/hitchhiker/puzzle42"]: true } }; - expect(isFetchPermissionsPending(state)).toEqual(true); + expect(isFetchPermissionsPending(state, "hitchhiker", "puzzle42")).toEqual( + true + ); }); it("should return false, when fetch permissions is not pending", () => { - expect(isFetchPermissionsPending({})).toEqual(false); + expect(isFetchPermissionsPending({}, "hitchiker", "puzzle42")).toEqual( + false + ); }); it("should return error when fetch permissions did fail", () => { const state = { failure: { - [FETCH_PERMISSIONS]: error + [FETCH_PERMISSIONS + "/hitchhiker/puzzle42"]: error } }; - expect(getFetchPermissionsFailure(state)).toEqual(error); + expect(getFetchPermissionsFailure(state, "hitchhiker", "puzzle42")).toEqual( + error + ); }); it("should return undefined when fetch permissions did not fail", () => { - expect(getFetchPermissionsFailure({})).toBe(undefined); + expect(getFetchPermissionsFailure({}, "hitchhiker", "puzzle42")).toBe( + undefined + ); }); });