From be869fce6cfaa4e65fd547e554a81d9886c55d47 Mon Sep 17 00:00:00 2001 From: epenet <6771947+epenet@users.noreply.github.com> Date: Sat, 31 Jan 2026 15:14:26 +0100 Subject: [PATCH] Remove outdated device registry cleanup in mold_indicator (#161864) --- .../components/mold_indicator/__init__.py | 10 +-- tests/components/mold_indicator/test_init.py | 86 ------------------- 2 files changed, 1 insertion(+), 95 deletions(-) diff --git a/homeassistant/components/mold_indicator/__init__.py b/homeassistant/components/mold_indicator/__init__.py index 372947f04c4..1c22b219217 100644 --- a/homeassistant/components/mold_indicator/__init__.py +++ b/homeassistant/components/mold_indicator/__init__.py @@ -9,10 +9,7 @@ from homeassistant.config_entries import ConfigEntry from homeassistant.const import Platform from homeassistant.core import Event, HomeAssistant, callback from homeassistant.helpers import entity_registry as er -from homeassistant.helpers.device import ( - async_entity_id_to_device_id, - async_remove_stale_devices_links_keep_entity_device, -) +from homeassistant.helpers.device import async_entity_id_to_device_id from homeassistant.helpers.event import async_track_entity_registry_updated_event from homeassistant.helpers.helper_integration import ( async_handle_source_entity_changes, @@ -29,11 +26,6 @@ _LOGGER = logging.getLogger(__name__) async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: """Set up Mold indicator from a config entry.""" - # This can be removed in HA Core 2026.2 - async_remove_stale_devices_links_keep_entity_device( - hass, entry.entry_id, entry.options[CONF_INDOOR_HUMIDITY] - ) - def set_source_entity_id_or_uuid(source_entity_id: str) -> None: hass.config_entries.async_update_entry( entry, diff --git a/tests/components/mold_indicator/test_init.py b/tests/components/mold_indicator/test_init.py index bfa8ad3a0ef..93893d7b3ac 100644 --- a/tests/components/mold_indicator/test_init.py +++ b/tests/components/mold_indicator/test_init.py @@ -195,92 +195,6 @@ async def test_unload_entry(hass: HomeAssistant, loaded_entry: MockConfigEntry) assert loaded_entry.state is ConfigEntryState.NOT_LOADED -async def test_device_cleaning( - hass: HomeAssistant, - device_registry: dr.DeviceRegistry, - entity_registry: er.EntityRegistry, -) -> None: - """Test cleaning of devices linked to the helper config entry.""" - - # Source entity device config entry - source_config_entry = MockConfigEntry() - source_config_entry.add_to_hass(hass) - - # Device entry of the source entity - source_device1_entry = device_registry.async_get_or_create( - config_entry_id=source_config_entry.entry_id, - identifiers={("sensor", "identifier_test1")}, - connections={("mac", "30:31:32:33:34:01")}, - ) - - # Source entity registry - source_entity = entity_registry.async_get_or_create( - "sensor", - "indoor", - "humidity", - config_entry=source_config_entry, - device_id=source_device1_entry.id, - ) - await hass.async_block_till_done() - assert entity_registry.async_get("sensor.indoor_humidity") is not None - - # Configure the configuration entry for helper - helper_config_entry = MockConfigEntry( - data={}, - domain=DOMAIN, - options={ - CONF_NAME: DEFAULT_NAME, - CONF_INDOOR_HUMIDITY: "sensor.indoor_humidity", - CONF_INDOOR_TEMP: "sensor.indoor_temp", - CONF_OUTDOOR_TEMP: "sensor.outdoor_temp", - CONF_CALIBRATION_FACTOR: 2.0, - }, - title="Test", - ) - helper_config_entry.add_to_hass(hass) - assert await hass.config_entries.async_setup(helper_config_entry.entry_id) - await hass.async_block_till_done() - - # Confirm the link between the source entity device and the helper entity - helper_entity = entity_registry.async_get("sensor.mold_indicator") - assert helper_entity is not None - assert helper_entity.device_id == source_entity.device_id - - # Device entry incorrectly linked to config entry - device_registry.async_get_or_create( - config_entry_id=helper_config_entry.entry_id, - identifiers={("sensor", "identifier_test2")}, - connections={("mac", "30:31:32:33:34:02")}, - ) - device_registry.async_get_or_create( - config_entry_id=helper_config_entry.entry_id, - identifiers={("sensor", "identifier_test3")}, - connections={("mac", "30:31:32:33:34:03")}, - ) - await hass.async_block_till_done() - - # Before reloading the config entry, 3 devices are expected to be linked - devices_before_reload = device_registry.devices.get_devices_for_config_entry_id( - helper_config_entry.entry_id - ) - assert len(devices_before_reload) == 2 - - # Config entry reload - await hass.config_entries.async_reload(helper_config_entry.entry_id) - await hass.async_block_till_done() - - # Confirm the link between the source entity device and the helper entity - helper_entity = entity_registry.async_get("sensor.mold_indicator") - assert helper_entity is not None - assert helper_entity.device_id == source_entity.device_id - - # After reloading the config entry, only one linked device is expected - devices_after_reload = device_registry.devices.get_devices_for_config_entry_id( - helper_config_entry.entry_id - ) - assert len(devices_after_reload) == 0 - - @pytest.mark.parametrize( ("source_entity_id", "expected_helper_device_id", "expected_events"), [