2018-05-09 12:01:36 +05:30
|
|
|
import mutations from '~/ide/stores/mutations/merge_request';
|
|
|
|
import state from '~/ide/stores/state';
|
|
|
|
|
|
|
|
describe('IDE store merge request mutations', () => {
|
|
|
|
let localState;
|
|
|
|
|
|
|
|
beforeEach(() => {
|
|
|
|
localState = state();
|
|
|
|
localState.projects = { abcproject: { mergeRequests: {} } };
|
|
|
|
|
|
|
|
mutations.SET_MERGE_REQUEST(localState, {
|
|
|
|
projectPath: 'abcproject',
|
|
|
|
mergeRequestId: 1,
|
|
|
|
mergeRequest: {
|
|
|
|
title: 'mr',
|
|
|
|
},
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
describe('SET_CURRENT_MERGE_REQUEST', () => {
|
|
|
|
it('sets current merge request', () => {
|
|
|
|
mutations.SET_CURRENT_MERGE_REQUEST(localState, 2);
|
|
|
|
|
|
|
|
expect(localState.currentMergeRequestId).toBe(2);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
describe('SET_MERGE_REQUEST', () => {
|
|
|
|
it('setsmerge request data', () => {
|
|
|
|
const newMr = localState.projects.abcproject.mergeRequests[1];
|
|
|
|
|
|
|
|
expect(newMr.title).toBe('mr');
|
|
|
|
expect(newMr.active).toBeTruthy();
|
|
|
|
});
|
2019-07-07 11:18:12 +05:30
|
|
|
|
|
|
|
it('keeps original data', () => {
|
|
|
|
const versions = ['change'];
|
|
|
|
const mergeRequest = localState.projects.abcproject.mergeRequests[1];
|
|
|
|
|
|
|
|
mergeRequest.versions = versions;
|
|
|
|
|
|
|
|
mutations.SET_MERGE_REQUEST(localState, {
|
|
|
|
projectPath: 'abcproject',
|
|
|
|
mergeRequestId: 1,
|
|
|
|
mergeRequest: {
|
|
|
|
title: ['change'],
|
|
|
|
},
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(mergeRequest.title).toBe('mr');
|
|
|
|
expect(mergeRequest.versions).toEqual(versions);
|
|
|
|
});
|
2018-05-09 12:01:36 +05:30
|
|
|
});
|
|
|
|
|
|
|
|
describe('SET_MERGE_REQUEST_CHANGES', () => {
|
|
|
|
it('sets merge request changes', () => {
|
|
|
|
mutations.SET_MERGE_REQUEST_CHANGES(localState, {
|
|
|
|
projectPath: 'abcproject',
|
|
|
|
mergeRequestId: 1,
|
|
|
|
changes: {
|
|
|
|
diff: 'abc',
|
|
|
|
},
|
|
|
|
});
|
|
|
|
|
|
|
|
const newMr = localState.projects.abcproject.mergeRequests[1];
|
2018-12-13 13:39:08 +05:30
|
|
|
|
2018-05-09 12:01:36 +05:30
|
|
|
expect(newMr.changes.diff).toBe('abc');
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
describe('SET_MERGE_REQUEST_VERSIONS', () => {
|
|
|
|
it('sets merge request versions', () => {
|
|
|
|
mutations.SET_MERGE_REQUEST_VERSIONS(localState, {
|
|
|
|
projectPath: 'abcproject',
|
|
|
|
mergeRequestId: 1,
|
|
|
|
versions: [{ id: 123 }],
|
|
|
|
});
|
|
|
|
|
|
|
|
const newMr = localState.projects.abcproject.mergeRequests[1];
|
2018-12-13 13:39:08 +05:30
|
|
|
|
2018-05-09 12:01:36 +05:30
|
|
|
expect(newMr.versions.length).toBe(1);
|
|
|
|
expect(newMr.versions[0].id).toBe(123);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|