mirror of
https://github.com/rennf93/roboco.git
synced 2026-08-03 07:23:24 +02:00
41 lines
1.3 KiB
Python
41 lines
1.3 KiB
Python
"""Coverage for roboco.events.bus thin wrapper functions."""
|
|||
|
|
|
||
|
|
from __future__ import annotations
|
||
|
|
|
||
|
|
from unittest.mock import AsyncMock, MagicMock, patch
|
||
|
|
|
||
|
|
import pytest
|
||
|
|
from roboco.events.bus import EventBus, get_event_bus, init_event_bus
|
||
|
|
from roboco.events.stream_bus import StreamEventBus
|
||
|
|
|
||
|
|
|
||
|
|
def test_get_event_bus_delegates() -> None:
|
||
|
|
"""get_event_bus() returns the underlying stream event bus singleton."""
|
||
|
|
fake_bus = MagicMock()
|
||
|
|
with patch(
|
||
|
|
"roboco.events.bus.get_stream_event_bus", return_value=fake_bus
|
||
|
|
) as mock_get:
|
||
|
|
result = get_event_bus()
|
||
|
|
mock_get.assert_called_once()
|
||
|
|
assert result is fake_bus
|
||
|
|
|
||
|
|
|
||
|
|
@pytest.mark.asyncio
|
||
|
|
async def test_init_event_bus_delegates() -> None:
|
||
|
|
"""init_event_bus() forwards args to init_stream_event_bus (line 53)."""
|
||
|
|
fake_bus = MagicMock()
|
||
|
|
with patch(
|
||
|
|
"roboco.events.bus.init_stream_event_bus",
|
||
|
|
new_callable=AsyncMock,
|
||
|
|
return_value=fake_bus,
|
||
|
|
) as mock_init:
|
||
|
|
result = await init_event_bus(consumer_name="custom", recover_pending=False)
|
||
|
|
mock_init.assert_awaited_once_with(consumer_name="custom", recover_pending=False)
|
||
|
|
assert result is fake_bus
|
||
|
|
|
||
|
|
|
||
|
|
def test_event_bus_alias_is_stream_event_bus() -> None:
|
||
|
|
"""EventBus is an alias for StreamEventBus."""
|
||
|
|
|
||
|
|
assert EventBus is StreamEventBus
|