Improve warnings for datetime and date sensors with invalid states (#73598)

This commit is contained in:
Erik Montnemery 2022-06-17 12:17:13 +02:00 committed by GitHub
parent 66feac2257
commit baa810aabb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 7 deletions

View File

@ -404,10 +404,10 @@ class SensorEntity(Entity):
value = value.astimezone(timezone.utc)
return value.isoformat(timespec="seconds")
except (AttributeError, TypeError) as err:
except (AttributeError, OverflowError, TypeError) as err:
raise ValueError(
f"Invalid datetime: {self.entity_id} has a timestamp device class "
f"but does not provide a datetime state but {type(value)}"
f"Invalid datetime: {self.entity_id} has timestamp device class "
f"but provides state {value}:{type(value)} resulting in '{err}'"
) from err
# Received a date value
@ -419,8 +419,8 @@ class SensorEntity(Entity):
return value.isoformat()
except (AttributeError, TypeError) as err:
raise ValueError(
f"Invalid date: {self.entity_id} has a date device class "
f"but does not provide a date state but {type(value)}"
f"Invalid date: {self.entity_id} has date device class "
f"but provides state {value}:{type(value)} resulting in '{err}'"
) from err
if (

View File

@ -183,8 +183,8 @@ async def test_deprecated_datetime_str(
await hass.async_block_till_done()
assert (
f"Invalid {provides}: sensor.test has a {device_class} device class "
f"but does not provide a {provides} state but {type(state_value)}"
f"Invalid {provides}: sensor.test has {device_class} device class "
f"but provides state {state_value}:{type(state_value)}"
) in caplog.text