diff options
Diffstat (limited to 'spec/models/merge_request_assignee_spec.rb')
-rw-r--r-- | spec/models/merge_request_assignee_spec.rb | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/spec/models/merge_request_assignee_spec.rb b/spec/models/merge_request_assignee_spec.rb index d6aab15d990..d287392bf7f 100644 --- a/spec/models/merge_request_assignee_spec.rb +++ b/spec/models/merge_request_assignee_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe MergeRequestAssignee do +RSpec.describe MergeRequestAssignee do let(:merge_request) { create(:merge_request) } subject { merge_request.merge_request_assignees.build(assignee: create(:user)) } @@ -15,4 +15,26 @@ describe MergeRequestAssignee do describe 'validations' do it { is_expected.to validate_uniqueness_of(:assignee).scoped_to(:merge_request_id) } end + + describe 'scopes' do + let_it_be(:user) { create(:user) } + let_it_be(:project) { create(:project, :repository) } + let_it_be(:project_merge_request) { create(:merge_request, target_project: project, source_project: project, assignee_ids: [user.id]) } + + before do + merge_request.update!(assignee_ids: [user.id]) + end + + context 'in_projects' do + it 'returns issue assignees for given project' do + expect(MergeRequestAssignee.count).to eq 2 + + assignees = MergeRequestAssignee.in_projects([project]) + + expect(assignees.count).to eq 1 + expect(assignees.first.user_id).to eq project_merge_request.merge_request_assignees.first.user_id + expect(assignees.first.merge_request_id).to eq project_merge_request.merge_request_assignees.first.merge_request_id + end + end + end end |