diff --git a/homeassistant/components/incomfort/binary_sensor.py b/homeassistant/components/incomfort/binary_sensor.py index 580001238bd..9a2ec9414eb 100644 --- a/homeassistant/components/incomfort/binary_sensor.py +++ b/homeassistant/components/incomfort/binary_sensor.py @@ -32,7 +32,7 @@ class IncomfortBinarySensorEntityDescription(BinarySensorEntityDescription): SENSOR_TYPES: tuple[IncomfortBinarySensorEntityDescription, ...] = ( IncomfortBinarySensorEntityDescription( key="failed", - name="Fault", + translation_key="fault", device_class=BinarySensorDeviceClass.PROBLEM, value_key="is_failed", extra_state_attributes_fn=lambda status: {"fault_code": status["fault_code"]}, diff --git a/homeassistant/components/incomfort/sensor.py b/homeassistant/components/incomfort/sensor.py index 191d3715122..e0d6740f1d4 100644 --- a/homeassistant/components/incomfort/sensor.py +++ b/homeassistant/components/incomfort/sensor.py @@ -22,10 +22,6 @@ from . import InComfortConfigEntry from .coordinator import InComfortDataCoordinator from .entity import IncomfortBoilerEntity -INCOMFORT_HEATER_TEMP = "CV Temp" -INCOMFORT_PRESSURE = "CV Pressure" -INCOMFORT_TAP_TEMP = "Tap Temp" - @dataclass(frozen=True, kw_only=True) class IncomfortSensorEntityDescription(SensorEntityDescription): @@ -33,15 +29,11 @@ class IncomfortSensorEntityDescription(SensorEntityDescription): value_key: str extra_key: str | None = None - # IncomfortSensor does not support UNDEFINED or None, - # restrict the type to str - name: str = "" SENSOR_TYPES: tuple[IncomfortSensorEntityDescription, ...] = ( IncomfortSensorEntityDescription( key="cv_pressure", - name=INCOMFORT_PRESSURE, device_class=SensorDeviceClass.PRESSURE, state_class=SensorStateClass.MEASUREMENT, native_unit_of_measurement=UnitOfPressure.BAR, @@ -49,7 +41,6 @@ SENSOR_TYPES: tuple[IncomfortSensorEntityDescription, ...] = ( ), IncomfortSensorEntityDescription( key="cv_temp", - name=INCOMFORT_HEATER_TEMP, device_class=SensorDeviceClass.TEMPERATURE, state_class=SensorStateClass.MEASUREMENT, native_unit_of_measurement=UnitOfTemperature.CELSIUS, @@ -58,7 +49,7 @@ SENSOR_TYPES: tuple[IncomfortSensorEntityDescription, ...] = ( ), IncomfortSensorEntityDescription( key="tap_temp", - name=INCOMFORT_TAP_TEMP, + translation_key="tap_temperature", device_class=SensorDeviceClass.TEMPERATURE, state_class=SensorStateClass.MEASUREMENT, native_unit_of_measurement=UnitOfTemperature.CELSIUS, diff --git a/homeassistant/components/incomfort/strings.json b/homeassistant/components/incomfort/strings.json index e94c2e508ad..d4c01e4d0ed 100644 --- a/homeassistant/components/incomfort/strings.json +++ b/homeassistant/components/incomfort/strings.json @@ -52,5 +52,17 @@ "title": "YAML import failed because of timeout issues", "description": "Configuring {integration_title} using YAML is being removed but there was a timeout while connecting to your {integration_title} while importing your existing configuration.\nSetup will not proceed.\n\nVerify that your {integration_title} is operating correctly and restart Home Assistant to attempt the import again.\n\nAlternatively, you may remove the `{domain}` configuration from your configuration.yaml entirely, restart Home Assistant, and add the {integration_title} integration manually." } + }, + "entity": { + "binary_sensor": { + "fault": { + "name": "Fault" + } + }, + "sensor": { + "tap_temperature": { + "name": "Tap temperature" + } + } } } diff --git a/tests/components/incomfort/snapshots/test_binary_sensor.ambr b/tests/components/incomfort/snapshots/test_binary_sensor.ambr index e7832459974..633f3fdf01c 100644 --- a/tests/components/incomfort/snapshots/test_binary_sensor.ambr +++ b/tests/components/incomfort/snapshots/test_binary_sensor.ambr @@ -27,7 +27,7 @@ 'platform': 'incomfort', 'previous_unique_id': None, 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'fault', 'unique_id': 'c0ffeec0ffee_failed', 'unit_of_measurement': None, }) @@ -47,50 +47,3 @@ 'state': 'off', }) # --- -# name: test_setup_platforms[binary_sensor.boiler_fault-entry] - EntityRegistryEntrySnapshot({ - 'aliases': set({ - }), - 'area_id': None, - 'capabilities': None, - 'config_entry_id': , - 'device_class': None, - 'device_id': , - 'disabled_by': None, - 'domain': 'binary_sensor', - 'entity_category': None, - 'entity_id': 'binary_sensor.boiler_fault', - 'has_entity_name': True, - 'hidden_by': None, - 'icon': None, - 'id': , - 'labels': set({ - }), - 'name': None, - 'options': dict({ - }), - 'original_device_class': None, - 'original_icon': None, - 'original_name': 'Fault', - 'platform': 'incomfort', - 'previous_unique_id': None, - 'supported_features': 0, - 'translation_key': None, - 'unique_id': 'c0ffeec0ffee_failed', - 'unit_of_measurement': None, - }) -# --- -# name: test_setup_platforms[binary_sensor.boiler_fault-state] - StateSnapshot({ - 'attributes': ReadOnlyDict({ - 'fault_code': None, - 'friendly_name': 'Boiler Fault', - }), - 'context': , - 'entity_id': 'binary_sensor.boiler_fault', - 'last_changed': , - 'last_reported': , - 'last_updated': , - 'state': 'off', - }) -# --- diff --git a/tests/components/incomfort/snapshots/test_sensor.ambr b/tests/components/incomfort/snapshots/test_sensor.ambr index 3998141c306..8c9ea60f455 100644 --- a/tests/components/incomfort/snapshots/test_sensor.ambr +++ b/tests/components/incomfort/snapshots/test_sensor.ambr @@ -1,5 +1,5 @@ # serializer version: 1 -# name: test_setup_platform[sensor.boiler_cv_pressure-entry] +# name: test_setup_platform[sensor.boiler_pressure-entry] EntityRegistryEntrySnapshot({ 'aliases': set({ }), @@ -13,7 +13,7 @@ 'disabled_by': None, 'domain': 'sensor', 'entity_category': None, - 'entity_id': 'sensor.boiler_cv_pressure', + 'entity_id': 'sensor.boiler_pressure', 'has_entity_name': True, 'hidden_by': None, 'icon': None, @@ -25,7 +25,7 @@ }), 'original_device_class': , 'original_icon': None, - 'original_name': 'CV Pressure', + 'original_name': 'Pressure', 'platform': 'incomfort', 'previous_unique_id': None, 'supported_features': 0, @@ -34,23 +34,23 @@ 'unit_of_measurement': , }) # --- -# name: test_setup_platform[sensor.boiler_cv_pressure-state] +# name: test_setup_platform[sensor.boiler_pressure-state] StateSnapshot({ 'attributes': ReadOnlyDict({ 'device_class': 'pressure', - 'friendly_name': 'Boiler CV Pressure', + 'friendly_name': 'Boiler Pressure', 'state_class': , 'unit_of_measurement': , }), 'context': , - 'entity_id': 'sensor.boiler_cv_pressure', + 'entity_id': 'sensor.boiler_pressure', 'last_changed': , 'last_reported': , 'last_updated': , 'state': '1.86', }) # --- -# name: test_setup_platform[sensor.boiler_cv_temp-entry] +# name: test_setup_platform[sensor.boiler_tap_temperature-entry] EntityRegistryEntrySnapshot({ 'aliases': set({ }), @@ -64,7 +64,7 @@ 'disabled_by': None, 'domain': 'sensor', 'entity_category': None, - 'entity_id': 'sensor.boiler_cv_temp', + 'entity_id': 'sensor.boiler_tap_temperature', 'has_entity_name': True, 'hidden_by': None, 'icon': None, @@ -76,7 +76,59 @@ }), 'original_device_class': , 'original_icon': None, - 'original_name': 'CV Temp', + 'original_name': 'Tap temperature', + 'platform': 'incomfort', + 'previous_unique_id': None, + 'supported_features': 0, + 'translation_key': 'tap_temperature', + 'unique_id': 'c0ffeec0ffee_tap_temp', + 'unit_of_measurement': , + }) +# --- +# name: test_setup_platform[sensor.boiler_tap_temperature-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'device_class': 'temperature', + 'friendly_name': 'Boiler Tap temperature', + 'is_tapping': False, + 'state_class': , + 'unit_of_measurement': , + }), + 'context': , + 'entity_id': 'sensor.boiler_tap_temperature', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': '30.21', + }) +# --- +# name: test_setup_platform[sensor.boiler_temperature-entry] + EntityRegistryEntrySnapshot({ + 'aliases': set({ + }), + 'area_id': None, + 'capabilities': dict({ + 'state_class': , + }), + 'config_entry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'sensor', + 'entity_category': None, + 'entity_id': 'sensor.boiler_temperature', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': 'Temperature', 'platform': 'incomfort', 'previous_unique_id': None, 'supported_features': 0, @@ -85,72 +137,20 @@ 'unit_of_measurement': , }) # --- -# name: test_setup_platform[sensor.boiler_cv_temp-state] +# name: test_setup_platform[sensor.boiler_temperature-state] StateSnapshot({ 'attributes': ReadOnlyDict({ 'device_class': 'temperature', - 'friendly_name': 'Boiler CV Temp', + 'friendly_name': 'Boiler Temperature', 'is_pumping': False, 'state_class': , 'unit_of_measurement': , }), 'context': , - 'entity_id': 'sensor.boiler_cv_temp', + 'entity_id': 'sensor.boiler_temperature', 'last_changed': , 'last_reported': , 'last_updated': , 'state': '35.34', }) # --- -# name: test_setup_platform[sensor.boiler_tap_temp-entry] - EntityRegistryEntrySnapshot({ - 'aliases': set({ - }), - 'area_id': None, - 'capabilities': dict({ - 'state_class': , - }), - 'config_entry_id': , - 'device_class': None, - 'device_id': , - 'disabled_by': None, - 'domain': 'sensor', - 'entity_category': None, - 'entity_id': 'sensor.boiler_tap_temp', - 'has_entity_name': True, - 'hidden_by': None, - 'icon': None, - 'id': , - 'labels': set({ - }), - 'name': None, - 'options': dict({ - }), - 'original_device_class': , - 'original_icon': None, - 'original_name': 'Tap Temp', - 'platform': 'incomfort', - 'previous_unique_id': None, - 'supported_features': 0, - 'translation_key': None, - 'unique_id': 'c0ffeec0ffee_tap_temp', - 'unit_of_measurement': , - }) -# --- -# name: test_setup_platform[sensor.boiler_tap_temp-state] - StateSnapshot({ - 'attributes': ReadOnlyDict({ - 'device_class': 'temperature', - 'friendly_name': 'Boiler Tap Temp', - 'is_tapping': False, - 'state_class': , - 'unit_of_measurement': , - }), - 'context': , - 'entity_id': 'sensor.boiler_tap_temp', - 'last_changed': , - 'last_reported': , - 'last_updated': , - 'state': '30.21', - }) -# --- diff --git a/tests/components/incomfort/test_init.py b/tests/components/incomfort/test_init.py index 47365a836d2..0390a47a616 100644 --- a/tests/components/incomfort/test_init.py +++ b/tests/components/incomfort/test_init.py @@ -41,7 +41,7 @@ async def test_coordinator_updates( assert state.attributes["current_temperature"] == 21.4 mock_incomfort().mock_room_status["room_temp"] = 20.91 - state = hass.states.get("sensor.boiler_cv_pressure") + state = hass.states.get("sensor.boiler_pressure") assert state is not None assert state.state == "1.86" mock_incomfort().mock_heater_status["pressure"] = 1.84 @@ -54,7 +54,7 @@ async def test_coordinator_updates( assert state is not None assert state.attributes["current_temperature"] == 20.9 - state = hass.states.get("sensor.boiler_cv_pressure") + state = hass.states.get("sensor.boiler_pressure") assert state is not None assert state.state == "1.84" @@ -77,7 +77,7 @@ async def test_coordinator_update_fails( ) -> None: """Test the incomfort coordinator update fails.""" await hass.config_entries.async_setup(mock_config_entry.entry_id) - state = hass.states.get("sensor.boiler_cv_pressure") + state = hass.states.get("sensor.boiler_pressure") assert state is not None assert state.state == "1.86" @@ -88,6 +88,6 @@ async def test_coordinator_update_fails( async_fire_time_changed(hass) await hass.async_block_till_done(wait_background_tasks=True) - state = hass.states.get("sensor.boiler_cv_pressure") + state = hass.states.get("sensor.boiler_pressure") assert state is not None assert state.state == STATE_UNAVAILABLE