summaryrefslogtreecommitdiff
path: root/app/models
diff options
context:
space:
mode:
authorRémy Coutable <remy@rymai.me>2017-12-23 14:09:42 +0000
committerRémy Coutable <remy@rymai.me>2017-12-23 14:09:42 +0000
commit6c967c2b5b9760d0df6bcff70c059858abf971ec (patch)
tree6c184f3d48efc26eb39ab880c71dc5b4cd46bfa9 /app/models
parent5512f0aaf5a4814fbea5a697076a97ff2db00c00 (diff)
parent27c95364b52f4e93054c45211010aeb22e40a2b2 (diff)
downloadgitlab-ce-6c967c2b5b9760d0df6bcff70c059858abf971ec.tar.gz
Merge branch '36782-replace-team-user-role-with-add_role-user-in-specs' into 'master'
Resolve "Replace '.team << [user, role]' with 'add_role(user)' in specs" Closes #36782 See merge request gitlab-org/gitlab-ce!16069
Diffstat (limited to 'app/models')
-rw-r--r--app/models/project.rb2
-rw-r--r--app/models/project_team.rb28
2 files changed, 9 insertions, 21 deletions
diff --git a/app/models/project.rb b/app/models/project.rb
index f9c640300ff..6678733e43e 100644
--- a/app/models/project.rb
+++ b/app/models/project.rb
@@ -226,7 +226,7 @@ class Project < ActiveRecord::Base
delegate :name, to: :owner, allow_nil: true, prefix: true
delegate :members, to: :team, prefix: true
delegate :add_user, :add_users, to: :team
- delegate :add_guest, :add_reporter, :add_developer, :add_master, to: :team
+ delegate :add_guest, :add_reporter, :add_developer, :add_master, :add_role, to: :team
# Validations
validates :creator, presence: true, on: :create
diff --git a/app/models/project_team.rb b/app/models/project_team.rb
index c679758973a..a9e5cfb8240 100644
--- a/app/models/project_team.rb
+++ b/app/models/project_team.rb
@@ -7,36 +7,24 @@ class ProjectTeam
@project = project
end
- # Shortcut to add users
- #
- # Use:
- # @team << [@user, :master]
- # @team << [@users, :master]
- #
- def <<(args)
- users, access, current_user = *args
-
- if users.respond_to?(:each)
- add_users(users, access, current_user: current_user)
- else
- add_user(users, access, current_user: current_user)
- end
- end
-
def add_guest(user, current_user: nil)
- self << [user, :guest, current_user]
+ add_user(user, :guest, current_user: current_user)
end
def add_reporter(user, current_user: nil)
- self << [user, :reporter, current_user]
+ add_user(user, :reporter, current_user: current_user)
end
def add_developer(user, current_user: nil)
- self << [user, :developer, current_user]
+ add_user(user, :developer, current_user: current_user)
end
def add_master(user, current_user: nil)
- self << [user, :master, current_user]
+ add_user(user, :master, current_user: current_user)
+ end
+
+ def add_role(user, role, current_user: nil)
+ send(:"add_#{role}", user, current_user: current_user) # rubocop:disable GitlabSecurity/PublicSend
end
def find_member(user_id)