Fix test_r03 mock to resolve events immediately

The test_r03_placeholder_registered_before_send test used a bare
MagicMock dispatcher whose subscribe never resolved event futures,
causing send() to block for DEFAULT_TIMEOUT (15s). Add a resolving
subscribe mock matching the pattern from the fixture fix on
fix/test-timeout-waste.
This commit is contained in:
Matthew Wolter 2026-04-12 06:58:30 -07:00
parent 1a017709c5
commit 4c1e5f4fe2

View file

@ -177,6 +177,16 @@ async def test_r03_placeholder_registered_before_send():
return_value=Event(EventType.MSG_SENT, {"expected_ack": b"\x01\x02\x03\x04"})
)
# Resolve subscribed events immediately so send() doesn't block
def resolving_subscribe(event_type, cb, attribute_filters=None):
sub = MagicMock()
sub.unsubscribe = MagicMock()
asyncio.get_event_loop().call_soon(
cb, Event(event_type, {})
)
return sub
handler.dispatcher.subscribe = MagicMock(side_effect=resolving_subscribe)
# Call send_binary_req
dst = "aa" * 32 # 32-byte hex pubkey
await handler.send_binary_req(dst, BinaryReqType.MMA)