From 25aec20fab63946dfe1c5b9ae544e15cfcff2b81 Mon Sep 17 00:00:00 2001 From: Filipa Lacerda Date: Wed, 23 May 2018 17:01:00 +0100 Subject: [PATCH] Show loading icon only when making the request --- .../pipelines/components/pipelines_table.vue | 3 +++ .../pipelines/components/pipelines_table_row.vue | 12 +++++++++--- .../pipelines/pipelines_table_row_spec.js | 11 ++++++++++- 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/app/assets/javascripts/pipelines/components/pipelines_table.vue b/app/assets/javascripts/pipelines/components/pipelines_table.vue index 41986b827cd..4318abe97e0 100644 --- a/app/assets/javascripts/pipelines/components/pipelines_table.vue +++ b/app/assets/javascripts/pipelines/components/pipelines_table.vue @@ -37,6 +37,7 @@ return { pipelineId: '', endpoint: '', + cancelingPipeline: null, }; }, computed: { @@ -64,6 +65,7 @@ }, onSubmit() { eventHub.$emit('postAction', this.endpoint); + this.cancelingPipeline = this.pipelineId; }, }, }; @@ -106,6 +108,7 @@ :update-graph-dropdown="updateGraphDropdown" :auto-devops-help-path="autoDevopsHelpPath" :view-type="viewType" + :canceling-pipeline="cancelingPipeline" /> { }); component.$el.querySelector('.js-pipelines-cancel-button').click(); - expect(component.isCancelling).toEqual(true); + }); + + it('renders a loading icon when `cancelingPipeline` matches pipeline id', done => { + component.cancelingPipeline = pipeline.id; + component.$nextTick() + .then(() => { + expect(component.isCancelling).toEqual(true); + }) + .then(done) + .catch(done.fail); }); }); });