diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-07-20 12:26:25 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-07-20 12:26:25 +0000 |
commit | a09983ae35713f5a2bbb100981116d31ce99826e (patch) | |
tree | 2ee2af7bd104d57086db360a7e6d8c9d5d43667a /spec/services/issues | |
parent | 18c5ab32b738c0b6ecb4d0df3994000482f34bd8 (diff) | |
download | gitlab-ce-a09983ae35713f5a2bbb100981116d31ce99826e.tar.gz |
Add latest changes from gitlab-org/gitlab@13-2-stable-ee
Diffstat (limited to 'spec/services/issues')
-rw-r--r-- | spec/services/issues/build_service_spec.rb | 2 | ||||
-rw-r--r-- | spec/services/issues/close_service_spec.rb | 2 | ||||
-rw-r--r-- | spec/services/issues/create_service_spec.rb | 6 | ||||
-rw-r--r-- | spec/services/issues/duplicate_service_spec.rb | 2 | ||||
-rw-r--r-- | spec/services/issues/export_csv_service_spec.rb | 2 | ||||
-rw-r--r-- | spec/services/issues/import_csv_service_spec.rb | 2 | ||||
-rw-r--r-- | spec/services/issues/move_service_spec.rb | 47 | ||||
-rw-r--r-- | spec/services/issues/referenced_merge_requests_service_spec.rb | 2 | ||||
-rw-r--r-- | spec/services/issues/related_branches_service_spec.rb | 2 | ||||
-rw-r--r-- | spec/services/issues/reopen_service_spec.rb | 2 | ||||
-rw-r--r-- | spec/services/issues/reorder_service_spec.rb | 2 | ||||
-rw-r--r-- | spec/services/issues/resolve_discussions_spec.rb | 2 | ||||
-rw-r--r-- | spec/services/issues/update_service_spec.rb | 7 | ||||
-rw-r--r-- | spec/services/issues/zoom_link_service_spec.rb | 2 |
14 files changed, 67 insertions, 15 deletions
diff --git a/spec/services/issues/build_service_spec.rb b/spec/services/issues/build_service_spec.rb index 140b78f9b7a..68b226b02da 100644 --- a/spec/services/issues/build_service_spec.rb +++ b/spec/services/issues/build_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper.rb' -describe Issues::BuildService do +RSpec.describe Issues::BuildService do let(:project) { create(:project, :repository) } let(:user) { create(:user) } diff --git a/spec/services/issues/close_service_spec.rb b/spec/services/issues/close_service_spec.rb index 78eba565de4..6678d831775 100644 --- a/spec/services/issues/close_service_spec.rb +++ b/spec/services/issues/close_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Issues::CloseService do +RSpec.describe Issues::CloseService do let(:project) { create(:project, :repository) } let(:user) { create(:user, email: "user@example.com") } let(:user2) { create(:user, email: "user2@example.com") } diff --git a/spec/services/issues/create_service_spec.rb b/spec/services/issues/create_service_spec.rb index bb02941576a..fdf2326b75e 100644 --- a/spec/services/issues/create_service_spec.rb +++ b/spec/services/issues/create_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Issues::CreateService do +RSpec.describe Issues::CreateService do let(:project) { create(:project) } let(:user) { create(:user) } @@ -284,7 +284,9 @@ describe Issues::CreateService do end end - it_behaves_like 'new issuable record that supports quick actions' + it_behaves_like 'issuable record that supports quick actions' do + let(:issuable) { described_class.new(project, user, params).execute } + end context 'Quick actions' do context 'with assignee and milestone in params and command' do diff --git a/spec/services/issues/duplicate_service_spec.rb b/spec/services/issues/duplicate_service_spec.rb index 41a151b0ca1..78e030e6ac7 100644 --- a/spec/services/issues/duplicate_service_spec.rb +++ b/spec/services/issues/duplicate_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Issues::DuplicateService do +RSpec.describe Issues::DuplicateService do let(:user) { create(:user) } let(:canonical_project) { create(:project) } let(:duplicate_project) { create(:project) } diff --git a/spec/services/issues/export_csv_service_spec.rb b/spec/services/issues/export_csv_service_spec.rb index 419e29d92a8..76381fe525b 100644 --- a/spec/services/issues/export_csv_service_spec.rb +++ b/spec/services/issues/export_csv_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Issues::ExportCsvService do +RSpec.describe Issues::ExportCsvService do let_it_be(:user) { create(:user) } let(:group) { create(:group) } let(:project) { create(:project, :public, group: group) } diff --git a/spec/services/issues/import_csv_service_spec.rb b/spec/services/issues/import_csv_service_spec.rb index 92b88489af9..cc3e1d23a74 100644 --- a/spec/services/issues/import_csv_service_spec.rb +++ b/spec/services/issues/import_csv_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Issues::ImportCsvService do +RSpec.describe Issues::ImportCsvService do let(:project) { create(:project) } let(:user) { create(:user) } diff --git a/spec/services/issues/move_service_spec.rb b/spec/services/issues/move_service_spec.rb index a449541f459..8929907a179 100644 --- a/spec/services/issues/move_service_spec.rb +++ b/spec/services/issues/move_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Issues::MoveService do +RSpec.describe Issues::MoveService do let(:user) { create(:user) } let(:author) { create(:user) } let(:title) { 'Some issue' } @@ -210,4 +210,49 @@ describe Issues::MoveService do end end end + + context 'updating sent notifications' do + let!(:old_issue_notification_1) { create(:sent_notification, project: old_issue.project, noteable: old_issue) } + let!(:old_issue_notification_2) { create(:sent_notification, project: old_issue.project, noteable: old_issue) } + let!(:other_issue_notification) { create(:sent_notification, project: old_issue.project) } + + include_context 'user can move issue' + + context 'when issue is from service desk' do + before do + allow(old_issue).to receive(:from_service_desk?).and_return(true) + end + + it 'updates moved issue sent notifications' do + new_issue = move_service.execute(old_issue, new_project) + + old_issue_notification_1.reload + old_issue_notification_2.reload + expect(old_issue_notification_1.project_id).to eq(new_issue.project_id) + expect(old_issue_notification_1.noteable_id).to eq(new_issue.id) + expect(old_issue_notification_2.project_id).to eq(new_issue.project_id) + expect(old_issue_notification_2.noteable_id).to eq(new_issue.id) + end + + it 'does not update other issues sent notifications' do + expect do + move_service.execute(old_issue, new_project) + other_issue_notification.reload + end.not_to change { other_issue_notification.noteable_id } + end + end + + context 'when issue is not from service desk' do + it 'does not update sent notifications' do + move_service.execute(old_issue, new_project) + + old_issue_notification_1.reload + old_issue_notification_2.reload + expect(old_issue_notification_1.project_id).to eq(old_issue.project_id) + expect(old_issue_notification_1.noteable_id).to eq(old_issue.id) + expect(old_issue_notification_2.project_id).to eq(old_issue.project_id) + expect(old_issue_notification_2.noteable_id).to eq(old_issue.id) + end + end + end end diff --git a/spec/services/issues/referenced_merge_requests_service_spec.rb b/spec/services/issues/referenced_merge_requests_service_spec.rb index 2c5af11d2e6..bf7a4c97e48 100644 --- a/spec/services/issues/referenced_merge_requests_service_spec.rb +++ b/spec/services/issues/referenced_merge_requests_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper.rb' -describe Issues::ReferencedMergeRequestsService do +RSpec.describe Issues::ReferencedMergeRequestsService do def create_referencing_mr(attributes = {}) create(:merge_request, attributes).tap do |merge_request| create(:note, :system, project: project, noteable: issue, author: user, note: merge_request.to_reference(full: true)) diff --git a/spec/services/issues/related_branches_service_spec.rb b/spec/services/issues/related_branches_service_spec.rb index 9f72e499414..d79132d98db 100644 --- a/spec/services/issues/related_branches_service_spec.rb +++ b/spec/services/issues/related_branches_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Issues::RelatedBranchesService do +RSpec.describe Issues::RelatedBranchesService do let_it_be(:developer) { create(:user) } let_it_be(:issue) { create(:issue) } let(:user) { developer } diff --git a/spec/services/issues/reopen_service_spec.rb b/spec/services/issues/reopen_service_spec.rb index ca878ee947a..f7416203259 100644 --- a/spec/services/issues/reopen_service_spec.rb +++ b/spec/services/issues/reopen_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Issues::ReopenService do +RSpec.describe Issues::ReopenService do let(:project) { create(:project) } let(:issue) { create(:issue, :closed, project: project) } diff --git a/spec/services/issues/reorder_service_spec.rb b/spec/services/issues/reorder_service_spec.rb index 6d72d698b1d..b6ad488a48c 100644 --- a/spec/services/issues/reorder_service_spec.rb +++ b/spec/services/issues/reorder_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Issues::ReorderService do +RSpec.describe Issues::ReorderService do let_it_be(:user) { create(:user) } let_it_be(:project) { create(:project) } let_it_be(:group) { create(:group) } diff --git a/spec/services/issues/resolve_discussions_spec.rb b/spec/services/issues/resolve_discussions_spec.rb index ec6624db6fc..a541d92feb2 100644 --- a/spec/services/issues/resolve_discussions_spec.rb +++ b/spec/services/issues/resolve_discussions_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper.rb' -describe Issues::ResolveDiscussions do +RSpec.describe Issues::ResolveDiscussions do let(:project) { create(:project, :repository) } let(:user) { create(:user) } diff --git a/spec/services/issues/update_service_spec.rb b/spec/services/issues/update_service_spec.rb index 33ae2682d01..77bd540e22f 100644 --- a/spec/services/issues/update_service_spec.rb +++ b/spec/services/issues/update_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Issues::UpdateService, :mailer do +RSpec.describe Issues::UpdateService, :mailer do let_it_be(:user) { create(:user) } let_it_be(:user2) { create(:user) } let_it_be(:user3) { create(:user) } @@ -866,5 +866,10 @@ describe Issues::UpdateService, :mailer do end end end + + it_behaves_like 'issuable record that supports quick actions' do + let(:existing_issue) { create(:issue, project: project) } + let(:issuable) { described_class.new(project, user, params).execute(existing_issue) } + end end end diff --git a/spec/services/issues/zoom_link_service_spec.rb b/spec/services/issues/zoom_link_service_spec.rb index 3fb1eae361a..56aec4fe564 100644 --- a/spec/services/issues/zoom_link_service_spec.rb +++ b/spec/services/issues/zoom_link_service_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Issues::ZoomLinkService do +RSpec.describe Issues::ZoomLinkService do let_it_be(:user) { create(:user) } let_it_be(:issue) { create(:issue) } |