Skip to content

zulip_bots: Fix react() in StubBotHandler to pass full reaction data#914

Open
JordanKapala wants to merge 1 commit intozulip:mainfrom
JordanKapala:fix-react-stream-messages
Open

zulip_bots: Fix react() in StubBotHandler to pass full reaction data#914
JordanKapala wants to merge 1 commit intozulip:mainfrom
JordanKapala:fix-react-stream-messages

Conversation

@JordanKapala
Copy link
Copy Markdown

While investigating #790 (bot_handler.react only working in private messages),
I found an inconsistency in StubBotHandler.react() in test_lib.py that could
cause bots to behave differently in tests vs. production.

The react() method in StubBotHandler was passing only emoji_name to
message_server.add_reaction(), while the real ExternalBotHandler and
TerminalBotHandler implementations both pass the full reaction dict including
message_id and reaction_type. Additionally, mock messages constructed by
make_request_message() were missing an id field, which would cause any bot
test exercising react() to raise a KeyError.

Fixes: #790 (partial - fixes test framework inconsistency found while investigating)

How did you test this PR?

Ran the full test suite: 413 passed, 0 failed. (previously 2 failed)
Verified ruff and mypy report no issues on test_lib.py.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

bot_handler.react only works in private messages

1 participant