mirror of
https://github.com/zulip/zulip.git
synced 2025-11-01 20:44:04 +00:00
zulip_updates: Add test to verify deactivated channel case.
This commit adds test to verify that we skip the update messages and directly update the `zulip_update_announcements_level` to the latest level when the configured `zulip_update_announcements_stream` is deactivated.
This commit is contained in:
committed by
Tim Abbott
parent
77baa05aa9
commit
fe3199b954
@@ -9,6 +9,7 @@ from django.utils.timezone import now as timezone_now
|
||||
from typing_extensions import override
|
||||
|
||||
from zerver.actions.create_realm import do_create_realm
|
||||
from zerver.actions.streams import do_deactivate_stream
|
||||
from zerver.data_import.mattermost import do_convert_data
|
||||
from zerver.lib.import_realm import do_import_realm
|
||||
from zerver.lib.message import remove_single_newlines
|
||||
@@ -200,6 +201,32 @@ class ZulipUpdateAnnouncementsTest(ZulipTestCase):
|
||||
self.assertEqual(stream_messages[1].content, "Announcement message 4.")
|
||||
self.assertEqual(realm.zulip_update_announcements_level, 4)
|
||||
|
||||
# One new update added.
|
||||
new_updates = [
|
||||
ZulipUpdateAnnouncement(
|
||||
level=5,
|
||||
message="Announcement message 5.",
|
||||
),
|
||||
]
|
||||
self.zulip_update_announcements.extend(new_updates)
|
||||
|
||||
# Verify that update message is skipped if configured channel gets deactivated.
|
||||
# Note: 'do_deactivate_stream' sets 'zulip_update_announcements_stream' to None.
|
||||
channel_id = realm.zulip_update_announcements_stream.id
|
||||
do_deactivate_stream(realm.zulip_update_announcements_stream, acting_user=None)
|
||||
|
||||
with time_machine.travel(now + timedelta(days=8), tick=False):
|
||||
send_zulip_update_announcements(skip_delay=False)
|
||||
realm.refresh_from_db()
|
||||
channel_messages = Message.objects.filter(
|
||||
realm=realm,
|
||||
sender=notification_bot,
|
||||
recipient__type_id=channel_id,
|
||||
date_sent__gte=now + timedelta(days=8),
|
||||
).order_by("id")
|
||||
self.assert_length(channel_messages, 0)
|
||||
self.assertEqual(realm.zulip_update_announcements_level, 5)
|
||||
|
||||
def test_send_zulip_update_announcements_skip_delay(self) -> None:
|
||||
with mock.patch(
|
||||
"zerver.lib.zulip_update_announcements.zulip_update_announcements",
|
||||
|
||||
Reference in New Issue
Block a user