diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-01-27 21:09:12 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-01-27 21:09:12 +0000 |
commit | 10eb15fe07b89755e82dbe2798651795aebd6614 (patch) | |
tree | a05c3db0856ccad42b8bf9a57df3629f8aa88e46 /spec/frontend/vue_mr_widget | |
parent | 874d5e8019150bfb2428cac3089c1dac1d6f9ed9 (diff) | |
download | gitlab-ce-10eb15fe07b89755e82dbe2798651795aebd6614.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/frontend/vue_mr_widget')
2 files changed, 49 insertions, 14 deletions
diff --git a/spec/frontend/vue_mr_widget/components/states/__snapshots__/mr_widget_pipeline_failed_spec.js.snap b/spec/frontend/vue_mr_widget/components/states/__snapshots__/mr_widget_pipeline_failed_spec.js.snap new file mode 100644 index 00000000000..4c3c7fbea36 --- /dev/null +++ b/spec/frontend/vue_mr_widget/components/states/__snapshots__/mr_widget_pipeline_failed_spec.js.snap @@ -0,0 +1,24 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`PipelineFailed should render error message with a disabled merge button 1`] = ` +<div + class="mr-widget-body media" +> + <status-icon-stub + showdisabledbutton="true" + status="warning" + /> + + <div + class="media-body space-children" + > + <span + class="bold" + > + <gl-sprintf-stub + message="The pipeline for this merge request did not complete. Push a new commit to fix the failure or check the %{linkStart}troubleshooting documentation%{linkEnd} to see other possible actions." + /> + </span> + </div> +</div> +`; diff --git a/spec/frontend/vue_mr_widget/components/states/mr_widget_pipeline_failed_spec.js b/spec/frontend/vue_mr_widget/components/states/mr_widget_pipeline_failed_spec.js index 179adef12d9..ed3e7d9c0eb 100644 --- a/spec/frontend/vue_mr_widget/components/states/mr_widget_pipeline_failed_spec.js +++ b/spec/frontend/vue_mr_widget/components/states/mr_widget_pipeline_failed_spec.js @@ -1,19 +1,30 @@ -import Vue from 'vue'; -import { removeBreakLine } from 'helpers/text_helper'; +import { shallowMount } from '@vue/test-utils'; import PipelineFailed from '~/vue_merge_request_widget/components/states/pipeline_failed.vue'; +import statusIcon from '~/vue_merge_request_widget/components/mr_widget_status_icon.vue'; describe('PipelineFailed', () => { - describe('template', () => { - const Component = Vue.extend(PipelineFailed); - const vm = new Component({ - el: document.createElement('div'), - }); - it('should have correct elements', () => { - expect(vm.$el.classList.contains('mr-widget-body')).toBeTruthy(); - expect(vm.$el.querySelector('button').getAttribute('disabled')).toBeTruthy(); - expect(removeBreakLine(vm.$el.innerText).trim()).toContain( - 'The pipeline for this merge request failed. Please retry the job or push a new commit to fix the failure', - ); - }); + let wrapper; + + const createComponent = () => { + wrapper = shallowMount(PipelineFailed); + }; + + const findStatusIcon = () => wrapper.find(statusIcon); + + beforeEach(() => { + createComponent(); + }); + + afterEach(() => { + wrapper.destroy(); + wrapper = null; + }); + + it('should render error message with a disabled merge button', () => { + expect(wrapper.element).toMatchSnapshot(); + }); + + it('merge button should be disabled', () => { + expect(findStatusIcon().props('showDisabledButton')).toBe(true); }); }); |