diff options
author | Rémy Coutable <remy@rymai.me> | 2017-12-23 14:09:42 +0000 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2017-12-23 14:09:42 +0000 |
commit | 6c967c2b5b9760d0df6bcff70c059858abf971ec (patch) | |
tree | 6c184f3d48efc26eb39ab880c71dc5b4cd46bfa9 /app/models | |
parent | 5512f0aaf5a4814fbea5a697076a97ff2db00c00 (diff) | |
parent | 27c95364b52f4e93054c45211010aeb22e40a2b2 (diff) | |
download | gitlab-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.rb | 2 | ||||
-rw-r--r-- | app/models/project_team.rb | 28 |
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) |