From d3bd2378ba07c5df89052d5e7307fb775e63edcb Mon Sep 17 00:00:00 2001 From: Diogo Gomes Date: Sun, 7 Mar 2021 15:07:02 +0000 Subject: [PATCH] Correct weather entities forecast time (#47565) --- homeassistant/components/aemet/weather_update_coordinator.py | 4 ++-- .../components/openweathermap/weather_update_coordinator.py | 4 +++- tests/components/aemet/test_sensor.py | 4 +++- tests/components/aemet/test_weather.py | 5 +++-- 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/homeassistant/components/aemet/weather_update_coordinator.py b/homeassistant/components/aemet/weather_update_coordinator.py index 6a06b1dd391..619429c9a5b 100644 --- a/homeassistant/components/aemet/weather_update_coordinator.py +++ b/homeassistant/components/aemet/weather_update_coordinator.py @@ -393,7 +393,7 @@ class WeatherUpdateCoordinator(DataUpdateCoordinator): ), ATTR_FORECAST_TEMP: self._get_temperature_day(day), ATTR_FORECAST_TEMP_LOW: self._get_temperature_low_day(day), - ATTR_FORECAST_TIME: dt_util.as_utc(date), + ATTR_FORECAST_TIME: dt_util.as_utc(date).isoformat(), ATTR_FORECAST_WIND_SPEED: self._get_wind_speed_day(day), ATTR_FORECAST_WIND_BEARING: self._get_wind_bearing_day(day), } @@ -412,7 +412,7 @@ class WeatherUpdateCoordinator(DataUpdateCoordinator): day, hour ), ATTR_FORECAST_TEMP: self._get_temperature(day, hour), - ATTR_FORECAST_TIME: dt_util.as_utc(forecast_dt), + ATTR_FORECAST_TIME: dt_util.as_utc(forecast_dt).isoformat(), ATTR_FORECAST_WIND_SPEED: self._get_wind_speed(day, hour), ATTR_FORECAST_WIND_BEARING: self._get_wind_bearing(day, hour), } diff --git a/homeassistant/components/openweathermap/weather_update_coordinator.py b/homeassistant/components/openweathermap/weather_update_coordinator.py index 201029c3979..b4d9b7a9c80 100644 --- a/homeassistant/components/openweathermap/weather_update_coordinator.py +++ b/homeassistant/components/openweathermap/weather_update_coordinator.py @@ -140,7 +140,9 @@ class WeatherUpdateCoordinator(DataUpdateCoordinator): def _convert_forecast(self, entry): forecast = { - ATTR_FORECAST_TIME: dt.utc_from_timestamp(entry.reference_time("unix")), + ATTR_FORECAST_TIME: dt.utc_from_timestamp( + entry.reference_time("unix") + ).isoformat(), ATTR_FORECAST_PRECIPITATION: self._calc_precipitation( entry.rain, entry.snow ), diff --git a/tests/components/aemet/test_sensor.py b/tests/components/aemet/test_sensor.py index 05f2d8d0b50..b265b996709 100644 --- a/tests/components/aemet/test_sensor.py +++ b/tests/components/aemet/test_sensor.py @@ -37,7 +37,9 @@ async def test_aemet_forecast_create_sensors(hass): assert state.state == "-4" state = hass.states.get("sensor.aemet_daily_forecast_time") - assert state.state == "2021-01-10 00:00:00+00:00" + assert ( + state.state == dt_util.parse_datetime("2021-01-10 00:00:00+00:00").isoformat() + ) state = hass.states.get("sensor.aemet_daily_forecast_wind_bearing") assert state.state == "45.0" diff --git a/tests/components/aemet/test_weather.py b/tests/components/aemet/test_weather.py index eef6107d543..43acf4c1c87 100644 --- a/tests/components/aemet/test_weather.py +++ b/tests/components/aemet/test_weather.py @@ -51,8 +51,9 @@ async def test_aemet_weather(hass): assert forecast.get(ATTR_FORECAST_PRECIPITATION_PROBABILITY) == 30 assert forecast.get(ATTR_FORECAST_TEMP) == 4 assert forecast.get(ATTR_FORECAST_TEMP_LOW) == -4 - assert forecast.get(ATTR_FORECAST_TIME) == dt_util.parse_datetime( - "2021-01-10 00:00:00+00:00" + assert ( + forecast.get(ATTR_FORECAST_TIME) + == dt_util.parse_datetime("2021-01-10 00:00:00+00:00").isoformat() ) assert forecast.get(ATTR_FORECAST_WIND_BEARING) == 45.0 assert forecast.get(ATTR_FORECAST_WIND_SPEED) == 20