diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-11-19 08:27:35 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-11-19 08:27:35 +0000 |
commit | 7e9c479f7de77702622631cff2628a9c8dcbc627 (patch) | |
tree | c8f718a08e110ad7e1894510980d2155a6549197 /spec/features/issues | |
parent | e852b0ae16db4052c1c567d9efa4facc81146e88 (diff) | |
download | gitlab-ce-7e9c479f7de77702622631cff2628a9c8dcbc627.tar.gz |
Add latest changes from gitlab-org/gitlab@13-6-stable-eev13.6.0-rc42
Diffstat (limited to 'spec/features/issues')
8 files changed, 85 insertions, 5 deletions
diff --git a/spec/features/issues/create_issue_for_discussions_in_merge_request_spec.rb b/spec/features/issues/create_issue_for_discussions_in_merge_request_spec.rb index 12682905559..0f0146a26a2 100644 --- a/spec/features/issues/create_issue_for_discussions_in_merge_request_spec.rb +++ b/spec/features/issues/create_issue_for_discussions_in_merge_request_spec.rb @@ -18,6 +18,10 @@ RSpec.describe 'Resolving all open threads in a merge request from an issue', :j end end + before do + stub_feature_flags(remove_resolve_note: false) + end + describe 'as a user with access to the project' do before do project.add_maintainer(user) diff --git a/spec/features/issues/create_issue_for_single_discussion_in_merge_request_spec.rb b/spec/features/issues/create_issue_for_single_discussion_in_merge_request_spec.rb index 55a02dc4255..b449939a70c 100644 --- a/spec/features/issues/create_issue_for_single_discussion_in_merge_request_spec.rb +++ b/spec/features/issues/create_issue_for_single_discussion_in_merge_request_spec.rb @@ -14,6 +14,10 @@ RSpec.describe 'Resolve an open thread in a merge request by creating an issue', "a[title=\"#{title}\"][href=\"#{url}\"]" end + before do + stub_feature_flags(remove_resolve_note: false) + end + describe 'As a user with access to the project' do before do project.add_maintainer(user) diff --git a/spec/features/issues/gfm_autocomplete_spec.rb b/spec/features/issues/gfm_autocomplete_spec.rb index ff78b9e608f..06f79f94e8d 100644 --- a/spec/features/issues/gfm_autocomplete_spec.rb +++ b/spec/features/issues/gfm_autocomplete_spec.rb @@ -535,6 +535,21 @@ RSpec.describe 'GFM autocomplete', :js do expect(find('.tribute-container ul', visible: true)).to have_text(user_xss.username) end + it 'opens autocomplete menu for Milestone when field starts with text with item escaping HTML characters' do + milestone_xss_title = 'alert milestone <img src=x onerror="alert(\'Hello xss\');" a' + create(:milestone, project: project, title: milestone_xss_title) + + page.within '.timeline-content-form' do + find('#note-body').native.send_keys('%') + end + + wait_for_requests + + expect(page).to have_selector('.tribute-container', visible: true) + + expect(find('.tribute-container ul', visible: true)).to have_text('alert milestone') + end + it 'selects the first item for assignee dropdowns' do page.within '.timeline-content-form' do find('#note-body').native.send_keys('@') @@ -799,6 +814,13 @@ RSpec.describe 'GFM autocomplete', :js do end end + context 'issues' do + let(:object) { issue } + let(:expected_body) { object.to_reference } + + it_behaves_like 'autocomplete suggestions' + end + context 'merge requests' do let(:object) { create(:merge_request, source_project: project) } let(:expected_body) { object.to_reference } @@ -806,6 +828,27 @@ RSpec.describe 'GFM autocomplete', :js do it_behaves_like 'autocomplete suggestions' end + context 'project snippets' do + let!(:object) { create(:project_snippet, project: project, title: 'code snippet') } + let(:expected_body) { object.to_reference } + + it_behaves_like 'autocomplete suggestions' + end + + context 'label' do + let!(:object) { label } + let(:expected_body) { object.title } + + it_behaves_like 'autocomplete suggestions' + end + + context 'milestone' do + let!(:object) { create(:milestone, project: project) } + let(:expected_body) { object.to_reference } + + it_behaves_like 'autocomplete suggestions' + end + context 'when other notes are destroyed' do let!(:discussion) { create(:discussion_note_on_issue, noteable: issue, project: issue.project) } diff --git a/spec/features/issues/user_creates_branch_and_merge_request_spec.rb b/spec/features/issues/user_creates_branch_and_merge_request_spec.rb index 617eac88973..e225a45481d 100644 --- a/spec/features/issues/user_creates_branch_and_merge_request_spec.rb +++ b/spec/features/issues/user_creates_branch_and_merge_request_spec.rb @@ -250,7 +250,7 @@ RSpec.describe 'User creates branch and merge request on issue page', :js do def test_selection_mark(li_create_branch, li_create_merge_request, button_create_target, button_create_merge_request) page.within(li_create_merge_request) do - expect(page).to have_css('i.fa.fa-check') + expect(page).to have_selector('[data-testid="check-icon"]') expect(button_create_target).to have_text('Create merge request') expect(button_create_merge_request).to have_text('Create merge request') end @@ -258,7 +258,7 @@ RSpec.describe 'User creates branch and merge request on issue page', :js do li_create_branch.click page.within(li_create_branch) do - expect(page).to have_css('i.fa.fa-check') + expect(page).to have_selector('[data-testid="check-icon"]') expect(button_create_target).to have_text('Create branch') expect(button_create_merge_request).to have_text('Create branch') end diff --git a/spec/features/issues/user_edits_issue_spec.rb b/spec/features/issues/user_edits_issue_spec.rb index de746415205..11b905735de 100644 --- a/spec/features/issues/user_edits_issue_spec.rb +++ b/spec/features/issues/user_edits_issue_spec.rb @@ -138,6 +138,33 @@ RSpec.describe "Issues > User edits issue", :js do expect(page).not_to have_text('verisimilitude') end end + + it 'can remove label without removing label added via quick action', :aggregate_failures do + # Add `syzygy` label with a quick action + note = find('#note-body') + page.within '.timeline-content-form' do + note.native.send_keys('/label ~syzygy') + end + click_button 'Comment' + + wait_for_requests + + page.within '.block.labels' do + # Remove `verisimilitude` label + within '.gl-label' do + click_button + end + + wait_for_requests + + expect(page).to have_text('syzygy') + expect(page).not_to have_text('verisimilitude') + end + + expect(page).to have_text('removed verisimilitude label') + expect(page).not_to have_text('removed syzygy verisimilitude labels') + expect(issue.reload.labels.map(&:title)).to contain_exactly('syzygy') + end end describe 'update assignee' do diff --git a/spec/features/issues/user_interacts_with_awards_spec.rb b/spec/features/issues/user_interacts_with_awards_spec.rb index 7db72f2cd05..fec603e466a 100644 --- a/spec/features/issues/user_interacts_with_awards_spec.rb +++ b/spec/features/issues/user_interacts_with_awards_spec.rb @@ -68,7 +68,7 @@ RSpec.describe 'User interacts with awards' do page.within('.awards') do expect(page).to have_selector('.js-emoji-btn') expect(page.find('.js-emoji-btn.active .js-counter')).to have_content('1') - expect(page).to have_css(".js-emoji-btn.active[data-original-title='You']") + expect(page).to have_css(".js-emoji-btn.active[title='You']") expect do page.find('.js-emoji-btn.active').click @@ -294,7 +294,7 @@ RSpec.describe 'User interacts with awards' do end end - it 'toggles the smiley emoji on a note', :js do + it 'toggles the smiley emoji on a note', :js, quarantine: 'https://gitlab.com/gitlab-org/gitlab/-/issues/267525' do toggle_smiley_emoji(true) within('.note-body') do diff --git a/spec/features/issues/user_sees_live_update_spec.rb b/spec/features/issues/user_sees_live_update_spec.rb index d27cdb774a5..79c6978cbc0 100644 --- a/spec/features/issues/user_sees_live_update_spec.rb +++ b/spec/features/issues/user_sees_live_update_spec.rb @@ -26,7 +26,7 @@ RSpec.describe 'Issues > User sees live update', :js do end describe 'confidential issue#show' do - it 'shows confidential sibebar information as confidential and can be turned off' do + it 'shows confidential sibebar information as confidential and can be turned off', quarantine: 'https://gitlab.com/gitlab-org/gitlab/-/issues/254644' do issue = create(:issue, :confidential, project: project) visit project_issue_path(project, issue) diff --git a/spec/features/issues/user_views_issue_spec.rb b/spec/features/issues/user_views_issue_spec.rb index 9b1c8be1513..4128f3478bb 100644 --- a/spec/features/issues/user_views_issue_spec.rb +++ b/spec/features/issues/user_views_issue_spec.rb @@ -13,6 +13,8 @@ RSpec.describe "User views issue" do end before do + stub_feature_flags(vue_issue_header: false) + sign_in(user) visit(project_issue_path(project, issue)) |