diff --git a/tests/test_warmtelink_worker.py b/tests/test_warmtelink_worker.py index 296918e..cef860a 100644 --- a/tests/test_warmtelink_worker.py +++ b/tests/test_warmtelink_worker.py @@ -261,6 +261,8 @@ def test_lifespan_exception_still_shuts_serial_before_other_runtime_teardown(mon import app.main as main events = [] + runtime_settings = object() + applied_dsmr_settings = [] class _Scheduler: def __init__(self, **_kwargs): pass @@ -279,8 +281,13 @@ def test_lifespan_exception_still_shuts_serial_before_other_runtime_teardown(mon monkeypatch.setattr(main, "ensure_auth_db_ready", lambda: None) monkeypatch.setattr(main, "BackgroundScheduler", _Scheduler) monkeypatch.setattr(main, "get_session_local", lambda: _Session) - monkeypatch.setattr(main, "build_runtime_settings", lambda *_args: object()) - monkeypatch.setattr(main, "apply_dsmr_subscription", lambda: None) + monkeypatch.setattr(main, "build_runtime_settings", lambda *_args: runtime_settings) + + def apply_dsmr_subscription(settings=runtime_settings): + assert settings is runtime_settings + applied_dsmr_settings.append(settings) + + monkeypatch.setattr(main, "apply_dsmr_subscription", apply_dsmr_subscription) monkeypatch.setattr(main.mqtt_manager, "connect", lambda _settings: events.append("mqtt-start")) monkeypatch.setattr(main.mqtt_manager, "disconnect", lambda: events.append("mqtt-stop")) monkeypatch.setattr(main, "warmtelink_worker_manager", _Manager()) @@ -293,6 +300,7 @@ def test_lifespan_exception_still_shuts_serial_before_other_runtime_teardown(mon pass anyio.run(exercise) + assert applied_dsmr_settings == [runtime_settings] assert events.index("serial-stop-close-join") < events.index("mqtt-stop") < events.index("scheduler-stop")