diff options
Diffstat (limited to 'spec/services/merge_requests/request_review_service_spec.rb')
-rw-r--r-- | spec/services/merge_requests/request_review_service_spec.rb | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/spec/services/merge_requests/request_review_service_spec.rb b/spec/services/merge_requests/request_review_service_spec.rb index 8bc31df605c..1d3f92b083f 100644 --- a/spec/services/merge_requests/request_review_service_spec.rb +++ b/spec/services/merge_requests/request_review_service_spec.rb @@ -25,20 +25,26 @@ RSpec.describe MergeRequests::RequestReviewService do end describe '#execute' do - describe 'invalid permissions' do - let(:service) { described_class.new(project: project, current_user: create(:user)) } - + shared_examples_for 'failed service execution' do it 'returns an error' do expect(result[:status]).to eq :error end + + it_behaves_like 'does not trigger GraphQL subscription mergeRequestReviewersUpdated' do + let(:action) { result } + end + end + + describe 'invalid permissions' do + let(:service) { described_class.new(project: project, current_user: create(:user)) } + + it_behaves_like 'failed service execution' end describe 'reviewer does not exist' do let(:result) { service.execute(merge_request, create(:user)) } - it 'returns an error' do - expect(result[:status]).to eq :error - end + it_behaves_like 'failed service execution' end describe 'reviewer exists' do @@ -64,6 +70,10 @@ RSpec.describe MergeRequests::RequestReviewService do service.execute(merge_request, user) end + + it_behaves_like 'triggers GraphQL subscription mergeRequestReviewersUpdated' do + let(:action) { result } + end end end end |