fixed mutations spec

This commit is contained in:
Phil Hughes 2018-05-25 16:00:00 +01:00
parent cdc92d94e0
commit aca0d610fd
No known key found for this signature in database
GPG key ID: 32245528C52E0F9F
4 changed files with 30 additions and 33 deletions

View file

@ -47,7 +47,7 @@ export default {
Pipeline
</strong>
<a
:href="latestPipeline.details.status.details_path"
:href="latestPipeline.path"
target="_blank"
>
#{{ latestPipeline.id }}

View file

@ -12,7 +12,14 @@ export default {
state.isLoadingPipeline = false;
if (pipeline) {
state.latestPipeline = pipeline;
state.latestPipeline = {
id: pipeline.id,
path: pipeline.path,
commit: pipeline.commit,
details: {
status: pipeline.details.status,
},
};
state.stages = pipeline.details.stages.map((stage, i) => {
const foundStage = state.stages.find(s => s.id === i);
return {

View file

@ -89,14 +89,16 @@ export const fullPipelinesResponse = {
pipelines: [
{
id: '51',
path: 'test',
commit: {
id: 'xxxxxxxxxxxxxxxxxxxx',
id: '123',
},
details: {
status: {
icon: 'status_failed',
text: 'failed',
},
stages: [...stages],
},
},
{
@ -109,6 +111,7 @@ export const fullPipelinesResponse = {
icon: 'status_passed',
text: 'passed',
},
stages: [...stages],
},
},
],

View file

@ -1,7 +1,7 @@
import mutations from '~/ide/stores/modules/pipelines/mutations';
import state from '~/ide/stores/modules/pipelines/state';
import * as types from '~/ide/stores/modules/pipelines/mutation_types';
import { pipelines, stages } from '../../../mock_data';
import { fullPipelinesResponse, stages } from '../../../mock_data';
describe('IDE pipelines mutations', () => {
let mockedState;
@ -28,17 +28,25 @@ describe('IDE pipelines mutations', () => {
describe(types.RECEIVE_LASTEST_PIPELINE_SUCCESS, () => {
it('sets loading to false on success', () => {
mutations[types.RECEIVE_LASTEST_PIPELINE_SUCCESS](mockedState, pipelines[0]);
mutations[types.RECEIVE_LASTEST_PIPELINE_SUCCESS](
mockedState,
fullPipelinesResponse.data.pipelines[0],
);
expect(mockedState.isLoadingPipeline).toBe(false);
});
it('sets latestPipeline', () => {
mutations[types.RECEIVE_LASTEST_PIPELINE_SUCCESS](mockedState, pipelines[0]);
mutations[types.RECEIVE_LASTEST_PIPELINE_SUCCESS](
mockedState,
fullPipelinesResponse.data.pipelines[0],
);
expect(mockedState.latestPipeline).toEqual({
id: pipelines[0].id,
status: pipelines[0].status,
id: '51',
path: 'test',
commit: { id: '123' },
details: { status: jasmine.any(Object) },
});
});
@ -47,33 +55,12 @@ describe('IDE pipelines mutations', () => {
expect(mockedState.latestPipeline).toEqual(null);
});
});
describe(types.REQUEST_STAGES, () => {
it('sets stages loading to true', () => {
mutations[types.REQUEST_STAGES](mockedState);
expect(mockedState.isLoadingJobs).toBe(true);
});
});
describe(types.RECEIVE_STAGES_ERROR, () => {
it('sets jobs loading to false', () => {
mutations[types.RECEIVE_STAGES_ERROR](mockedState);
expect(mockedState.isLoadingJobs).toBe(false);
});
});
describe(types.RECEIVE_STAGES_SUCCESS, () => {
it('sets jobs loading to false on success', () => {
mutations[types.RECEIVE_STAGES_SUCCESS](mockedState, stages);
expect(mockedState.isLoadingJobs).toBe(false);
});
it('sets stages', () => {
mutations[types.RECEIVE_STAGES_SUCCESS](mockedState, stages);
mutations[types.RECEIVE_LASTEST_PIPELINE_SUCCESS](
mockedState,
fullPipelinesResponse.data.pipelines[0],
);
expect(mockedState.stages.length).toBe(2);
expect(mockedState.stages).toEqual([