Coverage for app/backend/src/tests/test_slack.py: 100%
15 statements
« prev ^ index » next coverage.py v7.16.2, created at 2026-09-28 17:55 +0000
« prev ^ index » next coverage.py v7.16.2, created at 2026-09-28 17:55 +0000
1from unittest.mock import patch
3from couchers.config import config
4from couchers.slack import send_slack_message
7def test_send_slack_message_disabled():
8 with patch("couchers.slack.requests.post") as mock_post:
9 send_slack_message("test-channel", "Test message")
10 mock_post.assert_not_called()
13def test_send_slack_message_enabled():
14 config.SLACK_ENABLED = True
15 config.SLACK_BOT_TOKEN = "xoxb-test-token"
17 with patch("couchers.slack.requests.post") as mock_post:
18 mock_post.return_value.raise_for_status.return_value = None
19 mock_post.return_value.json.return_value = {"ok": True}
20 send_slack_message("test-channel", "Test message")
21 mock_post.assert_called_once_with(
22 "https://slack.com/api/chat.postMessage",
23 headers={"Authorization": "Bearer xoxb-test-token"},
24 json={"channel": "test-channel", "markdown_text": "Test message"},
25 timeout=10,
26 )