From e99b6b2a0328b361f494c1d0c188161406e9e840 Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Mon, 17 Jul 2023 17:52:53 +0200 Subject: [PATCH] Migrate VeSync to has entity name (#96772) * Migrate VeSync to has entity name * Fix tests --- homeassistant/components/vesync/common.py | 11 +- homeassistant/components/vesync/fan.py | 1 + homeassistant/components/vesync/light.py | 2 + homeassistant/components/vesync/sensor.py | 18 ++- homeassistant/components/vesync/strings.json | 28 +++++ homeassistant/components/vesync/switch.py | 2 + .../vesync/snapshots/test_diagnostics.ambr | 10 +- .../components/vesync/snapshots/test_fan.ambr | 16 +-- .../vesync/snapshots/test_light.ambr | 12 +- .../vesync/snapshots/test_sensor.ambr | 112 +++++++++--------- .../vesync/snapshots/test_switch.ambr | 8 +- 11 files changed, 123 insertions(+), 97 deletions(-) diff --git a/homeassistant/components/vesync/common.py b/homeassistant/components/vesync/common.py index f0684b6b01d..8e6ad545bd0 100644 --- a/homeassistant/components/vesync/common.py +++ b/homeassistant/components/vesync/common.py @@ -51,11 +51,12 @@ async def async_process_devices(hass, manager): class VeSyncBaseEntity(Entity): """Base class for VeSync Entity Representations.""" + _attr_has_entity_name = True + def __init__(self, device: VeSyncBaseDevice) -> None: """Initialize the VeSync device.""" self.device = device self._attr_unique_id = self.base_unique_id - self._attr_name = self.base_name @property def base_unique_id(self): @@ -67,12 +68,6 @@ class VeSyncBaseEntity(Entity): return f"{self.device.cid}{str(self.device.sub_device_no)}" return self.device.cid - @property - def base_name(self) -> str: - """Return the name of the device.""" - # Same story here as `base_unique_id` above - return self.device.device_name - @property def available(self) -> bool: """Return True if device is available.""" @@ -83,7 +78,7 @@ class VeSyncBaseEntity(Entity): """Return device information.""" return DeviceInfo( identifiers={(DOMAIN, self.base_unique_id)}, - name=self.base_name, + name=self.device.device_name, model=self.device.device_type, manufacturer="VeSync", sw_version=self.device.current_firm_version, diff --git a/homeassistant/components/vesync/fan.py b/homeassistant/components/vesync/fan.py index f89224aaba8..a3bf027c28f 100644 --- a/homeassistant/components/vesync/fan.py +++ b/homeassistant/components/vesync/fan.py @@ -87,6 +87,7 @@ class VeSyncFanHA(VeSyncDevice, FanEntity): """Representation of a VeSync fan.""" _attr_supported_features = FanEntityFeature.SET_SPEED + _attr_name = None def __init__(self, fan): """Initialize the VeSync fan device.""" diff --git a/homeassistant/components/vesync/light.py b/homeassistant/components/vesync/light.py index 9129d060cdc..e6cc979e808 100644 --- a/homeassistant/components/vesync/light.py +++ b/homeassistant/components/vesync/light.py @@ -66,6 +66,8 @@ def _setup_entities(devices, async_add_entities): class VeSyncBaseLight(VeSyncDevice, LightEntity): """Base class for VeSync Light Devices Representations.""" + _attr_name = None + @property def brightness(self) -> int: """Get light brightness.""" diff --git a/homeassistant/components/vesync/sensor.py b/homeassistant/components/vesync/sensor.py index bc0db04dd47..f3612c2d011 100644 --- a/homeassistant/components/vesync/sensor.py +++ b/homeassistant/components/vesync/sensor.py @@ -79,7 +79,7 @@ PM25_SUPPORTED = ["Core300S", "Core400S", "Core600S"] SENSORS: tuple[VeSyncSensorEntityDescription, ...] = ( VeSyncSensorEntityDescription( key="filter-life", - name="Filter Life", + translation_key="filter_life", native_unit_of_measurement=PERCENTAGE, state_class=SensorStateClass.MEASUREMENT, entity_category=EntityCategory.DIAGNOSTIC, @@ -88,13 +88,12 @@ SENSORS: tuple[VeSyncSensorEntityDescription, ...] = ( ), VeSyncSensorEntityDescription( key="air-quality", - name="Air Quality", + translation_key="air_quality", value_fn=lambda device: device.details["air_quality"], exists_fn=lambda device: sku_supported(device, AIR_QUALITY_SUPPORTED), ), VeSyncSensorEntityDescription( key="pm25", - name="PM2.5", device_class=SensorDeviceClass.PM25, native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, state_class=SensorStateClass.MEASUREMENT, @@ -103,7 +102,7 @@ SENSORS: tuple[VeSyncSensorEntityDescription, ...] = ( ), VeSyncSensorEntityDescription( key="power", - name="current power", + translation_key="current_power", device_class=SensorDeviceClass.POWER, native_unit_of_measurement=UnitOfPower.WATT, state_class=SensorStateClass.MEASUREMENT, @@ -113,7 +112,7 @@ SENSORS: tuple[VeSyncSensorEntityDescription, ...] = ( ), VeSyncSensorEntityDescription( key="energy", - name="energy use today", + translation_key="energy_today", device_class=SensorDeviceClass.ENERGY, native_unit_of_measurement=UnitOfEnergy.KILO_WATT_HOUR, state_class=SensorStateClass.TOTAL_INCREASING, @@ -123,7 +122,7 @@ SENSORS: tuple[VeSyncSensorEntityDescription, ...] = ( ), VeSyncSensorEntityDescription( key="energy-weekly", - name="energy use weekly", + translation_key="energy_week", device_class=SensorDeviceClass.ENERGY, native_unit_of_measurement=UnitOfEnergy.KILO_WATT_HOUR, state_class=SensorStateClass.TOTAL_INCREASING, @@ -133,7 +132,7 @@ SENSORS: tuple[VeSyncSensorEntityDescription, ...] = ( ), VeSyncSensorEntityDescription( key="energy-monthly", - name="energy use monthly", + translation_key="energy_month", device_class=SensorDeviceClass.ENERGY, native_unit_of_measurement=UnitOfEnergy.KILO_WATT_HOUR, state_class=SensorStateClass.TOTAL_INCREASING, @@ -143,7 +142,7 @@ SENSORS: tuple[VeSyncSensorEntityDescription, ...] = ( ), VeSyncSensorEntityDescription( key="energy-yearly", - name="energy use yearly", + translation_key="energy_year", device_class=SensorDeviceClass.ENERGY, native_unit_of_measurement=UnitOfEnergy.KILO_WATT_HOUR, state_class=SensorStateClass.TOTAL_INCREASING, @@ -153,7 +152,7 @@ SENSORS: tuple[VeSyncSensorEntityDescription, ...] = ( ), VeSyncSensorEntityDescription( key="voltage", - name="current voltage", + translation_key="current_voltage", device_class=SensorDeviceClass.VOLTAGE, native_unit_of_measurement=UnitOfElectricPotential.VOLT, state_class=SensorStateClass.MEASUREMENT, @@ -207,7 +206,6 @@ class VeSyncSensorEntity(VeSyncBaseEntity, SensorEntity): """Initialize the VeSync outlet device.""" super().__init__(device) self.entity_description = description - self._attr_name = f"{super().name} {description.name}" self._attr_unique_id = f"{super().unique_id}-{description.key}" @property diff --git a/homeassistant/components/vesync/strings.json b/homeassistant/components/vesync/strings.json index 08cbdf943f6..9a54062a2b5 100644 --- a/homeassistant/components/vesync/strings.json +++ b/homeassistant/components/vesync/strings.json @@ -16,6 +16,34 @@ "single_instance_allowed": "[%key:common::config_flow::abort::single_instance_allowed%]" } }, + "entity": { + "sensor": { + "filter_life": { + "name": "Filter life" + }, + "air_quality": { + "name": "Air quality" + }, + "current_power": { + "name": "Current power" + }, + "energy_today": { + "name": "Energy use today" + }, + "energy_week": { + "name": "Energy use weekly" + }, + "energy_month": { + "name": "Energy use monthly" + }, + "energy_year": { + "name": "Energy use yearly" + }, + "current_voltage": { + "name": "Current voltage" + } + } + }, "services": { "update_devices": { "name": "Update devices", diff --git a/homeassistant/components/vesync/switch.py b/homeassistant/components/vesync/switch.py index 93cb5c67a5d..e6101b2ba51 100644 --- a/homeassistant/components/vesync/switch.py +++ b/homeassistant/components/vesync/switch.py @@ -54,6 +54,8 @@ def _setup_entities(devices, async_add_entities): class VeSyncBaseSwitch(VeSyncDevice, SwitchEntity): """Base class for VeSync switch Device Representations.""" + _attr_name = None + def turn_on(self, **kwargs: Any) -> None: """Turn the device on.""" self.device.turn_on() diff --git a/tests/components/vesync/snapshots/test_diagnostics.ambr b/tests/components/vesync/snapshots/test_diagnostics.ambr index 2c12f9bc5f6..b9426f5ba1e 100644 --- a/tests/components/vesync/snapshots/test_diagnostics.ambr +++ b/tests/components/vesync/snapshots/test_diagnostics.ambr @@ -192,7 +192,7 @@ 'name': None, 'original_device_class': None, 'original_icon': None, - 'original_name': 'Fan', + 'original_name': None, 'state': dict({ 'attributes': dict({ 'friendly_name': 'Fan', @@ -220,10 +220,10 @@ 'name': None, 'original_device_class': None, 'original_icon': None, - 'original_name': 'Fan Air Quality', + 'original_name': 'Air quality', 'state': dict({ 'attributes': dict({ - 'friendly_name': 'Fan Air Quality', + 'friendly_name': 'Fan Air quality', }), 'entity_id': 'sensor.fan_air_quality', 'last_changed': str, @@ -243,10 +243,10 @@ 'name': None, 'original_device_class': None, 'original_icon': None, - 'original_name': 'Fan Filter Life', + 'original_name': 'Filter life', 'state': dict({ 'attributes': dict({ - 'friendly_name': 'Fan Filter Life', + 'friendly_name': 'Fan Filter life', 'state_class': 'measurement', 'unit_of_measurement': '%', }), diff --git a/tests/components/vesync/snapshots/test_fan.ambr b/tests/components/vesync/snapshots/test_fan.ambr index 82a31b5fc14..428f066e6cc 100644 --- a/tests/components/vesync/snapshots/test_fan.ambr +++ b/tests/components/vesync/snapshots/test_fan.ambr @@ -47,7 +47,7 @@ 'domain': 'fan', 'entity_category': None, 'entity_id': 'fan.air_purifier_131s', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -56,7 +56,7 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Air Purifier 131s', + 'original_name': None, 'platform': 'vesync', 'supported_features': , 'translation_key': None, @@ -129,7 +129,7 @@ 'domain': 'fan', 'entity_category': None, 'entity_id': 'fan.air_purifier_200s', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -138,7 +138,7 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Air Purifier 200s', + 'original_name': None, 'platform': 'vesync', 'supported_features': , 'translation_key': None, @@ -218,7 +218,7 @@ 'domain': 'fan', 'entity_category': None, 'entity_id': 'fan.air_purifier_400s', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -227,7 +227,7 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Air Purifier 400s', + 'original_name': None, 'platform': 'vesync', 'supported_features': , 'translation_key': None, @@ -308,7 +308,7 @@ 'domain': 'fan', 'entity_category': None, 'entity_id': 'fan.air_purifier_600s', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -317,7 +317,7 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Air Purifier 600s', + 'original_name': None, 'platform': 'vesync', 'supported_features': , 'translation_key': None, diff --git a/tests/components/vesync/snapshots/test_light.ambr b/tests/components/vesync/snapshots/test_light.ambr index 1f7b0aa9baf..67940603d41 100644 --- a/tests/components/vesync/snapshots/test_light.ambr +++ b/tests/components/vesync/snapshots/test_light.ambr @@ -178,7 +178,7 @@ 'domain': 'light', 'entity_category': None, 'entity_id': 'light.dimmable_light', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -187,7 +187,7 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Dimmable Light', + 'original_name': None, 'platform': 'vesync', 'supported_features': 0, 'translation_key': None, @@ -259,7 +259,7 @@ 'domain': 'light', 'entity_category': None, 'entity_id': 'light.dimmer_switch', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -268,7 +268,7 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Dimmer Switch', + 'original_name': None, 'platform': 'vesync', 'supported_features': 0, 'translation_key': None, @@ -395,7 +395,7 @@ 'domain': 'light', 'entity_category': None, 'entity_id': 'light.temperature_light', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -404,7 +404,7 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Temperature Light', + 'original_name': None, 'platform': 'vesync', 'supported_features': 0, 'translation_key': None, diff --git a/tests/components/vesync/snapshots/test_sensor.ambr b/tests/components/vesync/snapshots/test_sensor.ambr index 040e41747a2..1fc89722699 100644 --- a/tests/components/vesync/snapshots/test_sensor.ambr +++ b/tests/components/vesync/snapshots/test_sensor.ambr @@ -44,7 +44,7 @@ 'domain': 'sensor', 'entity_category': , 'entity_id': 'sensor.air_purifier_131s_filter_life', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -53,10 +53,10 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Air Purifier 131s Filter Life', + 'original_name': 'Filter life', 'platform': 'vesync', 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'filter_life', 'unique_id': 'air-purifier-filter-life', 'unit_of_measurement': '%', }), @@ -72,7 +72,7 @@ 'domain': 'sensor', 'entity_category': None, 'entity_id': 'sensor.air_purifier_131s_air_quality', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -81,10 +81,10 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Air Purifier 131s Air Quality', + 'original_name': 'Air quality', 'platform': 'vesync', 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'air_quality', 'unique_id': 'air-purifier-air-quality', 'unit_of_measurement': None, }), @@ -93,7 +93,7 @@ # name: test_sensor_state[Air Purifier 131s][sensor.air_purifier_131s_air_quality] StateSnapshot({ 'attributes': ReadOnlyDict({ - 'friendly_name': 'Air Purifier 131s Air Quality', + 'friendly_name': 'Air Purifier 131s Air quality', }), 'context': , 'entity_id': 'sensor.air_purifier_131s_air_quality', @@ -105,7 +105,7 @@ # name: test_sensor_state[Air Purifier 131s][sensor.air_purifier_131s_filter_life] StateSnapshot({ 'attributes': ReadOnlyDict({ - 'friendly_name': 'Air Purifier 131s Filter Life', + 'friendly_name': 'Air Purifier 131s Filter life', 'state_class': , 'unit_of_measurement': '%', }), @@ -161,7 +161,7 @@ 'domain': 'sensor', 'entity_category': , 'entity_id': 'sensor.air_purifier_200s_filter_life', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -170,10 +170,10 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Air Purifier 200s Filter Life', + 'original_name': 'Filter life', 'platform': 'vesync', 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'filter_life', 'unique_id': 'asd_sdfKIHG7IJHGwJGJ7GJ_ag5h3G55-filter-life', 'unit_of_measurement': '%', }), @@ -182,7 +182,7 @@ # name: test_sensor_state[Air Purifier 200s][sensor.air_purifier_200s_filter_life] StateSnapshot({ 'attributes': ReadOnlyDict({ - 'friendly_name': 'Air Purifier 200s Filter Life', + 'friendly_name': 'Air Purifier 200s Filter life', 'state_class': , 'unit_of_measurement': '%', }), @@ -238,7 +238,7 @@ 'domain': 'sensor', 'entity_category': , 'entity_id': 'sensor.air_purifier_400s_filter_life', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -247,10 +247,10 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Air Purifier 400s Filter Life', + 'original_name': 'Filter life', 'platform': 'vesync', 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'filter_life', 'unique_id': '400s-purifier-filter-life', 'unit_of_measurement': '%', }), @@ -266,7 +266,7 @@ 'domain': 'sensor', 'entity_category': None, 'entity_id': 'sensor.air_purifier_400s_air_quality', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -275,10 +275,10 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Air Purifier 400s Air Quality', + 'original_name': 'Air quality', 'platform': 'vesync', 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'air_quality', 'unique_id': '400s-purifier-air-quality', 'unit_of_measurement': None, }), @@ -296,7 +296,7 @@ 'domain': 'sensor', 'entity_category': None, 'entity_id': 'sensor.air_purifier_400s_pm2_5', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -305,7 +305,7 @@ }), 'original_device_class': , 'original_icon': None, - 'original_name': 'Air Purifier 400s PM2.5', + 'original_name': 'PM2.5', 'platform': 'vesync', 'supported_features': 0, 'translation_key': None, @@ -317,7 +317,7 @@ # name: test_sensor_state[Air Purifier 400s][sensor.air_purifier_400s_air_quality] StateSnapshot({ 'attributes': ReadOnlyDict({ - 'friendly_name': 'Air Purifier 400s Air Quality', + 'friendly_name': 'Air Purifier 400s Air quality', }), 'context': , 'entity_id': 'sensor.air_purifier_400s_air_quality', @@ -329,7 +329,7 @@ # name: test_sensor_state[Air Purifier 400s][sensor.air_purifier_400s_filter_life] StateSnapshot({ 'attributes': ReadOnlyDict({ - 'friendly_name': 'Air Purifier 400s Filter Life', + 'friendly_name': 'Air Purifier 400s Filter life', 'state_class': , 'unit_of_measurement': '%', }), @@ -400,7 +400,7 @@ 'domain': 'sensor', 'entity_category': , 'entity_id': 'sensor.air_purifier_600s_filter_life', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -409,10 +409,10 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Air Purifier 600s Filter Life', + 'original_name': 'Filter life', 'platform': 'vesync', 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'filter_life', 'unique_id': '600s-purifier-filter-life', 'unit_of_measurement': '%', }), @@ -428,7 +428,7 @@ 'domain': 'sensor', 'entity_category': None, 'entity_id': 'sensor.air_purifier_600s_air_quality', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -437,10 +437,10 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Air Purifier 600s Air Quality', + 'original_name': 'Air quality', 'platform': 'vesync', 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'air_quality', 'unique_id': '600s-purifier-air-quality', 'unit_of_measurement': None, }), @@ -458,7 +458,7 @@ 'domain': 'sensor', 'entity_category': None, 'entity_id': 'sensor.air_purifier_600s_pm2_5', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -467,7 +467,7 @@ }), 'original_device_class': , 'original_icon': None, - 'original_name': 'Air Purifier 600s PM2.5', + 'original_name': 'PM2.5', 'platform': 'vesync', 'supported_features': 0, 'translation_key': None, @@ -479,7 +479,7 @@ # name: test_sensor_state[Air Purifier 600s][sensor.air_purifier_600s_air_quality] StateSnapshot({ 'attributes': ReadOnlyDict({ - 'friendly_name': 'Air Purifier 600s Air Quality', + 'friendly_name': 'Air Purifier 600s Air quality', }), 'context': , 'entity_id': 'sensor.air_purifier_600s_air_quality', @@ -491,7 +491,7 @@ # name: test_sensor_state[Air Purifier 600s][sensor.air_purifier_600s_filter_life] StateSnapshot({ 'attributes': ReadOnlyDict({ - 'friendly_name': 'Air Purifier 600s Filter Life', + 'friendly_name': 'Air Purifier 600s Filter life', 'state_class': , 'unit_of_measurement': '%', }), @@ -644,7 +644,7 @@ 'domain': 'sensor', 'entity_category': None, 'entity_id': 'sensor.outlet_current_power', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -653,10 +653,10 @@ }), 'original_device_class': , 'original_icon': None, - 'original_name': 'Outlet current power', + 'original_name': 'Current power', 'platform': 'vesync', 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'current_power', 'unique_id': 'outlet-power', 'unit_of_measurement': , }), @@ -674,7 +674,7 @@ 'domain': 'sensor', 'entity_category': None, 'entity_id': 'sensor.outlet_energy_use_today', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -683,10 +683,10 @@ }), 'original_device_class': , 'original_icon': None, - 'original_name': 'Outlet energy use today', + 'original_name': 'Energy use today', 'platform': 'vesync', 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'energy_today', 'unique_id': 'outlet-energy', 'unit_of_measurement': , }), @@ -704,7 +704,7 @@ 'domain': 'sensor', 'entity_category': None, 'entity_id': 'sensor.outlet_energy_use_weekly', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -713,10 +713,10 @@ }), 'original_device_class': , 'original_icon': None, - 'original_name': 'Outlet energy use weekly', + 'original_name': 'Energy use weekly', 'platform': 'vesync', 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'energy_week', 'unique_id': 'outlet-energy-weekly', 'unit_of_measurement': , }), @@ -734,7 +734,7 @@ 'domain': 'sensor', 'entity_category': None, 'entity_id': 'sensor.outlet_energy_use_monthly', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -743,10 +743,10 @@ }), 'original_device_class': , 'original_icon': None, - 'original_name': 'Outlet energy use monthly', + 'original_name': 'Energy use monthly', 'platform': 'vesync', 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'energy_month', 'unique_id': 'outlet-energy-monthly', 'unit_of_measurement': , }), @@ -764,7 +764,7 @@ 'domain': 'sensor', 'entity_category': None, 'entity_id': 'sensor.outlet_energy_use_yearly', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -773,10 +773,10 @@ }), 'original_device_class': , 'original_icon': None, - 'original_name': 'Outlet energy use yearly', + 'original_name': 'Energy use yearly', 'platform': 'vesync', 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'energy_year', 'unique_id': 'outlet-energy-yearly', 'unit_of_measurement': , }), @@ -794,7 +794,7 @@ 'domain': 'sensor', 'entity_category': None, 'entity_id': 'sensor.outlet_current_voltage', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -803,10 +803,10 @@ }), 'original_device_class': , 'original_icon': None, - 'original_name': 'Outlet current voltage', + 'original_name': 'Current voltage', 'platform': 'vesync', 'supported_features': 0, - 'translation_key': None, + 'translation_key': 'current_voltage', 'unique_id': 'outlet-voltage', 'unit_of_measurement': , }), @@ -816,7 +816,7 @@ StateSnapshot({ 'attributes': ReadOnlyDict({ 'device_class': 'power', - 'friendly_name': 'Outlet current power', + 'friendly_name': 'Outlet Current power', 'state_class': , 'unit_of_measurement': , }), @@ -831,7 +831,7 @@ StateSnapshot({ 'attributes': ReadOnlyDict({ 'device_class': 'voltage', - 'friendly_name': 'Outlet current voltage', + 'friendly_name': 'Outlet Current voltage', 'state_class': , 'unit_of_measurement': , }), @@ -846,7 +846,7 @@ StateSnapshot({ 'attributes': ReadOnlyDict({ 'device_class': 'energy', - 'friendly_name': 'Outlet energy use monthly', + 'friendly_name': 'Outlet Energy use monthly', 'state_class': , 'unit_of_measurement': , }), @@ -861,7 +861,7 @@ StateSnapshot({ 'attributes': ReadOnlyDict({ 'device_class': 'energy', - 'friendly_name': 'Outlet energy use today', + 'friendly_name': 'Outlet Energy use today', 'state_class': , 'unit_of_measurement': , }), @@ -876,7 +876,7 @@ StateSnapshot({ 'attributes': ReadOnlyDict({ 'device_class': 'energy', - 'friendly_name': 'Outlet energy use weekly', + 'friendly_name': 'Outlet Energy use weekly', 'state_class': , 'unit_of_measurement': , }), @@ -891,7 +891,7 @@ StateSnapshot({ 'attributes': ReadOnlyDict({ 'device_class': 'energy', - 'friendly_name': 'Outlet energy use yearly', + 'friendly_name': 'Outlet Energy use yearly', 'state_class': , 'unit_of_measurement': , }), diff --git a/tests/components/vesync/snapshots/test_switch.ambr b/tests/components/vesync/snapshots/test_switch.ambr index 77f4011a532..cfe9d66a2ed 100644 --- a/tests/components/vesync/snapshots/test_switch.ambr +++ b/tests/components/vesync/snapshots/test_switch.ambr @@ -256,7 +256,7 @@ 'domain': 'switch', 'entity_category': None, 'entity_id': 'switch.outlet', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -265,7 +265,7 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Outlet', + 'original_name': None, 'platform': 'vesync', 'supported_features': 0, 'translation_key': None, @@ -362,7 +362,7 @@ 'domain': 'switch', 'entity_category': None, 'entity_id': 'switch.wall_switch', - 'has_entity_name': False, + 'has_entity_name': True, 'hidden_by': None, 'icon': None, 'id': , @@ -371,7 +371,7 @@ }), 'original_device_class': None, 'original_icon': None, - 'original_name': 'Wall Switch', + 'original_name': None, 'platform': 'vesync', 'supported_features': 0, 'translation_key': None,