FIX: update group user count when bulk adding users

This commit is contained in:
Arpit Jalan 2018-02-23 14:09:49 +05:30
parent 4791b39773
commit 709f201bd4
2 changed files with 17 additions and 0 deletions

View File

@ -534,6 +534,16 @@ class Group < ActiveRecord::Base
if user_attributes.present?
User.where(id: user_ids).update_all(user_attributes)
end
# update group user count
Group.exec_sql <<-SQL.squish
UPDATE groups g
SET user_count =
(SELECT COUNT(gu.user_id)
FROM group_users gu
WHERE gu.group_id = g.id)
WHERE g.id = #{self.id};
SQL
end
if self.grant_trust_level.present?

View File

@ -619,6 +619,13 @@ describe Group do
expect(group.group_users.map(&:user_id)).to contain_exactly(user.id, admin.id)
end
it 'updates group user count' do
expect {
group.bulk_add([user.id, admin.id])
group.reload
}.to change { group.user_count }.by(2)
end
end
it "Correctly updates has_messages" do