mirror of
https://github.com/zulip/zulip.git
synced 2025-10-27 18:13:58 +00:00
Fixes #29944. Co-authored-by: theofficialvedantjoshi <vedant.messi101@gmail.com> Co-authored-by: Niloth P <20315308+Niloth-p@users.noreply.github.com>
103 lines
3.4 KiB
Python
103 lines
3.4 KiB
Python
from zerver.lib.test_classes import WebhookTestCase
|
|
|
|
|
|
class OpenProjectHookTests(WebhookTestCase):
|
|
CHANNEL_NAME = "OpenProjectUpdates"
|
|
URL_TEMPLATE = "/api/v1/external/openproject?api_key={api_key}&stream={stream}"
|
|
WEBHOOK_DIR_NAME = "openproject"
|
|
STREAM_NAME = "OpenProjectUpdates"
|
|
|
|
def test_project_with_parent_created(self) -> None:
|
|
expected_topic = "AI Backend"
|
|
expected_message = (
|
|
"Project **AI Backend** was created as a sub-project of **Demo project**."
|
|
)
|
|
|
|
self.check_webhook(
|
|
"project_created__with_parent",
|
|
expected_topic,
|
|
expected_message,
|
|
)
|
|
|
|
def test_project_without_parent_created(self) -> None:
|
|
expected_topic = "AI Backend"
|
|
expected_message = "Project **AI Backend** was created."
|
|
|
|
self.check_webhook(
|
|
"project_created__without_parent",
|
|
expected_topic,
|
|
expected_message,
|
|
)
|
|
|
|
def test_project_updated(self) -> None:
|
|
expected_topic = "AI Backend"
|
|
expected_message = "Project **AI Backend** was updated."
|
|
self.check_webhook(
|
|
"project_updated",
|
|
expected_topic,
|
|
expected_message,
|
|
)
|
|
|
|
def test_work_package_created(self) -> None:
|
|
expected_topic = "Demo project"
|
|
expected_message = "**Task1** (work package **Task**) was created by **Nirved Mishra**."
|
|
self.check_webhook(
|
|
"work_package_created",
|
|
expected_topic,
|
|
expected_message,
|
|
)
|
|
|
|
def test_work_package_updated(self) -> None:
|
|
expected_topic = "Demo project"
|
|
expected_message = "**Task1** (work package **Task**) was updated by **Nirved Mishra**."
|
|
self.check_webhook(
|
|
"work_package_updated",
|
|
expected_topic,
|
|
expected_message,
|
|
)
|
|
|
|
def test_time_entry_with_workpackage_created(self) -> None:
|
|
expected_topic = "Project1"
|
|
expected_message = "**Nirved Mishra** logged **1 hour** on **kl**."
|
|
self.check_webhook(
|
|
"time_entry_created__with_workpackage",
|
|
expected_topic,
|
|
expected_message,
|
|
)
|
|
|
|
def test_time_entry_without_workpackage_created(self) -> None:
|
|
expected_topic = "Project1"
|
|
expected_message = "**Nirved Mishra** logged **1 hour** on **Project1**."
|
|
self.check_webhook(
|
|
"time_entry_created__without_workpackage",
|
|
expected_topic,
|
|
expected_message,
|
|
)
|
|
|
|
def test_time_entry_with_iso_hm(self) -> None:
|
|
expected_topic = "Project1"
|
|
expected_message = "**Nirved Mishra** logged **7 hours and 42 minutes** on **kl**."
|
|
self.check_webhook(
|
|
"time_entry_created__with_iso_hm",
|
|
expected_topic,
|
|
expected_message,
|
|
)
|
|
|
|
def test_time_entry_with_invalid_iso(self) -> None:
|
|
expected_topic = "Project1"
|
|
expected_message = "**Nirved Mishra** logged a time entry on **kl**."
|
|
self.check_webhook(
|
|
"time_entry_created__with_invalid_iso",
|
|
expected_topic,
|
|
expected_message,
|
|
)
|
|
|
|
def test_attachment_created(self) -> None:
|
|
expected_topic = "Project 2"
|
|
expected_message = "**Nirved Mishra** uploaded **a.out** in **task2**."
|
|
self.check_webhook(
|
|
"attachment_created",
|
|
expected_topic,
|
|
expected_message,
|
|
)
|