From 2ff5d6290f8b911f9a0de7ef491db8278a2d05a2 Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Tue, 22 Aug 2023 23:09:18 +0200 Subject: [PATCH] Migrate Prosegur to has entity name (#98845) --- .../components/prosegur/alarm_control_panel.py | 9 +++++---- homeassistant/components/prosegur/camera.py | 10 ++++++---- tests/components/prosegur/test_alarm_control_panel.py | 2 +- tests/components/prosegur/test_camera.py | 8 ++++---- 4 files changed, 16 insertions(+), 13 deletions(-) diff --git a/homeassistant/components/prosegur/alarm_control_panel.py b/homeassistant/components/prosegur/alarm_control_panel.py index 8d1f087bfff..77cdb5e11a2 100644 --- a/homeassistant/components/prosegur/alarm_control_panel.py +++ b/homeassistant/components/prosegur/alarm_control_panel.py @@ -47,6 +47,8 @@ class ProsegurAlarm(alarm.AlarmControlPanelEntity): AlarmControlPanelEntityFeature.ARM_AWAY | AlarmControlPanelEntityFeature.ARM_HOME ) + _attr_has_entity_name = True + _attr_name = None _installation: Installation def __init__(self, contract: str, auth: Auth) -> None: @@ -57,14 +59,13 @@ class ProsegurAlarm(alarm.AlarmControlPanelEntity): self._auth = auth self._attr_code_arm_required = False - self._attr_name = f"contract {self.contract}" - self._attr_unique_id = self.contract + self._attr_unique_id = contract self._attr_device_info = DeviceInfo( - name="Prosegur Alarm", + name=f"Contract {contract}", manufacturer="Prosegur", model="smart", - identifiers={(DOMAIN, self.contract)}, + identifiers={(DOMAIN, contract)}, configuration_url="https://smart.prosegur.com", ) diff --git a/homeassistant/components/prosegur/camera.py b/homeassistant/components/prosegur/camera.py index bdd265d1e42..c711ca2eac6 100644 --- a/homeassistant/components/prosegur/camera.py +++ b/homeassistant/components/prosegur/camera.py @@ -50,6 +50,8 @@ async def async_setup_entry( class ProsegurCamera(Camera): """Representation of a Smart Prosegur Camera.""" + _attr_has_entity_name = True + def __init__( self, installation: Installation, camera: InstallationCamera, auth: Auth ) -> None: @@ -59,14 +61,14 @@ class ProsegurCamera(Camera): self._installation = installation self._camera = camera self._auth = auth + self._attr_unique_id = f"{installation.contract} {camera.id}" self._attr_name = camera.description - self._attr_unique_id = f"{self._installation.contract} {camera.id}" self._attr_device_info = DeviceInfo( - name=self._camera.description, + name=f"Contract {installation.contract}", manufacturer="Prosegur", - model="smart camera", - identifiers={(DOMAIN, self._installation.contract)}, + model="smart", + identifiers={(DOMAIN, installation.contract)}, configuration_url="https://smart.prosegur.com", ) diff --git a/tests/components/prosegur/test_alarm_control_panel.py b/tests/components/prosegur/test_alarm_control_panel.py index 51086e74b00..d5244de1b43 100644 --- a/tests/components/prosegur/test_alarm_control_panel.py +++ b/tests/components/prosegur/test_alarm_control_panel.py @@ -59,7 +59,7 @@ async def test_entity_registry( state = hass.states.get(PROSEGUR_ALARM_ENTITY) - assert state.attributes.get(ATTR_FRIENDLY_NAME) == f"contract {CONTRACT}" + assert state.attributes.get(ATTR_FRIENDLY_NAME) == f"Contract {CONTRACT}" assert state.attributes.get(ATTR_SUPPORTED_FEATURES) == 3 diff --git a/tests/components/prosegur/test_camera.py b/tests/components/prosegur/test_camera.py index ba2e478f5cd..58017085aed 100644 --- a/tests/components/prosegur/test_camera.py +++ b/tests/components/prosegur/test_camera.py @@ -16,7 +16,7 @@ from homeassistant.exceptions import HomeAssistantError async def test_camera(hass: HomeAssistant, init_integration) -> None: """Test prosegur get_image.""" - image = await camera.async_get_image(hass, "camera.test_cam") + image = await camera.async_get_image(hass, "camera.contract_1234abcd_test_cam") assert image == Image(content_type="image/jpeg", content=b"ABC") @@ -36,7 +36,7 @@ async def test_camera_fail( with caplog.at_level( logging.ERROR, logger="homeassistant.components.prosegur" ), pytest.raises(HomeAssistantError) as exc: - await camera.async_get_image(hass, "camera.test_cam") + await camera.async_get_image(hass, "camera.contract_1234abcd_test_cam") assert "Unable to get image" in str(exc.value) @@ -51,7 +51,7 @@ async def test_request_image( await hass.services.async_call( DOMAIN, "request_image", - {ATTR_ENTITY_ID: "camera.test_cam"}, + {ATTR_ENTITY_ID: "camera.contract_1234abcd_test_cam"}, ) await hass.async_block_till_done() @@ -72,7 +72,7 @@ async def test_request_image_fail( await hass.services.async_call( DOMAIN, "request_image", - {ATTR_ENTITY_ID: "camera.test_cam"}, + {ATTR_ENTITY_ID: "camera.contract_1234abcd_test_cam"}, ) await hass.async_block_till_done()