From c8f95b7dfc357480bdf6295b05cf3aba545699ad Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Thu, 5 May 2022 14:33:37 -0700 Subject: [PATCH] Ignore loading system entity category (#71361) --- homeassistant/helpers/entity_registry.py | 4 ++++ tests/helpers/test_entity_registry.py | 13 ++++++++++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/homeassistant/helpers/entity_registry.py b/homeassistant/helpers/entity_registry.py index b4dd0820d8c..64ab0323f6c 100644 --- a/homeassistant/helpers/entity_registry.py +++ b/homeassistant/helpers/entity_registry.py @@ -711,6 +711,10 @@ class EntityRegistry: if not valid_entity_id(entity["entity_id"]): continue + # We removed this in 2022.5. Remove this check in 2023.1. + if entity["entity_category"] == "system": + entity["entity_category"] = None + entities[entity["entity_id"]] = RegistryEntry( area_id=entity["area_id"], capabilities=entity["capabilities"], diff --git a/tests/helpers/test_entity_registry.py b/tests/helpers/test_entity_registry.py index 41ac7412d9c..21d29736bd0 100644 --- a/tests/helpers/test_entity_registry.py +++ b/tests/helpers/test_entity_registry.py @@ -297,6 +297,12 @@ async def test_loading_extra_values(hass, hass_storage): "unique_id": "invalid-hass", "disabled_by": er.RegistryEntryDisabler.HASS, }, + { + "entity_id": "test.system_entity", + "platform": "super_platform", + "unique_id": "system-entity", + "entity_category": "system", + }, ] }, } @@ -304,7 +310,7 @@ async def test_loading_extra_values(hass, hass_storage): await er.async_load(hass) registry = er.async_get(hass) - assert len(registry.entities) == 4 + assert len(registry.entities) == 5 entry_with_name = registry.async_get_or_create( "test", "super_platform", "with-name" @@ -327,6 +333,11 @@ async def test_loading_extra_values(hass, hass_storage): assert entry_disabled_user.disabled assert entry_disabled_user.disabled_by is er.RegistryEntryDisabler.USER + entry_system_category = registry.async_get_or_create( + "test", "system_entity", "system-entity" + ) + assert entry_system_category.entity_category is None + def test_async_get_entity_id(registry): """Test that entity_id is returned."""