From f37b1fc9f85a8762e793c5a034edcb2ba9dfc5b6 Mon Sep 17 00:00:00 2001 From: Jan Bouwhuis Date: Sat, 15 Apr 2023 21:29:31 +0200 Subject: [PATCH] Improve tests subscribe connection for mqtt status (#91463) Improve test_subscribe_connection_status --- tests/components/mqtt/test_init.py | 31 ++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/tests/components/mqtt/test_init.py b/tests/components/mqtt/test_init.py index adc3d9273c4..8583533bcf8 100644 --- a/tests/components/mqtt/test_init.py +++ b/tests/components/mqtt/test_init.py @@ -3073,16 +3073,26 @@ async def test_subscribe_connection_status( ) -> None: """Test connextion status subscription.""" mqtt_mock = await mqtt_mock_entry() - mqtt_connected_calls = [] + mqtt_connected_calls_callback: list[bool] = [] + mqtt_connected_calls_async: list[bool] = [] @callback - def async_mqtt_connected(status: bool) -> None: + def async_mqtt_connected_callback(status: bool) -> None: """Update state on connection/disconnection to MQTT broker.""" - mqtt_connected_calls.append(status) + mqtt_connected_calls_callback.append(status) + + async def async_mqtt_connected_async(status: bool) -> None: + """Update state on connection/disconnection to MQTT broker.""" + mqtt_connected_calls_async.append(status) mqtt_mock.connected = True - unsub = mqtt.async_subscribe_connection_status(hass, async_mqtt_connected) + unsub_callback = mqtt.async_subscribe_connection_status( + hass, async_mqtt_connected_callback + ) + unsub_async = mqtt.async_subscribe_connection_status( + hass, async_mqtt_connected_async + ) await hass.async_block_till_done() # Mock connection status @@ -3095,15 +3105,20 @@ async def test_subscribe_connection_status( await hass.async_block_till_done() # Unsubscribe - unsub() + unsub_callback() + unsub_async() mqtt_client_mock.on_connect(None, None, 0, 0) await hass.async_block_till_done() # Check calls - assert len(mqtt_connected_calls) == 2 - assert mqtt_connected_calls[0] is True - assert mqtt_connected_calls[1] is False + assert len(mqtt_connected_calls_callback) == 2 + assert mqtt_connected_calls_callback[0] is True + assert mqtt_connected_calls_callback[1] is False + + assert len(mqtt_connected_calls_async) == 2 + assert mqtt_connected_calls_async[0] is True + assert mqtt_connected_calls_async[1] is False # Test existence of removed YAML configuration under the platform key