zulip/zerver/webhooks/flock/tests.py

80 lines
3.1 KiB
Python

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}"
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"
)
def get_body(self, fixture_name: str) -> str:
return self.webhook_fixture_data("flock", fixture_name, file_type="json")