from zerver.lib.test_classes import WebhookTestCase class FlockHookTests(WebhookTestCase): STREAM_NAME = "test" URL_TEMPLATE = "/api/v1/external/flock?api_key={api_key}&stream={stream}" WEBHOOK_DIR_NAME = "flock" def test_flock_message(self) -> None: expected_topic = "Flock notifications" expected_message = "This is the welcome message!" self.check_webhook( "messages", expected_topic, expected_message, content_type="application/json" ) def test_flock_reply(self) -> None: expected_topic = "Flock notifications" expected_message = "It's interesting how high productivity will go..." self.check_webhook( "reply", expected_topic, expected_message, content_type="application/json" ) def test_flock_note(self) -> None: expected_topic = "Flock notifications" expected_message = "Shared a note" self.check_webhook( "note", expected_topic, expected_message, content_type="application/json" ) def test_flock_reply_note(self) -> None: expected_topic = "Flock notifications" expected_message = "This is reply to Note." self.check_webhook( "reply_note", expected_topic, expected_message, content_type="application/json" ) def test_flock_reply_pinned(self) -> None: expected_topic = "Flock notifications" expected_message = "This is reply to pinned message." self.check_webhook( "reply_pinned", expected_topic, expected_message, content_type="application/json" ) def test_flock_reply_reminder(self) -> None: expected_topic = "Flock notifications" expected_message = "This is a reply to Reminder." self.check_webhook( "reply_reminder", expected_topic, expected_message, content_type="application/json" ) def test_flock_reply_todo(self) -> None: expected_topic = "Flock notifications" expected_message = "This is a reply to Todo notification." self.check_webhook( "reply_todo", expected_topic, expected_message, content_type="application/json" ) def test_flock_pinned(self) -> None: expected_topic = "Flock notifications" expected_message = "Rishabh rawat pinned an item to the conversation" self.check_webhook( "pinned", expected_topic, expected_message, content_type="application/json" ) def test_flock_reminder(self) -> None: expected_topic = "Flock notifications" expected_message = "Rishabh rawat wanted me to remind All" self.check_webhook( "reminder", expected_topic, expected_message, content_type="application/json" ) def test_flock_todo(self) -> None: expected_topic = "Flock notifications" expected_message = "Rishabh rawat added a to-do in New List 1 list" self.check_webhook( "todo", expected_topic, expected_message, content_type="application/json" )