diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-07-20 15:40:28 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-07-20 15:40:28 +0000 |
commit | b595cb0c1dec83de5bdee18284abe86614bed33b (patch) | |
tree | 8c3d4540f193c5ff98019352f554e921b3a41a72 /spec/features/merge_request | |
parent | 2f9104a328fc8a4bddeaa4627b595166d24671d0 (diff) | |
download | gitlab-ce-b595cb0c1dec83de5bdee18284abe86614bed33b.tar.gz |
Add latest changes from gitlab-org/gitlab@15-2-stable-eev15.2.0-rc42
Diffstat (limited to 'spec/features/merge_request')
10 files changed, 50 insertions, 80 deletions
diff --git a/spec/features/merge_request/batch_comments_spec.rb b/spec/features/merge_request/batch_comments_spec.rb index f03c812ebb5..fafaea8ac68 100644 --- a/spec/features/merge_request/batch_comments_spec.rb +++ b/spec/features/merge_request/batch_comments_spec.rb @@ -45,25 +45,13 @@ RSpec.describe 'Merge request > Batch comments', :js do expect(page).to have_selector('.note:not(.draft-note)', text: 'Line is wrong') end - it 'publishes single comment' do - write_diff_comment - - click_button 'Add comment now' - - wait_for_requests - - expect(page).not_to have_selector('.draft-note-component', text: 'Line is wrong') - - expect(page).to have_selector('.note:not(.draft-note)', text: 'Line is wrong') - end - it 'deletes draft note' do write_diff_comment find('.js-note-delete').click page.within('.modal') do - click_button('Delete Comment', match: :first) + click_button('Delete comment', match: :first) end wait_for_requests diff --git a/spec/features/merge_request/user_comments_on_diff_spec.rb b/spec/features/merge_request/user_comments_on_diff_spec.rb index 06b29969775..f21929e5275 100644 --- a/spec/features/merge_request/user_comments_on_diff_spec.rb +++ b/spec/features/merge_request/user_comments_on_diff_spec.rb @@ -253,7 +253,7 @@ RSpec.describe 'User comments on a diff', :js do end page.within('.modal') do - click_button('Delete Comment', match: :first) + click_button('Delete comment', match: :first) end page.within('.merge-request-tabs') do diff --git a/spec/features/merge_request/user_creates_merge_request_spec.rb b/spec/features/merge_request/user_creates_merge_request_spec.rb index 2bf8e9ba6a4..c8b22bb3125 100644 --- a/spec/features/merge_request/user_creates_merge_request_spec.rb +++ b/spec/features/merge_request/user_creates_merge_request_spec.rb @@ -15,39 +15,27 @@ RSpec.describe "User creates a merge request", :js do sign_in(user) end - context 'when completed the compare branches form' do - before do - visit(project_new_merge_request_path(project)) + it "creates a merge request" do + visit(project_new_merge_request_path(project)) - find(".js-source-branch").click - click_link("fix") + find(".js-source-branch").click + click_link("fix") - find(".js-target-branch").click - click_link("feature") + find(".js-target-branch").click + click_link("feature") - click_button("Compare branches") - end + click_button("Compare branches") - it "shows merge request form" do - page.within('.merge-request-form') do - expect(page.find('#merge_request_description')['placeholder']).to eq 'Describe the goal of the changes and what reviewers should be aware of.' - end + page.within('.merge-request-form') do + expect(page.find('#merge_request_description')['placeholder']).to eq 'Describe the goal of the changes and what reviewers should be aware of.' end - context "when completed the merge request form" do - before do - fill_in("Title", with: title) - click_button("Create merge request") - end + fill_in("Title", with: title) + click_button("Create merge request") - it "creates a merge request" do - page.within(".merge-request") do - expect(page).to have_content(title) - end - end + page.within(".merge-request") do + expect(page).to have_content(title) end - - it_behaves_like 'merge request author auto assign' end context "XSS branch name exists" do diff --git a/spec/features/merge_request/user_posts_diff_notes_spec.rb b/spec/features/merge_request/user_posts_diff_notes_spec.rb index 8a310aba77b..d461170c990 100644 --- a/spec/features/merge_request/user_posts_diff_notes_spec.rb +++ b/spec/features/merge_request/user_posts_diff_notes_spec.rb @@ -103,7 +103,7 @@ RSpec.describe 'Merge request > User posts diff notes', :js do it 'allows commenting' do should_allow_commenting(find_by_scrolling('[id="2f6fcd96b88b36ce98c38da085c795a27d92a3dd_10_9"]')) - accept_gl_confirm(button_text: 'Delete Comment') do + accept_gl_confirm(button_text: 'Delete comment') do first('button.more-actions-toggle').click first('.js-note-delete').click end diff --git a/spec/features/merge_request/user_scrolls_to_note_on_load_spec.rb b/spec/features/merge_request/user_scrolls_to_note_on_load_spec.rb index 56517a97716..60ea168940a 100644 --- a/spec/features/merge_request/user_scrolls_to_note_on_load_spec.rb +++ b/spec/features/merge_request/user_scrolls_to_note_on_load_spec.rb @@ -73,7 +73,7 @@ RSpec.describe 'Merge request > User scrolls to note on load', :js do note_element = find(collapsed_fragment_id) expect(note_element.visible?).to eq(true) - expect(note_element.sibling('.replies-toggle')[:class]).to include('expanded') + expect(note_element.sibling('li:nth-child(2)')).to have_button s_('Notes|Collapse replies') end end end diff --git a/spec/features/merge_request/user_sees_avatar_on_diff_notes_spec.rb b/spec/features/merge_request/user_sees_avatar_on_diff_notes_spec.rb index 0e9ff98c3e1..8225fcbfd89 100644 --- a/spec/features/merge_request/user_sees_avatar_on_diff_notes_spec.rb +++ b/spec/features/merge_request/user_sees_avatar_on_diff_notes_spec.rb @@ -124,7 +124,7 @@ RSpec.describe 'Merge request > User sees avatars on diff notes', :js do it 'removes avatar when note is deleted' do open_more_actions_dropdown(note) - accept_gl_confirm(button_text: 'Delete Comment') do + accept_gl_confirm(button_text: 'Delete comment') do find(".note-row-#{note.id} .js-note-delete").click end diff --git a/spec/features/merge_request/user_sees_deployment_widget_spec.rb b/spec/features/merge_request/user_sees_deployment_widget_spec.rb index 81034caaee2..e045f11c0d8 100644 --- a/spec/features/merge_request/user_sees_deployment_widget_spec.rb +++ b/spec/features/merge_request/user_sees_deployment_widget_spec.rb @@ -20,7 +20,7 @@ RSpec.describe 'Merge request > User sees deployment widget', :js do before do merge_request.update!(merge_commit_sha: sha) - project.add_user(user, role) + project.add_member(user, role) sign_in(user) 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 2dafd66b406..1d3effd4a2a 100644 --- a/spec/features/merge_request/user_sees_merge_widget_spec.rb +++ b/spec/features/merge_request/user_sees_merge_widget_spec.rb @@ -591,14 +591,14 @@ RSpec.describe 'Merge request > User sees merge widget', :js do context 'when a new failures exists' do let(:base_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) reports.get_suite('junit').add_test_case(create_test_case_java_success) end end let(:head_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) reports.get_suite('junit').add_test_case(create_test_case_java_failed) end @@ -639,14 +639,14 @@ RSpec.describe 'Merge request > User sees merge widget', :js do context 'when an existing failure exists' do let(:base_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| reports.get_suite('rspec').add_test_case(create_test_case_rspec_failed) reports.get_suite('junit').add_test_case(create_test_case_java_success) end end let(:head_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| reports.get_suite('rspec').add_test_case(create_test_case_rspec_failed) reports.get_suite('junit').add_test_case(create_test_case_java_success) end @@ -686,14 +686,14 @@ RSpec.describe 'Merge request > User sees merge widget', :js do context 'when a resolved failure exists' do let(:base_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) reports.get_suite('junit').add_test_case(create_test_case_java_failed) end end let(:head_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) reports.get_suite('junit').add_test_case(create_test_case_java_success) end @@ -732,14 +732,14 @@ RSpec.describe 'Merge request > User sees merge widget', :js do context 'when a new error exists' do let(:base_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) reports.get_suite('junit').add_test_case(create_test_case_java_success) end end let(:head_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) reports.get_suite('junit').add_test_case(create_test_case_java_error) end @@ -779,14 +779,14 @@ RSpec.describe 'Merge request > User sees merge widget', :js do context 'when an existing error exists' do let(:base_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| reports.get_suite('rspec').add_test_case(create_test_case_rspec_error) reports.get_suite('junit').add_test_case(create_test_case_java_success) end end let(:head_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| reports.get_suite('rspec').add_test_case(create_test_case_rspec_error) reports.get_suite('junit').add_test_case(create_test_case_java_success) end @@ -825,14 +825,14 @@ RSpec.describe 'Merge request > User sees merge widget', :js do context 'when a resolved error exists' do let(:base_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) reports.get_suite('junit').add_test_case(create_test_case_java_error) end end let(:head_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) reports.get_suite('junit').add_test_case(create_test_case_java_success) end @@ -871,7 +871,7 @@ RSpec.describe 'Merge request > User sees merge widget', :js do context 'properly truncates the report' do let(:base_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| 10.times do |index| reports.get_suite('rspec').add_test_case( create_test_case_rspec_failed(index)) @@ -882,7 +882,7 @@ RSpec.describe 'Merge request > User sees merge widget', :js do end let(:head_reports) do - Gitlab::Ci::Reports::TestReports.new.tap do |reports| + Gitlab::Ci::Reports::TestReport.new.tap do |reports| 10.times do |index| reports.get_suite('rspec').add_test_case( create_test_case_rspec_failed(index)) diff --git a/spec/features/merge_request/user_sees_pipelines_spec.rb b/spec/features/merge_request/user_sees_pipelines_spec.rb index 9696b1ff551..16b1de0393f 100644 --- a/spec/features/merge_request/user_sees_pipelines_spec.rb +++ b/spec/features/merge_request/user_sees_pipelines_spec.rb @@ -123,10 +123,6 @@ RSpec.describe 'Merge request > User sees pipelines', :js do context 'when actor is a developer in parent project' do let(:actor) { developer_in_parent } - before do - stub_feature_flags(ci_disallow_to_create_merge_request_pipelines_in_target_project: false) - end - it 'creates a pipeline in the parent project when user proceeds with the warning' do visit project_merge_request_path(parent_project, merge_request) diff --git a/spec/features/merge_request/user_sees_versions_spec.rb b/spec/features/merge_request/user_sees_versions_spec.rb index 4465d7e29be..2c2a2dfd4a8 100644 --- a/spec/features/merge_request/user_sees_versions_spec.rb +++ b/spec/features/merge_request/user_sees_versions_spec.rb @@ -24,23 +24,21 @@ RSpec.describe 'Merge request > User sees versions', :js do visit diffs_project_merge_request_path(project, merge_request, params) end - shared_examples 'allows commenting' do |file_id:, line_code:, comment:| + shared_examples 'allows commenting' do |file_name:, line_text:, comment:| it do - diff_file_selector = ".diff-file[id='#{file_id}']" - line_code = "#{file_id}_#{line_code}" + page.within find_by_scrolling('.diff-file', text: file_name) do + line_code_element = page.find('.diff-grid-row', text: line_text) - page.within find_by_scrolling(diff_file_selector) do - line_code_element = first("[id='#{line_code}']") # scrolling to element's bottom is required in order for .hover action to work # otherwise, the element could be hidden underneath a sticky header scroll_to_elements_bottom(line_code_element) line_code_element.hover - first("[id='#{line_code}'] [role='button']").click + page.find("[data-testid='left-comment-button']", visible: true).click - page.within("form[data-line-code='#{line_code}']") do - fill_in "note[note]", with: comment - click_button('Add comment now') - end + expect(page).to have_selector("form", count: 1) + + fill_in("note[note]", with: comment) + click_button('Add comment now') wait_for_requests @@ -59,8 +57,8 @@ RSpec.describe 'Merge request > User sees versions', :js do end it_behaves_like 'allows commenting', - file_id: '7445606fbf8f3683cd42bdc54b05d7a0bc2dfc44', - line_code: '1_1', + file_name: '.gitmodules', + line_text: '[submodule "six"]', comment: 'Typo, please fix.' end @@ -107,8 +105,8 @@ RSpec.describe 'Merge request > User sees versions', :js do end it_behaves_like 'allows commenting', - file_id: '7445606fbf8f3683cd42bdc54b05d7a0bc2dfc44', - line_code: '2_2', + file_name: '.gitmodules', + line_text: 'path = six', comment: 'Typo, please fix.' end @@ -174,9 +172,9 @@ RSpec.describe 'Merge request > User sees versions', :js do end it_behaves_like 'allows commenting', - file_id: '7445606fbf8f3683cd42bdc54b05d7a0bc2dfc44', - line_code: '4_4', - comment: 'Typo, please fix.' + file_name: '.gitmodules', + line_text: '[submodule "gitlab-shell"]', + comment: 'Typo, please fix.' end describe 'compare with same version' do @@ -241,8 +239,8 @@ RSpec.describe 'Merge request > User sees versions', :js do end it_behaves_like 'allows commenting', - file_id: '2f6fcd96b88b36ce98c38da085c795a27d92a3dd', - line_code: '6_6', + file_name: 'files/ruby/popen.rb', + line_text: 'RuntimeError', comment: 'Typo, please fix.' end end |