mirror of https://github.com/zulip/zulip.git
audit_log: Update audit log entries created while creating a group.
Earlier a extra audit log entry of type USER_GROUP_GROUP_BASED_SETTING_CHANGED was made when a new user group is created. This commit updates the code to not create that audit log entry. There is no need to create these entry as we would still have the required data from the "OLD_VALUE" field in the audit log entry created when changing the setting and this also makes it consistent with the entries created for other operations like stream creation.
This commit is contained in:
parent
42bbeb6247
commit
706c380971
|
@ -67,18 +67,6 @@ def create_user_group_in_database(
|
||||||
event_time=creation_time,
|
event_time=creation_time,
|
||||||
modified_user_group=user_group,
|
modified_user_group=user_group,
|
||||||
),
|
),
|
||||||
RealmAuditLog(
|
|
||||||
realm=realm,
|
|
||||||
acting_user=acting_user,
|
|
||||||
event_type=RealmAuditLog.USER_GROUP_GROUP_BASED_SETTING_CHANGED,
|
|
||||||
event_time=creation_time,
|
|
||||||
modified_user_group=user_group,
|
|
||||||
extra_data={
|
|
||||||
RealmAuditLog.OLD_VALUE: None,
|
|
||||||
RealmAuditLog.NEW_VALUE: user_group.can_mention_group.id,
|
|
||||||
"property": "can_mention_group",
|
|
||||||
},
|
|
||||||
),
|
|
||||||
] + [
|
] + [
|
||||||
RealmAuditLog(
|
RealmAuditLog(
|
||||||
realm=realm,
|
realm=realm,
|
||||||
|
|
|
@ -493,21 +493,7 @@ def create_system_user_groups_for_realm(realm: Realm) -> Dict[int, UserGroup]:
|
||||||
system_groups_name_dict = get_role_based_system_groups_dict(realm)
|
system_groups_name_dict = get_role_based_system_groups_dict(realm)
|
||||||
for group in system_user_groups_list:
|
for group in system_user_groups_list:
|
||||||
user_group = set_defaults_for_group_settings(group, {}, system_groups_name_dict)
|
user_group = set_defaults_for_group_settings(group, {}, system_groups_name_dict)
|
||||||
groups_with_updated_settings.append(group)
|
groups_with_updated_settings.append(user_group)
|
||||||
realmauditlog_objects.append(
|
|
||||||
RealmAuditLog(
|
|
||||||
realm=realm,
|
|
||||||
acting_user=None,
|
|
||||||
event_type=RealmAuditLog.USER_GROUP_GROUP_BASED_SETTING_CHANGED,
|
|
||||||
event_time=creation_time,
|
|
||||||
modified_user_group=user_group,
|
|
||||||
extra_data={
|
|
||||||
RealmAuditLog.OLD_VALUE: None,
|
|
||||||
RealmAuditLog.NEW_VALUE: user_group.can_mention_group.id,
|
|
||||||
"property": "can_mention_group",
|
|
||||||
},
|
|
||||||
)
|
|
||||||
)
|
|
||||||
UserGroup.objects.bulk_update(groups_with_updated_settings, ["can_mention_group"])
|
UserGroup.objects.bulk_update(groups_with_updated_settings, ["can_mention_group"])
|
||||||
|
|
||||||
subgroup_objects: List[GroupGroupMembership] = []
|
subgroup_objects: List[GroupGroupMembership] = []
|
||||||
|
|
|
@ -1143,28 +1143,6 @@ class TestRealmAuditLog(ZulipTestCase):
|
||||||
self.assertEqual(supergroup_id, expected_supergroup_id)
|
self.assertEqual(supergroup_id, expected_supergroup_id)
|
||||||
self.assertEqual(subgroup_id, expected_subgroup_id)
|
self.assertEqual(subgroup_id, expected_subgroup_id)
|
||||||
|
|
||||||
audit_log_entries = sorted(
|
|
||||||
RealmAuditLog.objects.filter(
|
|
||||||
realm=realm,
|
|
||||||
event_type=RealmAuditLog.USER_GROUP_GROUP_BASED_SETTING_CHANGED,
|
|
||||||
event_time__gte=now,
|
|
||||||
acting_user=None,
|
|
||||||
).values_list("modified_user_group_id", "extra_data")
|
|
||||||
)
|
|
||||||
nobody_group = UserGroup.objects.get(name=SystemGroups.NOBODY, realm=realm)
|
|
||||||
for (user_group_id, extra_data), expected_user_group_id in zip(
|
|
||||||
audit_log_entries, logged_system_group_ids
|
|
||||||
):
|
|
||||||
self.assertEqual(user_group_id, expected_user_group_id)
|
|
||||||
self.assertDictEqual(
|
|
||||||
extra_data,
|
|
||||||
{
|
|
||||||
RealmAuditLog.OLD_VALUE: None,
|
|
||||||
RealmAuditLog.NEW_VALUE: nobody_group.id,
|
|
||||||
"property": "can_mention_group",
|
|
||||||
},
|
|
||||||
)
|
|
||||||
|
|
||||||
def test_user_group_creation(self) -> None:
|
def test_user_group_creation(self) -> None:
|
||||||
hamlet = self.example_user("hamlet")
|
hamlet = self.example_user("hamlet")
|
||||||
cordelia = self.example_user("cordelia")
|
cordelia = self.example_user("cordelia")
|
||||||
|
@ -1201,24 +1179,6 @@ class TestRealmAuditLog(ZulipTestCase):
|
||||||
self.assertEqual(audit_log_entries[0].modified_user, hamlet)
|
self.assertEqual(audit_log_entries[0].modified_user, hamlet)
|
||||||
self.assertEqual(audit_log_entries[1].modified_user, cordelia)
|
self.assertEqual(audit_log_entries[1].modified_user, cordelia)
|
||||||
|
|
||||||
audit_log_entries = RealmAuditLog.objects.filter(
|
|
||||||
acting_user=hamlet,
|
|
||||||
realm=hamlet.realm,
|
|
||||||
event_time__gte=now,
|
|
||||||
event_type=RealmAuditLog.USER_GROUP_GROUP_BASED_SETTING_CHANGED,
|
|
||||||
)
|
|
||||||
self.assert_length(audit_log_entries, len(UserGroup.GROUP_PERMISSION_SETTINGS))
|
|
||||||
self.assertListEqual(
|
|
||||||
[audit_log.extra_data for audit_log in audit_log_entries],
|
|
||||||
[
|
|
||||||
{
|
|
||||||
RealmAuditLog.OLD_VALUE: None,
|
|
||||||
RealmAuditLog.NEW_VALUE: public_group.id,
|
|
||||||
"property": "can_mention_group",
|
|
||||||
}
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
def test_change_user_group_memberships(self) -> None:
|
def test_change_user_group_memberships(self) -> None:
|
||||||
hamlet = self.example_user("hamlet")
|
hamlet = self.example_user("hamlet")
|
||||||
cordelia = self.example_user("cordelia")
|
cordelia = self.example_user("cordelia")
|
||||||
|
|
|
@ -1360,7 +1360,6 @@ class SlackImporter(ZulipTestCase):
|
||||||
RealmAuditLog.USER_GROUP_DIRECT_USER_MEMBERSHIP_ADDED,
|
RealmAuditLog.USER_GROUP_DIRECT_USER_MEMBERSHIP_ADDED,
|
||||||
RealmAuditLog.USER_GROUP_DIRECT_SUBGROUP_MEMBERSHIP_ADDED,
|
RealmAuditLog.USER_GROUP_DIRECT_SUBGROUP_MEMBERSHIP_ADDED,
|
||||||
RealmAuditLog.USER_GROUP_DIRECT_SUPERGROUP_MEMBERSHIP_ADDED,
|
RealmAuditLog.USER_GROUP_DIRECT_SUPERGROUP_MEMBERSHIP_ADDED,
|
||||||
RealmAuditLog.USER_GROUP_GROUP_BASED_SETTING_CHANGED,
|
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue