user_groups: Track acting user for bulk_add_members_to_user_group.

This is a prep-commit for populating RealmAuditLogs for changes made to
UserGroup.

Signed-off-by: Zixuan James Li <p359101898@gmail.com>
This commit is contained in:
Zixuan James Li
2022-11-20 18:48:10 -08:00
committed by Tim Abbott
parent d5ae88b4a0
commit 7ae4549b3f
3 changed files with 10 additions and 4 deletions

View File

@@ -86,7 +86,9 @@ def update_users_in_full_members_system_group(
remove_members_from_user_group(full_members_system_group, old_full_member_ids)
if len(new_full_members) > 0:
bulk_add_members_to_user_group(full_members_system_group, new_full_member_ids)
bulk_add_members_to_user_group(
full_members_system_group, new_full_member_ids, acting_user=acting_user
)
def promote_new_full_members() -> None:
@@ -163,7 +165,9 @@ def do_send_user_group_members_update_event(
@transaction.atomic(savepoint=False)
def bulk_add_members_to_user_group(user_group: UserGroup, user_profile_ids: List[int]) -> None:
def bulk_add_members_to_user_group(
user_group: UserGroup, user_profile_ids: List[int], *, acting_user: Optional[UserProfile]
) -> None:
memberships = [
UserGroupMembership(user_group_id=user_group.id, user_profile_id=user_id)
for user_id in user_profile_ids

View File

@@ -1300,7 +1300,9 @@ class NormalActionsTest(BaseAction):
# Test add members
hamlet = self.example_user("hamlet")
events = self.verify_action(lambda: bulk_add_members_to_user_group(backend, [hamlet.id]))
events = self.verify_action(
lambda: bulk_add_members_to_user_group(backend, [hamlet.id], acting_user=None)
)
check_user_group_add_members("events[0]", events[0])
# Test remove members

View File

@@ -135,7 +135,7 @@ def add_members_to_group_backend(
)
user_profile_ids = [user.id for user in user_profiles]
bulk_add_members_to_user_group(user_group, user_profile_ids)
bulk_add_members_to_user_group(user_group, user_profile_ids, acting_user=user_profile)
return json_success(request)