improved stored data
created reset action to reset stored merge requests
This commit is contained in:
parent
c760965079
commit
8f646faf3d
6 changed files with 45 additions and 3 deletions
|
@ -14,11 +14,13 @@ export const receiveMergeRequestsSuccess = ({ commit }, data) =>
|
|||
export const fetchMergeRequests = ({ dispatch, state }) => {
|
||||
dispatch('requestMergeRequests');
|
||||
|
||||
Api.mergeRequests({ scope: state.scope, view: 'simple' })
|
||||
Api.mergeRequests({ scope: state.scope, state: 'opened' })
|
||||
.then(({ data }) => {
|
||||
dispatch('receiveMergeRequestsSuccess', data);
|
||||
})
|
||||
.catch(() => dispatch('receiveMergeRequestsError'));
|
||||
};
|
||||
|
||||
export const resetMergeRequests = ({ commit }) => commit(types.RESET_MERGE_REQUESTS);
|
||||
|
||||
export default () => {};
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
export const REQUEST_MERGE_REQUESTS = 'REQUEST_MERGE_REQUESTS';
|
||||
export const RECEIVE_MERGE_REQUESTS_ERROR = 'RECEIVE_MERGE_REQUESTS_ERROR';
|
||||
export const RECEIVE_MERGE_REQUESTS_SUCCESS = 'RECEIVE_MERGE_REQUESTS_SUCCESS';
|
||||
|
||||
export const RESET_MERGE_REQUESTS = 'RESET_MERGE_REQUESTS';
|
||||
|
|
|
@ -10,8 +10,16 @@ export default {
|
|||
},
|
||||
[types.RECEIVE_MERGE_REQUESTS_SUCCESS](state, data) {
|
||||
state.mergeRequests = data.map(mergeRequest => ({
|
||||
id: mergeRequest.iid,
|
||||
id: mergeRequest.id,
|
||||
iid: mergeRequest.iid,
|
||||
title: mergeRequest.title,
|
||||
projectId: mergeRequest.project_id,
|
||||
projectPathWithNamespace: mergeRequest.web_url
|
||||
.replace(`${gon.gitlab_url}/`, '')
|
||||
.replace(`/merge_requests/${mergeRequest.iid}`, ''),
|
||||
}));
|
||||
},
|
||||
[types.RESET_MERGE_REQUESTS](state) {
|
||||
state.mergeRequests = [];
|
||||
},
|
||||
};
|
||||
|
|
|
@ -96,8 +96,10 @@ export const fullPipelinesResponse = {
|
|||
|
||||
export const mergeRequests = [
|
||||
{
|
||||
id: 1,
|
||||
iid: 1,
|
||||
title: 'Test merge request',
|
||||
project_id: 1,
|
||||
web_url: `${gl.TEST_HOST}/namespace/project-path/merge_requests/1`,
|
||||
},
|
||||
];
|
||||
|
|
|
@ -7,6 +7,7 @@ import actions, {
|
|||
receiveMergeRequestsError,
|
||||
receiveMergeRequestsSuccess,
|
||||
fetchMergeRequests,
|
||||
resetMergeRequests,
|
||||
} from '~/ide/stores/modules/merge_requests/actions';
|
||||
import { mergeRequests } from '../../../mock_data';
|
||||
import testAction from '../../../../helpers/vuex_action_helper';
|
||||
|
@ -93,7 +94,7 @@ describe('IDe merge requests actions', () => {
|
|||
expect(apiSpy).toHaveBeenCalledWith(jasmine.anything(), {
|
||||
params: {
|
||||
scope: 'assigned-to-me',
|
||||
view: 'simple',
|
||||
state: 'opened',
|
||||
},
|
||||
});
|
||||
});
|
||||
|
@ -141,4 +142,17 @@ describe('IDe merge requests actions', () => {
|
|||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('resetMergeRequests', () => {
|
||||
it('commits reset', done => {
|
||||
testAction(
|
||||
resetMergeRequests,
|
||||
null,
|
||||
mockedState,
|
||||
[{ type: types.RESET_MERGE_REQUESTS }],
|
||||
[],
|
||||
done,
|
||||
);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
|
@ -28,14 +28,28 @@ describe('IDE merge requests mutations', () => {
|
|||
|
||||
describe(types.RECEIVE_MERGE_REQUESTS_SUCCESS, () => {
|
||||
it('sets merge requests', () => {
|
||||
gon.gitlab_url = gl.TEST_HOST;
|
||||
mutations[types.RECEIVE_MERGE_REQUESTS_SUCCESS](mockedState, mergeRequests);
|
||||
|
||||
expect(mockedState.mergeRequests).toEqual([
|
||||
{
|
||||
id: 1,
|
||||
iid: 1,
|
||||
title: 'Test merge request',
|
||||
projectId: 1,
|
||||
projectPathWithNamespace: 'namespace/project-path',
|
||||
},
|
||||
]);
|
||||
});
|
||||
});
|
||||
|
||||
describe(types.RESET_MERGE_REQUESTS, () => {
|
||||
it('clears merge request array', () => {
|
||||
mockedState.mergeRequests = ['test'];
|
||||
|
||||
mutations[types.RESET_MERGE_REQUESTS](mockedState);
|
||||
|
||||
expect(mockedState.mergeRequests).toEqual([]);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Reference in a new issue