diff --git a/tests/test_sse.py b/tests/test_sse.py index 1530397..34413b1 100644 --- a/tests/test_sse.py +++ b/tests/test_sse.py @@ -44,28 +44,31 @@ class TestSSEEvent: class TestSSEBroker: def test_subscribe_returns_queue(self): broker = SSEBroker() - cid, queue = broker.subscribe() - assert cid - assert isinstance(queue, asyncio.Queue) + async def _test(): + cid, queue = broker.subscribe() + assert cid + assert isinstance(queue, asyncio.Queue) + asyncio.run(_test()) def test_publish_to_subscriber(self): broker = SSEBroker() - cid, queue = broker.subscribe() - - delivered = asyncio.run(broker.publish("task_created", {"id": "t1"})) - assert delivered == 1 - - event = queue.get_nowait() - assert event.event_type == "task_created" - assert event.data["id"] == "t1" + async def _test(): + cid, queue = broker.subscribe() + delivered = await broker.publish("task_created", {"id": "t1"}) + assert delivered == 1 + event = queue.get_nowait() + assert event.event_type == "task_created" + assert event.data["id"] == "t1" + asyncio.run(_test()) def test_unsubscribe(self): broker = SSEBroker() - cid, _ = broker.subscribe() - assert broker.subscriber_count == 1 - - broker.unsubscribe(cid) - assert broker.subscriber_count == 0 + async def _test(): + cid, _ = broker.subscribe() + assert broker.subscriber_count == 1 + broker.unsubscribe(cid) + assert broker.subscriber_count == 0 + asyncio.run(_test()) def test_publish_no_subscribers(self): broker = SSEBroker() @@ -82,11 +85,12 @@ class TestSSEBroker: def test_history_replays_to_new_subscriber(self): broker = SSEBroker() - asyncio.run(broker.publish("e1", {"x": 1})) - - cid, queue = broker.subscribe() - event = queue.get_nowait() - assert event.event_type == "e1" + async def _test(): + await broker.publish("e1", {"x": 1}) + cid, queue = broker.subscribe() + event = queue.get_nowait() + assert event.event_type == "e1" + asyncio.run(_test()) def test_history_max(self): broker = SSEBroker() @@ -97,20 +101,23 @@ class TestSSEBroker: def test_publish_sync(self): broker = SSEBroker() - cid, queue = broker.subscribe() - delivered = broker.publish_sync("tick", {"n": 1}) - assert delivered == 1 - event = queue.get_nowait() - assert event.data["n"] == 1 + async def _test(): + cid, queue = broker.subscribe() + delivered = broker.publish_sync("tick", {"n": 1}) + assert delivered == 1 + event = queue.get_nowait() + assert event.data["n"] == 1 + asyncio.run(_test()) def test_multiple_subscribers(self): broker = SSEBroker() - c1, q1 = broker.subscribe() - c2, q2 = broker.subscribe() - - asyncio.run(broker.publish("test", {"v": 42})) - assert q1.get_nowait().data["v"] == 42 - assert q2.get_nowait().data["v"] == 42 + async def _test(): + c1, q1 = broker.subscribe() + c2, q2 = broker.subscribe() + await broker.publish("test", {"v": 42}) + assert q1.get_nowait().data["v"] == 42 + assert q2.get_nowait().data["v"] == 42 + asyncio.run(_test()) # ---------------------------------------------------------------------------