Migrate PVOutput to new entity naming style (#75016)
This commit is contained in:
parent
27e3ff9c69
commit
98dae902a1
2 changed files with 37 additions and 25 deletions
|
@ -47,7 +47,7 @@ class PVOutputSensorEntityDescription(
|
|||
SENSORS: tuple[PVOutputSensorEntityDescription, ...] = (
|
||||
PVOutputSensorEntityDescription(
|
||||
key="energy_consumption",
|
||||
name="Energy Consumed",
|
||||
name="Energy consumed",
|
||||
native_unit_of_measurement=ENERGY_WATT_HOUR,
|
||||
device_class=SensorDeviceClass.ENERGY,
|
||||
state_class=SensorStateClass.TOTAL_INCREASING,
|
||||
|
@ -55,7 +55,7 @@ SENSORS: tuple[PVOutputSensorEntityDescription, ...] = (
|
|||
),
|
||||
PVOutputSensorEntityDescription(
|
||||
key="energy_generation",
|
||||
name="Energy Generated",
|
||||
name="Energy generated",
|
||||
native_unit_of_measurement=ENERGY_WATT_HOUR,
|
||||
device_class=SensorDeviceClass.ENERGY,
|
||||
state_class=SensorStateClass.TOTAL_INCREASING,
|
||||
|
@ -70,7 +70,7 @@ SENSORS: tuple[PVOutputSensorEntityDescription, ...] = (
|
|||
),
|
||||
PVOutputSensorEntityDescription(
|
||||
key="power_consumption",
|
||||
name="Power Consumed",
|
||||
name="Power consumed",
|
||||
native_unit_of_measurement=POWER_WATT,
|
||||
device_class=SensorDeviceClass.POWER,
|
||||
state_class=SensorStateClass.MEASUREMENT,
|
||||
|
@ -78,7 +78,7 @@ SENSORS: tuple[PVOutputSensorEntityDescription, ...] = (
|
|||
),
|
||||
PVOutputSensorEntityDescription(
|
||||
key="power_generation",
|
||||
name="Power Generated",
|
||||
name="Power generated",
|
||||
native_unit_of_measurement=POWER_WATT,
|
||||
device_class=SensorDeviceClass.POWER,
|
||||
state_class=SensorStateClass.MEASUREMENT,
|
||||
|
@ -129,6 +129,7 @@ class PVOutputSensorEntity(
|
|||
"""Representation of a PVOutput sensor."""
|
||||
|
||||
entity_description: PVOutputSensorEntityDescription
|
||||
_attr_has_entity_name = True
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
|
|
|
@ -31,40 +31,46 @@ async def test_sensors(
|
|||
entity_registry = er.async_get(hass)
|
||||
device_registry = dr.async_get(hass)
|
||||
|
||||
state = hass.states.get("sensor.energy_consumed")
|
||||
entry = entity_registry.async_get("sensor.energy_consumed")
|
||||
state = hass.states.get("sensor.frenck_s_solar_farm_energy_consumed")
|
||||
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_energy_consumed")
|
||||
assert entry
|
||||
assert state
|
||||
assert entry.unique_id == "12345_energy_consumption"
|
||||
assert entry.entity_category is None
|
||||
assert state.state == "1000"
|
||||
assert state.attributes.get(ATTR_DEVICE_CLASS) == SensorDeviceClass.ENERGY
|
||||
assert state.attributes.get(ATTR_FRIENDLY_NAME) == "Energy Consumed"
|
||||
assert (
|
||||
state.attributes.get(ATTR_FRIENDLY_NAME)
|
||||
== "Frenck's Solar Farm Energy consumed"
|
||||
)
|
||||
assert state.attributes.get(ATTR_STATE_CLASS) is SensorStateClass.TOTAL_INCREASING
|
||||
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == ENERGY_WATT_HOUR
|
||||
assert ATTR_ICON not in state.attributes
|
||||
|
||||
state = hass.states.get("sensor.energy_generated")
|
||||
entry = entity_registry.async_get("sensor.energy_generated")
|
||||
state = hass.states.get("sensor.frenck_s_solar_farm_energy_generated")
|
||||
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_energy_generated")
|
||||
assert entry
|
||||
assert state
|
||||
assert entry.unique_id == "12345_energy_generation"
|
||||
assert entry.entity_category is None
|
||||
assert state.state == "500"
|
||||
assert state.attributes.get(ATTR_DEVICE_CLASS) == SensorDeviceClass.ENERGY
|
||||
assert state.attributes.get(ATTR_FRIENDLY_NAME) == "Energy Generated"
|
||||
assert (
|
||||
state.attributes.get(ATTR_FRIENDLY_NAME)
|
||||
== "Frenck's Solar Farm Energy generated"
|
||||
)
|
||||
assert state.attributes.get(ATTR_STATE_CLASS) is SensorStateClass.TOTAL_INCREASING
|
||||
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == ENERGY_WATT_HOUR
|
||||
assert ATTR_ICON not in state.attributes
|
||||
|
||||
state = hass.states.get("sensor.efficiency")
|
||||
entry = entity_registry.async_get("sensor.efficiency")
|
||||
state = hass.states.get("sensor.frenck_s_solar_farm_efficiency")
|
||||
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_efficiency")
|
||||
assert entry
|
||||
assert state
|
||||
assert entry.unique_id == "12345_normalized_output"
|
||||
assert entry.entity_category is None
|
||||
assert state.state == "0.5"
|
||||
assert state.attributes.get(ATTR_FRIENDLY_NAME) == "Efficiency"
|
||||
assert state.attributes.get(ATTR_FRIENDLY_NAME) == "Frenck's Solar Farm Efficiency"
|
||||
assert state.attributes.get(ATTR_STATE_CLASS) is SensorStateClass.MEASUREMENT
|
||||
assert (
|
||||
state.attributes.get(ATTR_UNIT_OF_MEASUREMENT)
|
||||
|
@ -73,54 +79,59 @@ async def test_sensors(
|
|||
assert ATTR_DEVICE_CLASS not in state.attributes
|
||||
assert ATTR_ICON not in state.attributes
|
||||
|
||||
state = hass.states.get("sensor.power_consumed")
|
||||
entry = entity_registry.async_get("sensor.power_consumed")
|
||||
state = hass.states.get("sensor.frenck_s_solar_farm_power_consumed")
|
||||
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_power_consumed")
|
||||
assert entry
|
||||
assert state
|
||||
assert entry.unique_id == "12345_power_consumption"
|
||||
assert entry.entity_category is None
|
||||
assert state.state == "2500"
|
||||
assert state.attributes.get(ATTR_DEVICE_CLASS) == SensorDeviceClass.POWER
|
||||
assert state.attributes.get(ATTR_FRIENDLY_NAME) == "Power Consumed"
|
||||
assert (
|
||||
state.attributes.get(ATTR_FRIENDLY_NAME) == "Frenck's Solar Farm Power consumed"
|
||||
)
|
||||
assert state.attributes.get(ATTR_STATE_CLASS) is SensorStateClass.MEASUREMENT
|
||||
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == POWER_WATT
|
||||
assert ATTR_ICON not in state.attributes
|
||||
|
||||
state = hass.states.get("sensor.power_generated")
|
||||
entry = entity_registry.async_get("sensor.power_generated")
|
||||
state = hass.states.get("sensor.frenck_s_solar_farm_power_generated")
|
||||
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_power_generated")
|
||||
assert entry
|
||||
assert state
|
||||
assert entry.unique_id == "12345_power_generation"
|
||||
assert entry.entity_category is None
|
||||
assert state.state == "1500"
|
||||
assert state.attributes.get(ATTR_DEVICE_CLASS) == SensorDeviceClass.POWER
|
||||
assert state.attributes.get(ATTR_FRIENDLY_NAME) == "Power Generated"
|
||||
assert (
|
||||
state.attributes.get(ATTR_FRIENDLY_NAME)
|
||||
== "Frenck's Solar Farm Power generated"
|
||||
)
|
||||
assert state.attributes.get(ATTR_STATE_CLASS) is SensorStateClass.MEASUREMENT
|
||||
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == POWER_WATT
|
||||
assert ATTR_ICON not in state.attributes
|
||||
|
||||
state = hass.states.get("sensor.temperature")
|
||||
entry = entity_registry.async_get("sensor.temperature")
|
||||
state = hass.states.get("sensor.frenck_s_solar_farm_temperature")
|
||||
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_temperature")
|
||||
assert entry
|
||||
assert state
|
||||
assert entry.unique_id == "12345_temperature"
|
||||
assert entry.entity_category is None
|
||||
assert state.state == "20.2"
|
||||
assert state.attributes.get(ATTR_DEVICE_CLASS) == SensorDeviceClass.TEMPERATURE
|
||||
assert state.attributes.get(ATTR_FRIENDLY_NAME) == "Temperature"
|
||||
assert state.attributes.get(ATTR_FRIENDLY_NAME) == "Frenck's Solar Farm Temperature"
|
||||
assert state.attributes.get(ATTR_STATE_CLASS) is SensorStateClass.MEASUREMENT
|
||||
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == TEMP_CELSIUS
|
||||
assert ATTR_ICON not in state.attributes
|
||||
|
||||
state = hass.states.get("sensor.voltage")
|
||||
entry = entity_registry.async_get("sensor.voltage")
|
||||
state = hass.states.get("sensor.frenck_s_solar_farm_voltage")
|
||||
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_voltage")
|
||||
assert entry
|
||||
assert state
|
||||
assert entry.unique_id == "12345_voltage"
|
||||
assert entry.entity_category is None
|
||||
assert state.state == "220.5"
|
||||
assert state.attributes.get(ATTR_DEVICE_CLASS) == SensorDeviceClass.VOLTAGE
|
||||
assert state.attributes.get(ATTR_FRIENDLY_NAME) == "Voltage"
|
||||
assert state.attributes.get(ATTR_FRIENDLY_NAME) == "Frenck's Solar Farm Voltage"
|
||||
assert state.attributes.get(ATTR_STATE_CLASS) is SensorStateClass.MEASUREMENT
|
||||
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == ELECTRIC_POTENTIAL_VOLT
|
||||
assert ATTR_ICON not in state.attributes
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue