zulip/zerver/webhooks/freshping/tests.py

35 lines
1.3 KiB
Python

from zerver.lib.test_classes import WebhookTestCase
class FreshpingHookTests(WebhookTestCase):
STREAM_NAME = "freshping"
URL_TEMPLATE = "/api/v1/external/freshping?api_key={api_key}&stream={stream}"
WEBHOOK_DIR_NAME = "freshping"
def test_freshping_check_test(self) -> None:
"""
Tests if freshping check test is handled correctly
"""
expected_topic_name = "Freshping"
expected_message = "Freshping webhook has been successfully configured."
self.check_webhook("freshping_check_test", expected_topic_name, expected_message)
def test_freshping_check_unreachable(self) -> None:
"""
Tests if freshping check unreachable is handled correctly
"""
expected_topic_name = "Test Check"
expected_message = """
https://example.com has just become unreachable.
Error code: 521.
""".strip()
self.check_webhook("freshping_check_unreachable", expected_topic_name, expected_message)
def test_freshping_check_reachable(self) -> None:
"""
Tests if freshping check reachable is handled correctly
"""
expected_topic_name = "Test Check"
expected_message = "https://example.com is back up and no longer unreachable."
self.check_webhook("freshping_check_reachable", expected_topic_name, expected_message)