diff options
Diffstat (limited to 'spec/frontend/milestones/stores/mutations_spec.js')
-rw-r--r-- | spec/frontend/milestones/stores/mutations_spec.js | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/spec/frontend/milestones/stores/mutations_spec.js b/spec/frontend/milestones/stores/mutations_spec.js index 91b2acf23c5..a53d6ca5de1 100644 --- a/spec/frontend/milestones/stores/mutations_spec.js +++ b/spec/frontend/milestones/stores/mutations_spec.js @@ -174,6 +174,35 @@ describe('Milestones combobox Vuex store mutations', () => { }); }); + it('falls back to the length of list if pagination headers are missing', () => { + const response = { + data: [ + { + title: 'v0.1', + }, + { + title: 'v0.2', + }, + ], + headers: {}, + }; + + mutations[types.RECEIVE_PROJECT_MILESTONES_SUCCESS](state, response); + + expect(state.matches.projectMilestones).toEqual({ + list: [ + { + title: 'v0.1', + }, + { + title: 'v0.2', + }, + ], + error: null, + totalCount: 2, + }); + }); + describe(`${types.RECEIVE_PROJECT_MILESTONES_ERROR}`, () => { it('updates state.matches.projectMilestones to an empty state with the error object', () => { const error = new Error('Something went wrong!'); @@ -227,6 +256,35 @@ describe('Milestones combobox Vuex store mutations', () => { }); }); + it('falls back to the length of data received if pagination headers are missing', () => { + const response = { + data: [ + { + title: 'group-0.1', + }, + { + title: 'group-0.2', + }, + ], + headers: {}, + }; + + mutations[types.RECEIVE_GROUP_MILESTONES_SUCCESS](state, response); + + expect(state.matches.groupMilestones).toEqual({ + list: [ + { + title: 'group-0.1', + }, + { + title: 'group-0.2', + }, + ], + error: null, + totalCount: 2, + }); + }); + describe(`${types.RECEIVE_GROUP_MILESTONES_ERROR}`, () => { it('updates state.matches.groupMilestones to an empty state with the error object', () => { const error = new Error('Something went wrong!'); |