1
0
mirror of https://github.com/meineerde/redmine.git synced 2026-03-10 19:23:06 +00:00

Merged r22180 from trunk to 5.0-stable (#38443).

git-svn-id: https://svn.redmine.org/redmine/branches/5.0-stable@22181 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Go MAEDA 2023-04-13 22:59:31 +00:00
parent d1e10ee1a9
commit e16a11a22a
2 changed files with 14 additions and 0 deletions

View File

@ -80,6 +80,8 @@ class Group < Principal
def user_added(user)
members.preload(:member_roles).each do |member|
next if member.project_id.nil?
# skip if the group is a member without roles in the project
next if member.member_roles.empty?
user_member =
Member.find_or_initialize_by(:project_id => member.project_id, :user_id => user.id)

View File

@ -177,4 +177,16 @@ class GroupTest < ActiveSupport::TestCase
assert_equal %w(A B), Group.sorted.to_a.map(&:name)
end
def test_user_added_should_not_fail_when_group_role_is_empty
group = Group.find(11)
project = Project.first
user = User.find(9)
m = Member.create!(:principal => group, :project => project, :role_ids => [1])
MemberRole.where(:member_id => m.id).delete_all
assert_nothing_raised {group.users << user}
assert group.users.include?(user)
end
end