From f75ede4bf03f4010025d5fe24e07857cdeb0b229 Mon Sep 17 00:00:00 2001 From: Philipp Czora Date: Tue, 18 Sep 2018 16:30:37 +0200 Subject: [PATCH] Restructured changeset module --- scm-ui/src/changesets/modules/changesets.js | 18 ++++------ .../src/changesets/modules/changesets.test.js | 35 ++++++++----------- 2 files changed, 21 insertions(+), 32 deletions(-) diff --git a/scm-ui/src/changesets/modules/changesets.js b/scm-ui/src/changesets/modules/changesets.js index 161f03d48f..6423dca515 100644 --- a/scm-ui/src/changesets/modules/changesets.js +++ b/scm-ui/src/changesets/modules/changesets.js @@ -39,21 +39,18 @@ export function fetchChangesetsByNamespaceNameAndBranch(namespace: string, name: } export function fetchChangesetsPending(namespace: string, name: string, branch?: string): Action { + const itemId = createItemId(namespace, name, branch); return { type: FETCH_CHANGESETS_PENDING, - payload: { - namespace, - name, - branch - }, - itemId: createItemId(namespace, name, branch) + payload: itemId, + itemId } } -export function fetchChangesetsSuccess(collection: any, namespace: string, name: string, branch?: string): Action { +export function fetchChangesetsSuccess(changesets: any, namespace: string, name: string, branch?: string): Action { return { type: FETCH_CHANGESETS_SUCCESS, - payload: {collection, namespace, name, branch}, + payload: changesets, itemId: createItemId(namespace, name, branch) } } @@ -83,13 +80,12 @@ function createItemId(namespace: string, name: string, branch?: string): string export default function reducer(state: any = {}, action: Action = {type: "UNKNOWN"}): Object { switch (action.type) { case FETCH_CHANGESETS_SUCCESS: - const {namespace, name, branch} = action.payload; - const key = createItemId(namespace, name, branch); + const key = action.itemId let oldChangesets = {[key]: {}}; if (state[key] !== undefined) { oldChangesets[key] = state[key] } - return {...state, [key]: {byId: extractChangesetsByIds(action.payload.collection, oldChangesets[key].byId)}}; + return {...state, [key]: {byId: extractChangesetsByIds(action.payload, oldChangesets[key].byId)}}; default: return state; } diff --git a/scm-ui/src/changesets/modules/changesets.test.js b/scm-ui/src/changesets/modules/changesets.test.js index fad8d8a6a8..c74eee3975 100644 --- a/scm-ui/src/changesets/modules/changesets.test.js +++ b/scm-ui/src/changesets/modules/changesets.test.js @@ -17,7 +17,7 @@ import { } from "./changesets"; import reducer from "./changesets"; -const collection = {}; +const changesets = {}; describe("changesets", () => { describe("fetching of changesets", () => { @@ -35,12 +35,12 @@ describe("changesets", () => { const expectedActions = [ { - type: FETCH_CHANGESETS_PENDING, payload: {namespace: "foo", name: "bar"}, + type: FETCH_CHANGESETS_PENDING, payload: "foo/bar", itemId: "foo/bar" }, { type: FETCH_CHANGESETS_SUCCESS, - payload: {collection, namespace: "foo", name: "bar"}, + payload: changesets, itemId: "foo/bar" } ]; @@ -52,17 +52,18 @@ describe("changesets", () => { }); it("should fetch changesets for specific branch", () => { + const itemId = "foo/bar/specific"; fetchMock.getOnce(SPECIFIC_BRANCH_URL, "{}"); const expectedActions = [ { - type: FETCH_CHANGESETS_PENDING, payload: {namespace: "foo", name: "bar", branch: "specific"}, - itemId: "foo/bar/specific" + type: FETCH_CHANGESETS_PENDING, payload: itemId, + itemId }, { type: FETCH_CHANGESETS_SUCCESS, - payload: {collection, namespace: "foo", name: "bar", branch: "specific"}, - itemId: "foo/bar/specific" + payload: changesets, + itemId } ]; @@ -73,17 +74,13 @@ describe("changesets", () => { }); it("should fail fetching changesets on error", () => { + const itemId = "foo/bar"; fetchMock.getOnce(DEFAULT_BRANCH_URL, 500); const expectedActions = [ { - type: FETCH_CHANGESETS_PENDING, payload: {namespace: "foo", name: "bar"}, - itemId: "foo/bar" - }, - { - type: FETCH_CHANGESETS_SUCCESS, - payload: {collection, namespace: "foo", name: "bar"}, - itemId: "foo/bar" + type: FETCH_CHANGESETS_PENDING, payload: itemId, + itemId } ]; @@ -96,17 +93,13 @@ describe("changesets", () => { }) it("should fail fetching changesets for specific branch on error", () => { + const itemId = "foo/bar/specific"; fetchMock.getOnce(SPECIFIC_BRANCH_URL, 500); const expectedActions = [ { - type: FETCH_CHANGESETS_PENDING, payload: {namespace: "foo", name: "bar", branch: "specific"}, - itemId: "foo/bar/specific" - }, - { - type: FETCH_CHANGESETS_SUCCESS, - payload: {collection, namespace: "foo", name: "bar", branch: "specific"}, - itemId: "foo/bar/specific" + type: FETCH_CHANGESETS_PENDING, payload: itemId, + itemId } ];