diff --git a/.rubocop_todo/capybara/testid_finders.yml b/.rubocop_todo/capybara/testid_finders.yml index da7014c2ee3bcdedbbb2001a89b9dffa25bc1ab2..0e02f3e3219d6605c2d7921ad8f8061201e4f848 100644 --- a/.rubocop_todo/capybara/testid_finders.yml +++ b/.rubocop_todo/capybara/testid_finders.yml @@ -15,15 +15,7 @@ Capybara/TestidFinders: - 'spec/features/merge_request/user_comments_on_diff_spec.rb' - 'spec/features/merge_request/user_comments_on_whitespace_hidden_diff_spec.rb' - 'spec/features/merge_request/user_creates_mr_spec.rb' - - 'spec/features/merge_request/user_customizes_merge_commit_message_spec.rb' - - 'spec/features/merge_request/user_edits_mr_spec.rb' - - 'spec/features/merge_request/user_expands_diff_spec.rb' - 'spec/features/merge_request/user_interacts_with_batched_mr_diffs_spec.rb' - - 'spec/features/merge_request/user_manages_subscription_spec.rb' - - 'spec/features/merge_request/user_merges_immediately_spec.rb' - - 'spec/features/merge_request/user_posts_notes_spec.rb' - - 'spec/features/merge_request/user_resolves_conflicts_spec.rb' - - 'spec/features/merge_request/user_sees_merge_widget_spec.rb' - 'spec/features/merge_request/user_sees_pipelines_spec.rb' - 'spec/features/merge_request/user_sees_suggest_pipeline_spec.rb' - 'spec/features/merge_request/user_sees_versions_spec.rb' diff --git a/spec/features/merge_request/user_customizes_merge_commit_message_spec.rb b/spec/features/merge_request/user_customizes_merge_commit_message_spec.rb index 3c30ef02a191712cf0bd8965a5b8dbcd22820580..661125c8f8a42af1918dc90617c52bd186b9ca2d 100644 --- a/spec/features/merge_request/user_customizes_merge_commit_message_spec.rb +++ b/spec/features/merge_request/user_customizes_merge_commit_message_spec.rb @@ -41,7 +41,7 @@ it 'has commit message without description' do expect(page).not_to have_selector('#merge-message-edit') - find('[data-testid="widget_edit_commit_message"]').click + find_by_testid('widget_edit_commit_message').click expect(merge_textbox).to be_visible expect(merge_textbox.value).to eq(default_merge_commit_message) end @@ -51,7 +51,7 @@ it 'uses merge commit template' do expect(page).not_to have_selector('#merge-message-edit') - find('[data-testid="widget_edit_commit_message"]').click + find_by_testid('widget_edit_commit_message').click expect(merge_textbox).to be_visible expect(merge_textbox.value).to eq(merge_request.title) end @@ -62,7 +62,7 @@ it 'has default message with merge request title' do expect(page).not_to have_selector('#squash-message-edit') - find('[data-testid="widget_edit_commit_message"]').click + find_by_testid('widget_edit_commit_message').click expect(squash_textbox).to be_visible expect(merge_textbox).to be_visible expect(squash_textbox.value).to eq(merge_request.title) @@ -74,7 +74,7 @@ it 'uses squash commit template' do expect(page).not_to have_selector('#squash-message-edit') - find('[data-testid="widget_edit_commit_message"]').click + find_by_testid('widget_edit_commit_message').click expect(squash_textbox).to be_visible expect(merge_textbox).to be_visible expect(squash_textbox.value).to eq(merge_request.description) diff --git a/spec/features/merge_request/user_edits_mr_spec.rb b/spec/features/merge_request/user_edits_mr_spec.rb index fca3a76949a2da8941470337fab9484a60d84cae..de277688a98385e158b55527b9db60d7420437b6 100644 --- a/spec/features/merge_request/user_edits_mr_spec.rb +++ b/spec/features/merge_request/user_edits_mr_spec.rb @@ -32,12 +32,12 @@ click_button _('Select label') wait_for_all_requests - page.within '[data-testid="sidebar-labels"]' do + within_testid('sidebar-labels') do click_button label.title click_button label2.title click_button _('Close') wait_for_requests - page.within('[data-testid="embedded-labels-list"]') do + within_testid('embedded-labels-list') do expect(page).to have_content(label.title) expect(page).to have_content(label2.title) end diff --git a/spec/features/merge_request/user_expands_diff_spec.rb b/spec/features/merge_request/user_expands_diff_spec.rb index 9fbb5773eae4efe5de1c21c7acdda44ed56f8edb..17b6e7a966bb2f8db63032ae146fc287d4112863 100644 --- a/spec/features/merge_request/user_expands_diff_spec.rb +++ b/spec/features/merge_request/user_expands_diff_spec.rb @@ -16,7 +16,7 @@ it 'allows user to expand diff' do page.within find("[id='4c76a1271e41072d7da9fe40bf0f79f7384d472a']") do - find('[data-testid="expand-button"]').click + find_by_testid('expand-button').click wait_for_requests diff --git a/spec/features/merge_request/user_manages_subscription_spec.rb b/spec/features/merge_request/user_manages_subscription_spec.rb index a7c82f1a6abb07483a57c748e33ff2ec6ee6afc2..7988d52f77026e5559be0f5ffd7128f948e5522c 100644 --- a/spec/features/merge_request/user_manages_subscription_spec.rb +++ b/spec/features/merge_request/user_manages_subscription_spec.rb @@ -22,12 +22,16 @@ find('#new-actions-header-dropdown button').click expect(page).to have_selector('.gl-toggle:not(.is-checked)') - find('[data-testid="notification-toggle"] .gl-toggle').click + within_testid('notification-toggle') do + find('.gl-toggle').click + end wait_for_requests expect(page).to have_selector('.gl-toggle.is-checked') - find('[data-testid="notification-toggle"] .gl-toggle').click + within_testid('notification-toggle') do + find('.gl-toggle').click + end wait_for_requests @@ -40,10 +44,10 @@ it 'toggles subscription' do wait_for_requests - find('[data-testid="subscribe-button"]').click + find_by_testid('subscribe-button').click expect(page).to have_selector('[data-testid="notifications-off-icon"]') - find('[data-testid="subscribe-button"]').click + find_by_testid('subscribe-button').click expect(page).to have_selector('[data-testid="notifications-icon"]') end end diff --git a/spec/features/merge_request/user_merges_immediately_spec.rb b/spec/features/merge_request/user_merges_immediately_spec.rb index ae229651579fd348b2209f2046d631ea84ff3c2f..fb0695a73ba042a700e85233383430c5222dcdf6 100644 --- a/spec/features/merge_request/user_merges_immediately_spec.rb +++ b/spec/features/merge_request/user_merges_immediately_spec.rb @@ -36,7 +36,7 @@ it 'enables merge immediately' do wait_for_requests - page.within '[data-testid="ready_to_merge_state"]' do + within_testid('ready_to_merge_state') do find('.gl-new-dropdown-toggle').click Sidekiq::Testing.fake! do @@ -44,7 +44,7 @@ end end - expect(find('[data-testid="merging-state"]')).to have_content('Merging!') + expect(find_by_testid('merging-state')).to have_content('Merging!') wait_for_requests end diff --git a/spec/features/merge_request/user_posts_notes_spec.rb b/spec/features/merge_request/user_posts_notes_spec.rb index ca3503b187c366e9001e6775c59ac60512630b5a..962337c52f3386fbcceec856d47867c6b15afd49 100644 --- a/spec/features/merge_request/user_posts_notes_spec.rb +++ b/spec/features/merge_request/user_posts_notes_spec.rb @@ -44,7 +44,7 @@ it 'has enable submit button, preview button and saves content to local storage' do page.within('.js-main-target-form') do - page.within('[data-testid="comment-button"]') do + within_testid('comment-button') do expect(page).to have_css('.gl-button') expect(page).not_to have_css('.disabled') end @@ -162,7 +162,7 @@ it 'resets the edit note form textarea with the original content of the note if cancelled' do within('.current-note-edit-form') do fill_in 'note[note]', with: 'Some new content' - find('[data-testid="cancel"]').click + find_by_testid('cancel').click end page.within('.modal') do diff --git a/spec/features/merge_request/user_resolves_conflicts_spec.rb b/spec/features/merge_request/user_resolves_conflicts_spec.rb index 2fdd0a7dd51a582d772041472fae448dccff05bc..c236b5d4bf114d3eb4478269f3801b2d3f1a95d4 100644 --- a/spec/features/merge_request/user_resolves_conflicts_spec.rb +++ b/spec/features/merge_request/user_resolves_conflicts_spec.rb @@ -181,7 +181,7 @@ def create_merge_request(source_branch) end it "renders bad name without xss issues" do - expect(find('[data-testid="resolve-info"]')).to have_content(bad_branch_name) + expect(find_by_testid('resolve-info')).to have_content(bad_branch_name) end end end diff --git a/spec/features/merge_request/user_sees_merge_widget_spec.rb b/spec/features/merge_request/user_sees_merge_widget_spec.rb index 4327a08efb9e53f17126b953cec557e56ffb03b8..5448d6867cb0a1991ed15e317d05e8d12f5ddd93 100644 --- a/spec/features/merge_request/user_sees_merge_widget_spec.rb +++ b/spec/features/merge_request/user_sees_merge_widget_spec.rb @@ -14,7 +14,7 @@ let(:merge_request_in_only_mwps_project) { create(:merge_request, source_project: project_only_mwps) } def click_expand_button - find('[data-testid="toggle-button"]').click + find_by_testid('toggle-button').click end before do @@ -76,8 +76,6 @@ def click_expand_button end it 'allows me to merge, see cherry-pick modal and load branches list', :sidekiq_might_not_need_inline do - modal_selector = '[data-testid="modal-commit"]' - wait_for_requests click_button 'Merge' @@ -87,16 +85,18 @@ def click_expand_button click_button 'Cherry-pick' - page.within(modal_selector) do + within_testid('modal-commit') do click_button 'master' end - page.within("#{modal_selector} [data-testid=\"base-dropdown-menu\"]") do - fill_in 'Search branches', with: '' + within_testid('modal-commit') do + within_testid('base-dropdown-menu') do + fill_in 'Search branches', with: '' - wait_for_requests + wait_for_requests - expect(page).to have_selector('[data-testid="listbox-item-master"]', visible: true) + expect(page).to have_selector('[data-testid="listbox-item-master"]', visible: true) + end end end end @@ -143,17 +143,15 @@ def click_expand_button end it 'allows me to merge with a failed pipeline' do - modal_selector = '[data-testid="merge-failed-pipeline-confirmation-dialog"]' - wait_for_requests click_button 'Merge...' - page.within(modal_selector) do + within_testid('merge-failed-pipeline-confirmation-dialog') do click_button 'Merge unverified changes' end - expect(find('[data-testid="merging-state"]')).to have_content('Merging!') + expect(find_by_testid('merging-state')).to have_content('Merging!') end end @@ -625,11 +623,11 @@ def compared_data end it 'shows test reports summary which includes the new failure' do - within('[data-testid="widget-extension"]') do + within_testid('widget-extension') do click_expand_button expect(page).to have_content('Test summary: 1 failed, 2 total tests') - within('[data-testid="widget-extension-collapsed-section"]') do + within_testid('widget-extension-collapsed-section') do expect(page).to have_content('rspec: no changed test results, 1 total test') expect(page).to have_content('junit: 1 failed, 1 total test') expect(page).to have_content('New') @@ -640,15 +638,15 @@ def compared_data context 'when user clicks the new failure' do it 'shows the test report detail' do - within('[data-testid="widget-extension"]') do + within_testid('widget-extension') do click_expand_button - within('[data-testid="widget-extension-collapsed-section"]') do + within_testid('widget-extension-collapsed-section') do click_button 'View details' end end - within('[data-testid="test-case-details-modal"]') do + within_testid('test-case-details-modal') do expect(page).to have_content('addTest') expect(page).to have_content('6.66') expect(page).to have_content(sample_java_failed_message.gsub(/\s+/, ' ').strip) @@ -673,11 +671,11 @@ def compared_data end it 'shows test reports summary which includes the existing failure' do - within('[data-testid="widget-extension"]') do + within_testid('widget-extension') do click_expand_button expect(page).to have_content('Test summary: 1 failed, 2 total tests') - within('[data-testid="widget-extension-collapsed-section"]') do + within_testid('widget-extension-collapsed-section') do expect(page).to have_content('rspec: 1 failed, 1 total test') expect(page).to have_content('junit: no changed test results, 1 total test') expect(page).to have_content('Test#sum when a is 1 and b is 3 returns summary') @@ -687,15 +685,15 @@ def compared_data context 'when user clicks the existing failure' do it 'shows test report detail of it' do - within('[data-testid="widget-extension"]') do + within_testid('widget-extension') do click_expand_button - within('[data-testid="widget-extension-collapsed-section"]') do + within_testid('widget-extension-collapsed-section') do click_button 'View details' end end - within('[data-testid="test-case-details-modal"]') do + within_testid('test-case-details-modal') do expect(page).to have_content('Test#sum when a is 1 and b is 3 returns summary') expect(page).to have_content('2.22') expect(page).to have_content(sample_rspec_failed_message.gsub(/\s+/, ' ').strip) @@ -720,11 +718,11 @@ def compared_data end it 'shows test reports summary which includes the resolved failure' do - within('[data-testid="widget-extension"]') do + within_testid('widget-extension') do click_expand_button expect(page).to have_content('Test summary: 1 fixed test result, 2 total tests') - within('[data-testid="widget-extension-collapsed-section"]') do + within_testid('widget-extension-collapsed-section') do expect(page).to have_content('rspec: no changed test results, 1 total test') expect(page).to have_content('junit: 1 fixed test result, 1 total test') expect(page).to have_content('Fixed') @@ -735,15 +733,15 @@ def compared_data context 'when user clicks the resolved failure' do it 'shows test report detail of it' do - within('[data-testid="widget-extension"]') do + within_testid('widget-extension') do click_expand_button - within('[data-testid="widget-extension-collapsed-section"]') do + within_testid('widget-extension-collapsed-section') do click_button 'View details' end end - within('[data-testid="test-case-details-modal"]') do + within_testid('test-case-details-modal') do expect(page).to have_content('addTest') expect(page).to have_content('5.55') end @@ -767,11 +765,11 @@ def compared_data end it 'shows test reports summary which includes the new error' do - within('[data-testid="widget-extension"]') do + within_testid('widget-extension') do click_expand_button expect(page).to have_content('Test summary: 1 error, 2 total tests') - within('[data-testid="widget-extension-collapsed-section"]') do + within_testid('widget-extension-collapsed-section') do expect(page).to have_content('rspec: no changed test results, 1 total test') expect(page).to have_content('junit: 1 error, 1 total test') expect(page).to have_content('New') @@ -782,15 +780,15 @@ def compared_data context 'when user clicks the new error' do it 'shows the test report detail' do - within('[data-testid="widget-extension"]') do + within_testid('widget-extension') do click_expand_button - within('[data-testid="widget-extension-collapsed-section"]') do + within_testid('widget-extension-collapsed-section') do click_button 'View details' end end - within('[data-testid="test-case-details-modal"]') do + within_testid('test-case-details-modal') do expect(page).to have_content('addTest') expect(page).to have_content('8.88') end @@ -814,11 +812,11 @@ def compared_data end it 'shows test reports summary which includes the existing error' do - within('[data-testid="widget-extension"]') do + within_testid('widget-extension') do click_expand_button expect(page).to have_content('Test summary: 1 error, 2 total tests') - within('[data-testid="widget-extension-collapsed-section"]') do + within_testid('widget-extension-collapsed-section') do expect(page).to have_content('rspec: 1 error, 1 total test') expect(page).to have_content('junit: no changed test results, 1 total test') expect(page).to have_content('Test#sum when a is 4 and b is 4 returns summary') @@ -828,15 +826,15 @@ def compared_data context 'when user clicks the existing error' do it 'shows test report detail of it' do - within('[data-testid="widget-extension"]') do + within_testid('widget-extension') do click_expand_button - within('[data-testid="widget-extension-collapsed-section"]') do + within_testid('widget-extension-collapsed-section') do click_button 'View details' end end - within('[data-testid="test-case-details-modal"]') do + within_testid('test-case-details-modal') do expect(page).to have_content('Test#sum when a is 4 and b is 4 returns summary') expect(page).to have_content('4.44') end @@ -860,11 +858,11 @@ def compared_data end it 'shows test reports summary which includes the resolved error' do - within('[data-testid="widget-extension"]') do + within_testid('widget-extension') do click_expand_button expect(page).to have_content('Test summary: 1 fixed test result, 2 total tests') - within('[data-testid="widget-extension-collapsed-section"]') do + within_testid('widget-extension-collapsed-section') do expect(page).to have_content('rspec: no changed test results, 1 total test') expect(page).to have_content('junit: 1 fixed test result, 1 total test') expect(page).to have_content('Fixed') @@ -875,15 +873,15 @@ def compared_data context 'when user clicks the resolved error' do it 'shows test report detail of it' do - within('[data-testid="widget-extension"]') do + within_testid('widget-extension') do click_expand_button - within('[data-testid="widget-extension-collapsed-section"]') do + within_testid('widget-extension-collapsed-section') do click_button 'View details' end end - within('[data-testid="test-case-details-modal"]') do + within_testid('test-case-details-modal') do expect(page).to have_content('addTest') expect(page).to have_content('5.55') end @@ -915,11 +913,11 @@ def compared_data end it 'shows test reports summary which includes the resolved failure' do - within('[data-testid="widget-extension"]') do + within_testid('widget-extension') do click_expand_button expect(page).to have_content('Test summary: 20 failed, 20 total tests') - within('[data-testid="widget-extension-collapsed-section"]') do + within_testid('widget-extension-collapsed-section') do expect(page).to have_content('rspec: 10 failed, 10 total tests') expect(page).to have_content('junit: 10 failed, 10 total tests')