From 554d9bf606176f7e7515ad8976dff9ef77acd4ca Mon Sep 17 00:00:00 2001 From: Douwe Maan Date: Fri, 19 Feb 2016 07:50:05 +0000 Subject: [PATCH] Merge branch 'rs-show-owner-label' into 'master' Allow `ProjectTeam#human_max_access` to return "Owner" See merge request !2881 --- app/models/project_team.rb | 2 +- spec/models/project_team_spec.rb | 24 +++++++++++++++++------- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/app/models/project_team.rb b/app/models/project_team.rb index 9f380a382c..9629c7e1bb 100644 --- a/app/models/project_team.rb +++ b/app/models/project_team.rb @@ -136,7 +136,7 @@ class ProjectTeam end def human_max_access(user_id) - Gitlab::Access.options.key max_member_access(user_id) + Gitlab::Access.options_with_owner.key(max_member_access(user_id)) end # This method assumes project and group members are eager loaded for optimal diff --git a/spec/models/project_team_spec.rb b/spec/models/project_team_spec.rb index 5cd5ae327b..7b63da005f 100644 --- a/spec/models/project_team_spec.rb +++ b/spec/models/project_team_spec.rb @@ -68,14 +68,24 @@ describe ProjectTeam, models: true do end describe "#human_max_access" do - it "return master role" do - user = create :user - group = create :group - group.add_users([user.id], GroupMember::MASTER) - project = create(:project, namespace: group) - project.team << [user, :guest] + it 'returns Master role' do + user = create(:user) + group = create(:group) + group.add_master(user) - expect(project.team.human_max_access(user.id)).to eq("Master") + project = build_stubbed(:empty_project, namespace: group) + + expect(project.team.human_max_access(user.id)).to eq 'Master' + end + + it 'returns Owner role' do + user = create(:user) + group = create(:group) + group.add_owner(user) + + project = build_stubbed(:empty_project, namespace: group) + + expect(project.team.human_max_access(user.id)).to eq 'Owner' end end end