mirror of
https://github.com/home-assistant/core.git
synced 2025-12-24 21:06:19 +00:00
Support restoring NumberEntity native_value (#73475)
This commit is contained in:
@@ -3,7 +3,7 @@ Provide a mock number platform.
|
||||
|
||||
Call init before using it in your tests to ensure clean test data.
|
||||
"""
|
||||
from homeassistant.components.number import NumberEntity
|
||||
from homeassistant.components.number import NumberEntity, RestoreNumber
|
||||
|
||||
from tests.common import MockEntity
|
||||
|
||||
@@ -37,7 +37,7 @@ class MockNumberEntity(MockEntity, NumberEntity):
|
||||
|
||||
@property
|
||||
def native_value(self):
|
||||
"""Return the native value of this sensor."""
|
||||
"""Return the native value of this number."""
|
||||
return self._handle("native_value")
|
||||
|
||||
def set_native_value(self, value: float) -> None:
|
||||
@@ -45,6 +45,23 @@ class MockNumberEntity(MockEntity, NumberEntity):
|
||||
self._values["native_value"] = value
|
||||
|
||||
|
||||
class MockRestoreNumber(MockNumberEntity, RestoreNumber):
|
||||
"""Mock RestoreNumber class."""
|
||||
|
||||
async def async_added_to_hass(self) -> None:
|
||||
"""Restore native_*."""
|
||||
await super().async_added_to_hass()
|
||||
if (last_number_data := await self.async_get_last_number_data()) is None:
|
||||
return
|
||||
self._values["native_max_value"] = last_number_data.native_max_value
|
||||
self._values["native_min_value"] = last_number_data.native_min_value
|
||||
self._values["native_step"] = last_number_data.native_step
|
||||
self._values[
|
||||
"native_unit_of_measurement"
|
||||
] = last_number_data.native_unit_of_measurement
|
||||
self._values["native_value"] = last_number_data.native_value
|
||||
|
||||
|
||||
class LegacyMockNumberEntity(MockEntity, NumberEntity):
|
||||
"""Mock Number class using deprecated features."""
|
||||
|
||||
|
||||
Reference in New Issue
Block a user