diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-05-11 09:10:29 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-05-11 09:10:29 +0300 |
commit | b7eed2ea49477a8baa7d9b0cf8034c799cde2e0f (patch) | |
tree | 38df0de2d4c7344a07d55f7cf5914344ba88e8e6 /spec/services/issues | |
parent | 11bfe6f3835256acf60ef98f9e2a37f417418681 (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/services/issues')
-rw-r--r-- | spec/services/issues/close_service_spec.rb | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/spec/services/issues/close_service_spec.rb b/spec/services/issues/close_service_spec.rb index 3cf45143594..8e02a07c0cd 100644 --- a/spec/services/issues/close_service_spec.rb +++ b/spec/services/issues/close_service_spec.rb @@ -91,7 +91,7 @@ RSpec.describe Issues::CloseService do end end - context 'with innactive external issue tracker supporting close_issue' do + context 'with inactive external issue tracker supporting close_issue' do let!(:external_issue_tracker) { create(:jira_service, project: project, active: false) } it 'does not close the issue on the external issue tracker' do @@ -220,6 +220,14 @@ RSpec.describe Issues::CloseService do end end + it 'verifies the number of queries' do + recorded = ActiveRecord::QueryRecorder.new { close_issue } + expected_queries = 23 + + expect(recorded.count).to be <= expected_queries + expect(recorded.cached_count).to eq(0) + end + it 'closes the issue' do close_issue @@ -230,7 +238,7 @@ RSpec.describe Issues::CloseService do it 'records closed user' do close_issue - expect(issue.closed_by_id).to be(user.id) + expect(issue.reload.closed_by_id).to be(user.id) end it 'sends email to user2 about assign of new issue', :sidekiq_might_not_need_inline do @@ -254,6 +262,16 @@ RSpec.describe Issues::CloseService do expect(todo.reload).to be_done end + context 'when closing the issue fails' do + it 'does not assign a closed_by value for the issue' do + allow(issue).to receive(:close).and_return(false) + + close_issue + + expect(issue.closed_by_id).to be_nil + end + end + context 'when there is an associated Alert Management Alert' do context 'when alert can be resolved' do let!(:alert) { create(:alert_management_alert, issue: issue, project: project) } |