settings: Add can_set_delete_message_policy_group setting.

Adds new organization setting `can_set_delete_message_policy_group`
for defining who can set per-channel message delete permissions.

Fixes #34214.
This commit is contained in:
Vector73
2025-07-17 09:54:52 +00:00
committed by Tim Abbott
parent 97a43fa6b6
commit a02614204a
24 changed files with 382 additions and 1 deletions

View File

@@ -1,7 +1,10 @@
import orjson
from zerver.actions.channel_folders import check_add_channel_folder
from zerver.actions.realm_settings import do_change_realm_plan_type
from zerver.actions.realm_settings import (
do_change_realm_permission_group_setting,
do_change_realm_plan_type,
)
from zerver.actions.user_groups import check_add_user_group
from zerver.actions.users import do_change_user_role
from zerver.lib.default_streams import get_default_stream_ids_for_realm
@@ -563,6 +566,17 @@ class TestCreateStreams(ZulipTestCase):
)
def test_permission_settings_on_stream_creation(self) -> None:
realm = get_realm("zulip")
members_system_group = NamedUserGroup.objects.get(
name=SystemGroups.MEMBERS, realm=realm, is_system_group=True
)
do_change_realm_permission_group_setting(
realm,
"can_set_delete_message_policy_group",
members_system_group,
acting_user=None,
)
for setting_name in Stream.stream_permission_group_settings:
self.do_test_permission_setting_on_stream_creation(setting_name)