Remove context_recent_time property from entity base class (#105652)

This commit is contained in:
Erik Montnemery 2023-12-14 08:33:31 +01:00 committed by GitHub
parent aafdca88c9
commit 9020dbb093
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 6 additions and 16 deletions

View File

@ -139,7 +139,6 @@ CONF_JSON_ATTRS_TEMPLATE = "json_attributes_template"
MQTT_ATTRIBUTES_BLOCKED = {
"assumed_state",
"available",
"context_recent_time",
"device_class",
"device_info",
"entity_category",

View File

@ -79,6 +79,8 @@ FLOAT_PRECISION = abs(int(math.floor(math.log10(abs(sys.float_info.epsilon)))))
# How many times per hour we allow capabilities to be updated before logging a warning
CAPABILITIES_UPDATE_LIMIT = 100
CONTEXT_RECENT_TIME = timedelta(seconds=5) # Time that a context is considered recent
@callback
def async_setup(hass: HomeAssistant) -> None:
@ -340,7 +342,6 @@ class Entity(ABC):
_attr_attribution: str | None = None
_attr_available: bool = True
_attr_capability_attributes: Mapping[str, Any] | None = None
_attr_context_recent_time: timedelta = timedelta(seconds=5)
_attr_device_class: str | None
_attr_device_info: DeviceInfo | None = None
_attr_entity_category: EntityCategory | None
@ -627,11 +628,6 @@ class Entity(ABC):
"""Flag supported features."""
return self._attr_supported_features
@property
def context_recent_time(self) -> timedelta:
"""Time that a context is considered recent."""
return self._attr_context_recent_time
@property
def entity_registry_enabled_default(self) -> bool:
"""Return if the entity should be enabled when first added.
@ -942,7 +938,7 @@ class Entity(ABC):
if (
self._context_set is not None
and hass.loop.time() - self._context_set
> self.context_recent_time.total_seconds()
> CONTEXT_RECENT_TIME.total_seconds()
):
self._context = None
self._context_set = None

View File

@ -631,10 +631,6 @@ _ENTITY_MATCH: list[TypeHintMatch] = [
function_name="supported_features",
return_type=["int", None],
),
TypeHintMatch(
function_name="context_recent_time",
return_type="timedelta",
),
TypeHintMatch(
function_name="entity_registry_enabled_default",
return_type="bool",

View File

@ -664,10 +664,9 @@ async def test_set_context_expired(hass: HomeAssistant) -> None:
"""Test setting context."""
context = Context()
with patch.object(
entity.Entity, "context_recent_time", new_callable=PropertyMock
) as recent:
recent.return_value = timedelta(seconds=-5)
with patch(
"homeassistant.helpers.entity.CONTEXT_RECENT_TIME", timedelta(seconds=-5)
):
ent = entity.Entity()
ent.hass = hass
ent.entity_id = "hello.world"