diff options
Diffstat (limited to 'spec/finders/members_finder_spec.rb')
-rw-r--r-- | spec/finders/members_finder_spec.rb | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/spec/finders/members_finder_spec.rb b/spec/finders/members_finder_spec.rb index 3ef8d6a01aa..3530858e2de 100644 --- a/spec/finders/members_finder_spec.rb +++ b/spec/finders/members_finder_spec.rb @@ -45,6 +45,18 @@ RSpec.describe MembersFinder, '#execute' do expect(result).to contain_exactly(member1) end + it 'does not return members of parent group with minimal access' do + nested_group.request_access(user1) + member1 = group.add_maintainer(user2) + member2 = nested_group.add_maintainer(user3) + member3 = project.add_maintainer(user4) + create(:group_member, :minimal_access, user: create(:user), source: group) + + result = described_class.new(project, user2).execute + + expect(result).to contain_exactly(member1, member2, member3) + end + it 'includes only non-invite members if user do not have amdin permissions on project' do create(:project_member, :invited, project: project, invite_email: create(:user).email) member1 = project.add_maintainer(user1) |