mirror of
https://github.com/home-assistant/core.git
synced 2025-07-18 02:37:08 +00:00
Migrate PVOutput to new entity naming style (#75016)
This commit is contained in:
parent
27e3ff9c69
commit
98dae902a1
@ -47,7 +47,7 @@ class PVOutputSensorEntityDescription(
|
|||||||
SENSORS: tuple[PVOutputSensorEntityDescription, ...] = (
|
SENSORS: tuple[PVOutputSensorEntityDescription, ...] = (
|
||||||
PVOutputSensorEntityDescription(
|
PVOutputSensorEntityDescription(
|
||||||
key="energy_consumption",
|
key="energy_consumption",
|
||||||
name="Energy Consumed",
|
name="Energy consumed",
|
||||||
native_unit_of_measurement=ENERGY_WATT_HOUR,
|
native_unit_of_measurement=ENERGY_WATT_HOUR,
|
||||||
device_class=SensorDeviceClass.ENERGY,
|
device_class=SensorDeviceClass.ENERGY,
|
||||||
state_class=SensorStateClass.TOTAL_INCREASING,
|
state_class=SensorStateClass.TOTAL_INCREASING,
|
||||||
@ -55,7 +55,7 @@ SENSORS: tuple[PVOutputSensorEntityDescription, ...] = (
|
|||||||
),
|
),
|
||||||
PVOutputSensorEntityDescription(
|
PVOutputSensorEntityDescription(
|
||||||
key="energy_generation",
|
key="energy_generation",
|
||||||
name="Energy Generated",
|
name="Energy generated",
|
||||||
native_unit_of_measurement=ENERGY_WATT_HOUR,
|
native_unit_of_measurement=ENERGY_WATT_HOUR,
|
||||||
device_class=SensorDeviceClass.ENERGY,
|
device_class=SensorDeviceClass.ENERGY,
|
||||||
state_class=SensorStateClass.TOTAL_INCREASING,
|
state_class=SensorStateClass.TOTAL_INCREASING,
|
||||||
@ -70,7 +70,7 @@ SENSORS: tuple[PVOutputSensorEntityDescription, ...] = (
|
|||||||
),
|
),
|
||||||
PVOutputSensorEntityDescription(
|
PVOutputSensorEntityDescription(
|
||||||
key="power_consumption",
|
key="power_consumption",
|
||||||
name="Power Consumed",
|
name="Power consumed",
|
||||||
native_unit_of_measurement=POWER_WATT,
|
native_unit_of_measurement=POWER_WATT,
|
||||||
device_class=SensorDeviceClass.POWER,
|
device_class=SensorDeviceClass.POWER,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
@ -78,7 +78,7 @@ SENSORS: tuple[PVOutputSensorEntityDescription, ...] = (
|
|||||||
),
|
),
|
||||||
PVOutputSensorEntityDescription(
|
PVOutputSensorEntityDescription(
|
||||||
key="power_generation",
|
key="power_generation",
|
||||||
name="Power Generated",
|
name="Power generated",
|
||||||
native_unit_of_measurement=POWER_WATT,
|
native_unit_of_measurement=POWER_WATT,
|
||||||
device_class=SensorDeviceClass.POWER,
|
device_class=SensorDeviceClass.POWER,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
@ -129,6 +129,7 @@ class PVOutputSensorEntity(
|
|||||||
"""Representation of a PVOutput sensor."""
|
"""Representation of a PVOutput sensor."""
|
||||||
|
|
||||||
entity_description: PVOutputSensorEntityDescription
|
entity_description: PVOutputSensorEntityDescription
|
||||||
|
_attr_has_entity_name = True
|
||||||
|
|
||||||
def __init__(
|
def __init__(
|
||||||
self,
|
self,
|
||||||
|
@ -31,40 +31,46 @@ async def test_sensors(
|
|||||||
entity_registry = er.async_get(hass)
|
entity_registry = er.async_get(hass)
|
||||||
device_registry = dr.async_get(hass)
|
device_registry = dr.async_get(hass)
|
||||||
|
|
||||||
state = hass.states.get("sensor.energy_consumed")
|
state = hass.states.get("sensor.frenck_s_solar_farm_energy_consumed")
|
||||||
entry = entity_registry.async_get("sensor.energy_consumed")
|
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_energy_consumed")
|
||||||
assert entry
|
assert entry
|
||||||
assert state
|
assert state
|
||||||
assert entry.unique_id == "12345_energy_consumption"
|
assert entry.unique_id == "12345_energy_consumption"
|
||||||
assert entry.entity_category is None
|
assert entry.entity_category is None
|
||||||
assert state.state == "1000"
|
assert state.state == "1000"
|
||||||
assert state.attributes.get(ATTR_DEVICE_CLASS) == SensorDeviceClass.ENERGY
|
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_STATE_CLASS) is SensorStateClass.TOTAL_INCREASING
|
||||||
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == ENERGY_WATT_HOUR
|
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == ENERGY_WATT_HOUR
|
||||||
assert ATTR_ICON not in state.attributes
|
assert ATTR_ICON not in state.attributes
|
||||||
|
|
||||||
state = hass.states.get("sensor.energy_generated")
|
state = hass.states.get("sensor.frenck_s_solar_farm_energy_generated")
|
||||||
entry = entity_registry.async_get("sensor.energy_generated")
|
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_energy_generated")
|
||||||
assert entry
|
assert entry
|
||||||
assert state
|
assert state
|
||||||
assert entry.unique_id == "12345_energy_generation"
|
assert entry.unique_id == "12345_energy_generation"
|
||||||
assert entry.entity_category is None
|
assert entry.entity_category is None
|
||||||
assert state.state == "500"
|
assert state.state == "500"
|
||||||
assert state.attributes.get(ATTR_DEVICE_CLASS) == SensorDeviceClass.ENERGY
|
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_STATE_CLASS) is SensorStateClass.TOTAL_INCREASING
|
||||||
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == ENERGY_WATT_HOUR
|
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == ENERGY_WATT_HOUR
|
||||||
assert ATTR_ICON not in state.attributes
|
assert ATTR_ICON not in state.attributes
|
||||||
|
|
||||||
state = hass.states.get("sensor.efficiency")
|
state = hass.states.get("sensor.frenck_s_solar_farm_efficiency")
|
||||||
entry = entity_registry.async_get("sensor.efficiency")
|
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_efficiency")
|
||||||
assert entry
|
assert entry
|
||||||
assert state
|
assert state
|
||||||
assert entry.unique_id == "12345_normalized_output"
|
assert entry.unique_id == "12345_normalized_output"
|
||||||
assert entry.entity_category is None
|
assert entry.entity_category is None
|
||||||
assert state.state == "0.5"
|
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_STATE_CLASS) is SensorStateClass.MEASUREMENT
|
||||||
assert (
|
assert (
|
||||||
state.attributes.get(ATTR_UNIT_OF_MEASUREMENT)
|
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_DEVICE_CLASS not in state.attributes
|
||||||
assert ATTR_ICON not in state.attributes
|
assert ATTR_ICON not in state.attributes
|
||||||
|
|
||||||
state = hass.states.get("sensor.power_consumed")
|
state = hass.states.get("sensor.frenck_s_solar_farm_power_consumed")
|
||||||
entry = entity_registry.async_get("sensor.power_consumed")
|
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_power_consumed")
|
||||||
assert entry
|
assert entry
|
||||||
assert state
|
assert state
|
||||||
assert entry.unique_id == "12345_power_consumption"
|
assert entry.unique_id == "12345_power_consumption"
|
||||||
assert entry.entity_category is None
|
assert entry.entity_category is None
|
||||||
assert state.state == "2500"
|
assert state.state == "2500"
|
||||||
assert state.attributes.get(ATTR_DEVICE_CLASS) == SensorDeviceClass.POWER
|
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_STATE_CLASS) is SensorStateClass.MEASUREMENT
|
||||||
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == POWER_WATT
|
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == POWER_WATT
|
||||||
assert ATTR_ICON not in state.attributes
|
assert ATTR_ICON not in state.attributes
|
||||||
|
|
||||||
state = hass.states.get("sensor.power_generated")
|
state = hass.states.get("sensor.frenck_s_solar_farm_power_generated")
|
||||||
entry = entity_registry.async_get("sensor.power_generated")
|
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_power_generated")
|
||||||
assert entry
|
assert entry
|
||||||
assert state
|
assert state
|
||||||
assert entry.unique_id == "12345_power_generation"
|
assert entry.unique_id == "12345_power_generation"
|
||||||
assert entry.entity_category is None
|
assert entry.entity_category is None
|
||||||
assert state.state == "1500"
|
assert state.state == "1500"
|
||||||
assert state.attributes.get(ATTR_DEVICE_CLASS) == SensorDeviceClass.POWER
|
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_STATE_CLASS) is SensorStateClass.MEASUREMENT
|
||||||
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == POWER_WATT
|
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == POWER_WATT
|
||||||
assert ATTR_ICON not in state.attributes
|
assert ATTR_ICON not in state.attributes
|
||||||
|
|
||||||
state = hass.states.get("sensor.temperature")
|
state = hass.states.get("sensor.frenck_s_solar_farm_temperature")
|
||||||
entry = entity_registry.async_get("sensor.temperature")
|
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_temperature")
|
||||||
assert entry
|
assert entry
|
||||||
assert state
|
assert state
|
||||||
assert entry.unique_id == "12345_temperature"
|
assert entry.unique_id == "12345_temperature"
|
||||||
assert entry.entity_category is None
|
assert entry.entity_category is None
|
||||||
assert state.state == "20.2"
|
assert state.state == "20.2"
|
||||||
assert state.attributes.get(ATTR_DEVICE_CLASS) == SensorDeviceClass.TEMPERATURE
|
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_STATE_CLASS) is SensorStateClass.MEASUREMENT
|
||||||
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == TEMP_CELSIUS
|
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == TEMP_CELSIUS
|
||||||
assert ATTR_ICON not in state.attributes
|
assert ATTR_ICON not in state.attributes
|
||||||
|
|
||||||
state = hass.states.get("sensor.voltage")
|
state = hass.states.get("sensor.frenck_s_solar_farm_voltage")
|
||||||
entry = entity_registry.async_get("sensor.voltage")
|
entry = entity_registry.async_get("sensor.frenck_s_solar_farm_voltage")
|
||||||
assert entry
|
assert entry
|
||||||
assert state
|
assert state
|
||||||
assert entry.unique_id == "12345_voltage"
|
assert entry.unique_id == "12345_voltage"
|
||||||
assert entry.entity_category is None
|
assert entry.entity_category is None
|
||||||
assert state.state == "220.5"
|
assert state.state == "220.5"
|
||||||
assert state.attributes.get(ATTR_DEVICE_CLASS) == SensorDeviceClass.VOLTAGE
|
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_STATE_CLASS) is SensorStateClass.MEASUREMENT
|
||||||
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == ELECTRIC_POTENTIAL_VOLT
|
assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == ELECTRIC_POTENTIAL_VOLT
|
||||||
assert ATTR_ICON not in state.attributes
|
assert ATTR_ICON not in state.attributes
|
||||||
|
Loading…
x
Reference in New Issue
Block a user