11"""Tests for the Plugwise Climate integration."""
22from datetime import timedelta
3- import logging
43from unittest .mock import MagicMock , patch
54
65from plugwise .exceptions import (
3534
3635from tests .common import MockConfigEntry , async_fire_time_changed
3736
38- LOGGER = logging .getLogger (__package__ )
39-
4037HA_PLUGWISE_SMILE_ASYNC_UPDATE = (
4138 "homeassistant.components.plugwise.coordinator.Smile.async_update"
4239)
@@ -269,38 +266,6 @@ async def test_migrate_unique_id_relay(
269266 hass , mock_config_entry , entitydata , old_unique_id , new_unique_id
270267 )
271268
272- #### pw-beta only ####
273- @pytest .mark .parametrize ("chosen_env" , ["m_anna_heatpump_cooling" ], indirect = True )
274- @pytest .mark .parametrize ("cooling_present" , [True ], indirect = True )
275- async def test_entry_migration (
276- hass : HomeAssistant , mock_smile_anna : MagicMock
277- ) -> None :
278- """Test config entry 1.2 -> 1.1 migration."""
279- entry = MockConfigEntry (
280- domain = DOMAIN ,
281- data = {
282- CONF_HOST : "127.0.0.1" ,
283- CONF_MAC : "AA:BB:CC:DD:EE:FF" ,
284- CONF_PASSWORD : "test-password" ,
285- CONF_PORT : 80 ,
286- CONF_TIMEOUT : 30 ,
287- CONF_USERNAME : "smile" ,
288- },
289- minor_version = 2 ,
290- version = 1 ,
291- unique_id = "smile98765" ,
292- )
293-
294- entry .runtime_data = MagicMock (api = mock_smile_anna )
295- entry .add_to_hass (hass )
296- await hass .config_entries .async_setup (entry .entry_id )
297- await hass .async_block_till_done ()
298-
299- assert entry .version == 1
300- assert entry .minor_version == 1
301- assert entry .data .get (CONF_TIMEOUT ) is None
302- assert entry .state is ConfigEntryState .LOADED
303-
304269
305270@pytest .mark .parametrize ("chosen_env" , ["m_adam_heating" ], indirect = True )
306271@pytest .mark .parametrize ("cooling_present" , [False ], indirect = True )
@@ -398,7 +363,7 @@ async def test_delete_removed_device(
398363 mock_config_entry .add_to_hass (hass )
399364 assert await async_setup_component (hass , DOMAIN , {})
400365 await hass .async_block_till_done ()
401-
366+
402367 item_list : list [str ] = []
403368 for device_entry in device_registry .devices .values ():
404369 item_list .extend (x [1 ] for x in device_entry .identifiers )
@@ -413,3 +378,36 @@ async def test_delete_removed_device(
413378 for device_entry in device_registry .devices .values ():
414379 item_list .extend (x [1 ] for x in device_entry .identifiers )
415380 assert "14df5c4dc8cb4ba69f9d1ac0eaf7c5c6" not in item_list
381+
382+
383+ #### pw-beta only ####
384+ @pytest .mark .parametrize ("chosen_env" , ["m_anna_heatpump_cooling" ], indirect = True )
385+ @pytest .mark .parametrize ("cooling_present" , [True ], indirect = True )
386+ async def test_entry_migration (
387+ hass : HomeAssistant , mock_smile_anna : MagicMock
388+ ) -> None :
389+ """Test config entry 1.2 -> 1.1 migration."""
390+ entry = MockConfigEntry (
391+ domain = DOMAIN ,
392+ data = {
393+ CONF_HOST : "127.0.0.1" ,
394+ CONF_MAC : "AA:BB:CC:DD:EE:FF" ,
395+ CONF_PASSWORD : "test-password" ,
396+ CONF_PORT : 80 ,
397+ CONF_TIMEOUT : 30 ,
398+ CONF_USERNAME : "smile" ,
399+ },
400+ minor_version = 2 ,
401+ version = 1 ,
402+ unique_id = "smile98765" ,
403+ )
404+
405+ entry .runtime_data = MagicMock (api = mock_smile_anna )
406+ entry .add_to_hass (hass )
407+ await hass .config_entries .async_setup (entry .entry_id )
408+ await hass .async_block_till_done ()
409+
410+ assert entry .version == 1
411+ assert entry .minor_version == 1
412+ assert entry .data .get (CONF_TIMEOUT ) is None
413+ assert entry .state is ConfigEntryState .LOADED
0 commit comments