From 58413c411f08d7b2794c911e5dcaa8829d965e86 Mon Sep 17 00:00:00 2001 From: Fran Fitzpatrick Date: Thu, 9 Apr 2026 19:17:43 -0500 Subject: [PATCH] test: update Matrix reaction tests for new _send_reaction return type _send_reaction now returns Optional[str] (event_id) instead of bool. Tests updated: - test_send_reaction: assert result == event_id string - test_send_reaction_no_client: assert result is None - test_on_processing_start_sends_eyes: _send_reaction returns event_id, now also asserts _pending_reactions is populated - test_on_processing_complete_sends_check: set up _pending_reactions and mock _redact_reaction, assert eyes reaction is redacted before sending check --- tests/gateway/test_matrix.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/tests/gateway/test_matrix.py b/tests/gateway/test_matrix.py index 09cdd8a44..aa7309fe9 100644 --- a/tests/gateway/test_matrix.py +++ b/tests/gateway/test_matrix.py @@ -1943,7 +1943,7 @@ class TestMatrixReactions: with patch.dict("sys.modules", {"nio": fake_nio}): result = await self.adapter._send_reaction("!room:ex", "$event1", "👍") - assert result is True + assert result == "$reaction1" mock_client.room_send.assert_called_once() args = mock_client.room_send.call_args assert args[0][1] == "m.reaction" @@ -1956,7 +1956,7 @@ class TestMatrixReactions: self.adapter._client = None with patch.dict("sys.modules", {"nio": _make_fake_nio()}): result = await self.adapter._send_reaction("!room:ex", "$ev", "👍") - assert result is False + assert result is None @pytest.mark.asyncio async def test_on_processing_start_sends_eyes(self): @@ -1964,7 +1964,7 @@ class TestMatrixReactions: from gateway.platforms.base import MessageEvent, MessageType self.adapter._reactions_enabled = True - self.adapter._send_reaction = AsyncMock(return_value=True) + self.adapter._send_reaction = AsyncMock(return_value="$reaction_event_123") source = MagicMock() source.chat_id = "!room:ex" @@ -1977,13 +1977,16 @@ class TestMatrixReactions: ) await self.adapter.on_processing_start(event) self.adapter._send_reaction.assert_called_once_with("!room:ex", "$msg1", "👀") + assert self.adapter._pending_reactions == {("!room:ex", "$msg1"): "$reaction_event_123"} @pytest.mark.asyncio async def test_on_processing_complete_sends_check(self): from gateway.platforms.base import MessageEvent, MessageType, ProcessingOutcome self.adapter._reactions_enabled = True - self.adapter._send_reaction = AsyncMock(return_value=True) + self.adapter._pending_reactions = {("!room:ex", "$msg1"): "$eyes_reaction_123"} + self.adapter._redact_reaction = AsyncMock(return_value=True) + self.adapter._send_reaction = AsyncMock(return_value="$check_reaction_456") source = MagicMock() source.chat_id = "!room:ex" @@ -1995,6 +1998,7 @@ class TestMatrixReactions: message_id="$msg1", ) await self.adapter.on_processing_complete(event, ProcessingOutcome.SUCCESS) + self.adapter._redact_reaction.assert_called_once_with("!room:ex", "$eyes_reaction_123") self.adapter._send_reaction.assert_called_once_with("!room:ex", "$msg1", "✅") @pytest.mark.asyncio