diff --git a/homeassistant/components/integration/__init__.py b/homeassistant/components/integration/__init__.py index b03baf32e91..d45ac8f3708 100644 --- a/homeassistant/components/integration/__init__.py +++ b/homeassistant/components/integration/__init__.py @@ -7,10 +7,7 @@ import logging from homeassistant.config_entries import ConfigEntry from homeassistant.const import Platform from homeassistant.core import HomeAssistant -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.helper_integration import ( async_handle_source_entity_changes, async_remove_helper_config_entry_from_source_device, @@ -24,13 +21,6 @@ _LOGGER = logging.getLogger(__name__) async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: """Set up Integration 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_SOURCE_SENSOR], - ) - def set_source_entity_id_or_uuid(source_entity_id: str) -> None: hass.config_entries.async_update_entry( entry, diff --git a/tests/components/integration/test_init.py b/tests/components/integration/test_init.py index b0d98011a17..8d8a5b3668d 100644 --- a/tests/components/integration/test_init.py +++ b/tests/components/integration/test_init.py @@ -213,94 +213,6 @@ async def test_entry_changed(hass: HomeAssistant, platform) -> None: assert integration_entity_entry.device_id == valid_entry.device_id -async def test_device_cleaning( - hass: HomeAssistant, - device_registry: dr.DeviceRegistry, - entity_registry: er.EntityRegistry, -) -> None: - """Test for source entity device for Integration.""" - - # 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", - "test", - "source", - config_entry=source_config_entry, - device_id=source_device1_entry.id, - ) - await hass.async_block_till_done() - assert entity_registry.async_get("sensor.test_source") is not None - - # Configure the configuration entry for Integration - integration_config_entry = MockConfigEntry( - data={}, - domain=DOMAIN, - options={ - "method": "trapezoidal", - "name": "Integration", - "round": 1.0, - "source": "sensor.test_source", - "unit_prefix": "k", - "unit_time": "min", - "max_sub_interval": {"minutes": 1}, - }, - title="Integration", - ) - integration_config_entry.add_to_hass(hass) - assert await hass.config_entries.async_setup(integration_config_entry.entry_id) - await hass.async_block_till_done() - - # Confirm the link between the source entity device and the integration sensor - integration_entity = entity_registry.async_get("sensor.integration") - assert integration_entity is not None - assert integration_entity.device_id == source_entity.device_id - - # Device entry incorrectly linked to Integration config entry - device_registry.async_get_or_create( - config_entry_id=integration_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=integration_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, two devices are expected to be linked - devices_before_reload = device_registry.devices.get_devices_for_config_entry_id( - integration_config_entry.entry_id - ) - assert len(devices_before_reload) == 2 - - # Config entry reload - await hass.config_entries.async_reload(integration_config_entry.entry_id) - await hass.async_block_till_done() - - # Confirm the link between the source entity device and the integration sensor after reload - integration_entity = entity_registry.async_get("sensor.integration") - assert integration_entity is not None - assert integration_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( - integration_config_entry.entry_id - ) - assert len(devices_after_reload) == 0 - - async def test_async_handle_source_entity_changes_source_entity_removed( hass: HomeAssistant, device_registry: dr.DeviceRegistry,