Files
zulip/zerver/webhooks/json/tests.py
PIG208 5ecbfecd77 webhook: Rename FIXTURE_DIR_NAME to WEBHOOK_DIR_NAME.
Since FIXTURE_DIR_NAME is the name of the folder that contains the view
and tests modules of the webhook and another folder called "fixtures" that
store the fixtures, it is more appropriate to call it WEBHOOK_DIR_NAME,
especially when we want to refer to the view module using this variable.
2021-06-29 17:01:54 -07:00

55 lines
1.9 KiB
Python

import json
from zerver.lib.test_classes import WebhookTestCase
class JsonHookTests(WebhookTestCase):
STREAM_NAME = "json"
URL_TEMPLATE = "/api/v1/external/json?api_key={api_key}&stream={stream}"
WEBHOOK_DIR_NAME = "json"
def test_json_github_push__1_commit_message(self) -> None:
"""
Tests if json github push 1 commit is handled correctly
"""
with open("zerver/webhooks/json/fixtures/json_github_push__1_commit.json") as f:
original_fixture = json.load(f)
expected_topic = "JSON"
expected_message = """```json
{original_fixture}
```""".format(
original_fixture=json.dumps(original_fixture, indent=2)
)
self.check_webhook("json_github_push__1_commit", expected_topic, expected_message)
def test_json_pingdom_http_up_to_down_message(self) -> None:
"""
Tests if json pingdom http up to down is handled correctly
"""
with open("zerver/webhooks/json/fixtures/json_pingdom_http_up_to_down.json") as f:
original_fixture = json.load(f)
expected_topic = "JSON"
expected_message = """```json
{original_fixture}
```""".format(
original_fixture=json.dumps(original_fixture, indent=2)
)
self.check_webhook("json_pingdom_http_up_to_down", expected_topic, expected_message)
def test_json_sentry_event_for_exception_js_message(self) -> None:
"""
Tests if json sentry event for exception js is handled correctly
"""
with open("zerver/webhooks/json/fixtures/json_sentry_event_for_exception_js.json") as f:
original_fixture = json.load(f)
expected_topic = "JSON"
expected_message = """```json
{original_fixture}
```""".format(
original_fixture=json.dumps(original_fixture, indent=2)
)
self.check_webhook("json_sentry_event_for_exception_js", expected_topic, expected_message)