From be7e61b88b72ac3fdee61510e4cfc43595dffddb Mon Sep 17 00:00:00 2001 From: G Johansson Date: Wed, 26 Oct 2022 11:27:44 +0200 Subject: [PATCH] Add unique id for min_max (#81007) --- homeassistant/components/min_max/sensor.py | 5 ++++- tests/components/min_max/test_sensor.py | 6 ++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/homeassistant/components/min_max/sensor.py b/homeassistant/components/min_max/sensor.py index 0f53875861d..87edcd38766 100644 --- a/homeassistant/components/min_max/sensor.py +++ b/homeassistant/components/min_max/sensor.py @@ -16,6 +16,7 @@ from homeassistant.const import ( ATTR_UNIT_OF_MEASUREMENT, CONF_NAME, CONF_TYPE, + CONF_UNIQUE_ID, STATE_UNAVAILABLE, STATE_UNKNOWN, ) @@ -61,6 +62,7 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend( vol.Optional(CONF_NAME): cv.string, vol.Required(CONF_ENTITY_IDS): cv.entity_ids, vol.Optional(CONF_ROUND_DIGITS, default=2): vol.Coerce(int), + vol.Optional(CONF_UNIQUE_ID): str, } ) @@ -102,11 +104,12 @@ async def async_setup_platform( name = config.get(CONF_NAME) sensor_type = config.get(CONF_TYPE) round_digits = config.get(CONF_ROUND_DIGITS) + unique_id = config.get(CONF_UNIQUE_ID) await async_setup_reload_service(hass, DOMAIN, PLATFORMS) async_add_entities( - [MinMaxSensor(entity_ids, name, sensor_type, round_digits, None)] + [MinMaxSensor(entity_ids, name, sensor_type, round_digits, unique_id)] ) diff --git a/tests/components/min_max/test_sensor.py b/tests/components/min_max/test_sensor.py index 47435dfbaf3..4819cc31a9b 100644 --- a/tests/components/min_max/test_sensor.py +++ b/tests/components/min_max/test_sensor.py @@ -14,6 +14,7 @@ from homeassistant.const import ( TEMP_CELSIUS, TEMP_FAHRENHEIT, ) +import homeassistant.helpers.entity_registry as er from homeassistant.setup import async_setup_component from tests.common import get_fixture_path @@ -63,6 +64,7 @@ async def test_min_sensor(hass): "name": "test_min", "type": "min", "entity_ids": ["sensor.test_1", "sensor.test_2", "sensor.test_3"], + "unique_id": "very_unique_id", } } @@ -81,6 +83,10 @@ async def test_min_sensor(hass): assert entity_ids[2] == state.attributes.get("min_entity_id") assert state.attributes.get(ATTR_STATE_CLASS) == SensorStateClass.MEASUREMENT + entity_reg = er.async_get(hass) + entity = entity_reg.async_get("sensor.test_min") + assert entity.unique_id == "very_unique_id" + async def test_max_sensor(hass): """Test the max sensor."""