From 464a19abe19bbb9ded9c1c39363a9cd852178c6f Mon Sep 17 00:00:00 2001 From: Pedro Moreira da Silva <hi@pedroms.com> Date: Thu, 1 Oct 2020 15:36:47 +0100 Subject: [PATCH] Fix failing tests - Change `click_link` to `click_button` to align with element change - Change `shallowMount` to `mount` to read button disabled state - Remove QA test for MWPS dropdown option - Remove spec for MWPS dropdown option - Prettify Vue file --- .../components/states/ready_to_merge.vue | 16 ++++++++++++---- .../user_merges_immediately_spec.rb | 2 +- .../states/mr_widget_ready_to_merge_spec.js | 6 +++--- qa/qa/page/merge_request/show.rb | 1 - .../user_merges_immediately_spec.rb | 2 +- .../user_merges_when_pipeline_succeeds_spec.rb | 13 ------------- 6 files changed, 17 insertions(+), 23 deletions(-) diff --git a/app/assets/javascripts/vue_merge_request_widget/components/states/ready_to_merge.vue b/app/assets/javascripts/vue_merge_request_widget/components/states/ready_to_merge.vue index 9e9fe38204abd..13c134a4ced6e 100644 --- a/app/assets/javascripts/vue_merge_request_widget/components/states/ready_to_merge.vue +++ b/app/assets/javascripts/vue_merge_request_widget/components/states/ready_to_merge.vue @@ -1,6 +1,15 @@ <script> import { isEmpty } from 'lodash'; -import { GlIcon, GlButton, GlButtonGroup, GlDropdown, GlDropdownItem, GlSprintf, GlLink, GlTooltipDirective } from '@gitlab/ui'; +import { + GlIcon, + GlButton, + GlButtonGroup, + GlDropdown, + GlDropdownItem, + GlSprintf, + GlLink, + GlTooltipDirective, +} from '@gitlab/ui'; import readyToMergeMixin from 'ee_else_ce/vue_merge_request_widget/mixins/ready_to_merge'; import simplePoll from '~/lib/utils/simple_poll'; import { __ } from '~/locale'; @@ -305,9 +314,8 @@ export default { v-gl-tooltip.hover.focus="__('Select merge moment')" :disabled="isMergeButtonDisabled" variant="info" - class="js-merge-moment" data-qa-selector="merge_moment_dropdown" - toggle-class="btn-icon" + toggle-class="btn-icon js-merge-moment" > <template #button-content> <gl-icon name="chevron-down" class="mr-0" /> @@ -315,7 +323,7 @@ export default { </template> <gl-dropdown-item icon-name="warning" - class="accept-merge-request js-merge-immediately-button" + button-class="accept-merge-request js-merge-immediately-button" data-qa-selector="merge_immediately_option" @click="handleMergeImmediatelyButtonClick" > diff --git a/ee/spec/features/merge_request/user_merges_immediately_spec.rb b/ee/spec/features/merge_request/user_merges_immediately_spec.rb index 1cc0465093517..7875658725f59 100644 --- a/ee/spec/features/merge_request/user_merges_immediately_spec.rb +++ b/ee/spec/features/merge_request/user_merges_immediately_spec.rb @@ -41,7 +41,7 @@ def merge_button def open_warning_dialog find('.mr-widget-body .dropdown-toggle').click - click_link 'Merge immediately' + click_button 'Merge immediately' expect(page).to have_selector('#merge-immediately-confirmation-dialog') end diff --git a/ee/spec/frontend/vue_mr_widget/components/states/mr_widget_ready_to_merge_spec.js b/ee/spec/frontend/vue_mr_widget/components/states/mr_widget_ready_to_merge_spec.js index b960887df9788..d8106b8508534 100644 --- a/ee/spec/frontend/vue_mr_widget/components/states/mr_widget_ready_to_merge_spec.js +++ b/ee/spec/frontend/vue_mr_widget/components/states/mr_widget_ready_to_merge_spec.js @@ -1,4 +1,4 @@ -import { shallowMount } from '@vue/test-utils'; +import { mount } from '@vue/test-utils'; import { MERGE_DISABLED_TEXT_UNAPPROVED } from 'ee/vue_merge_request_widget/mixins/ready_to_merge'; import MergeImmediatelyConfirmationDialog from 'ee/vue_merge_request_widget/components/merge_immediately_confirmation_dialog.vue'; import MergeTrainHelperText from 'ee/vue_merge_request_widget/components/merge_train_helper_text.vue'; @@ -58,7 +58,7 @@ describe('ReadyToMerge', () => { }; const factory = (mrUpdates = {}) => { - wrapper = shallowMount(ReadyToMerge, { + wrapper = mount(ReadyToMerge, { propsData: { mr: { ...mr, ...mrUpdates }, service, @@ -385,7 +385,7 @@ describe('ReadyToMerge', () => { const button = findMergeButton(); expect(button.exists()).toBe(true); - expect(button.attributes('disabled')).toBe('true'); + expect(button.attributes('disabled')).toBe('disabled'); }); }); }); diff --git a/qa/qa/page/merge_request/show.rb b/qa/qa/page/merge_request/show.rb index 164f25389c043..5dd5abc53d7c7 100644 --- a/qa/qa/page/merge_request/show.rb +++ b/qa/qa/page/merge_request/show.rb @@ -23,7 +23,6 @@ class Show < Page::Base element :merge_button element :fast_forward_message, 'Fast-forward merge without a merge commit' # rubocop:disable QA/ElementWithPattern element :merge_moment_dropdown - element :merge_when_pipeline_succeeds_option element :merge_immediately_option end diff --git a/spec/features/merge_request/user_merges_immediately_spec.rb b/spec/features/merge_request/user_merges_immediately_spec.rb index 0fb081ec50782..64a357de1f7e2 100644 --- a/spec/features/merge_request/user_merges_immediately_spec.rb +++ b/spec/features/merge_request/user_merges_immediately_spec.rb @@ -34,7 +34,7 @@ find('.dropdown-toggle').click Sidekiq::Testing.fake! do - click_link 'Merge immediately' + click_button 'Merge immediately' expect(find('.accept-merge-request.btn-info')).to have_content('Merge in progress') diff --git a/spec/features/merge_request/user_merges_when_pipeline_succeeds_spec.rb b/spec/features/merge_request/user_merges_when_pipeline_succeeds_spec.rb index 444d5371e7a0c..5e99383e4a1c1 100644 --- a/spec/features/merge_request/user_merges_when_pipeline_succeeds_spec.rb +++ b/spec/features/merge_request/user_merges_when_pipeline_succeeds_spec.rb @@ -93,19 +93,6 @@ it_behaves_like 'Merge when pipeline succeeds activator' end end - - describe 'enabling Merge when pipeline succeeds via dropdown' do - it 'activates the Merge when pipeline succeeds feature' do - wait_for_requests - - find('.js-merge-moment').click - click_link 'Merge when pipeline succeeds' - - expect(page).to have_content "Set by #{user.name} to be merged automatically when the pipeline succeeds" - expect(page).to have_content "The source branch will not be deleted" - expect(page).to have_link "Cancel automatic merge" - end - end end context 'when merge when pipeline succeeds is enabled' do -- GitLab