From 19e27f4f529b95333e9080d1530dab12500fffa7 Mon Sep 17 00:00:00 2001 From: epenet <6771947+epenet@users.noreply.github.com> Date: Sat, 4 Feb 2023 21:28:47 +0100 Subject: [PATCH] Ensure recorder api aligns with sensor converters (#87257) --- tests/components/recorder/test_websocket_api.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tests/components/recorder/test_websocket_api.py b/tests/components/recorder/test_websocket_api.py index 3823b3f1796..8f6156ca048 100644 --- a/tests/components/recorder/test_websocket_api.py +++ b/tests/components/recorder/test_websocket_api.py @@ -17,6 +17,8 @@ from homeassistant.components.recorder.statistics import ( get_metadata, list_statistic_ids, ) +from homeassistant.components.recorder.websocket_api import UNIT_SCHEMA +from homeassistant.components.sensor import UNIT_CONVERTERS from homeassistant.helpers import recorder as recorder_helper from homeassistant.setup import async_setup_component import homeassistant.util.dt as dt_util @@ -124,6 +126,15 @@ VOLUME_SENSOR_M3_ATTRIBUTES_TOTAL = { } +def test_converters_align_with_sensor(): + """Ensure UNIT_SCHEMA is aligned with sensor UNIT_CONVERTERS.""" + for converter in UNIT_CONVERTERS.values(): + assert converter.UNIT_CLASS in UNIT_SCHEMA.schema + + for unit_class in UNIT_SCHEMA.schema: + assert any(c for c in UNIT_CONVERTERS.values() if unit_class == c.UNIT_CLASS) + + async def test_statistics_during_period(recorder_mock, hass, hass_ws_client): """Test statistics_during_period.""" now = dt_util.utcnow()