From 96151e7faa2a9cf12ec82c68b110bd167b7a7ad8 Mon Sep 17 00:00:00 2001 From: Jan-Philipp Benecke Date: Wed, 27 Sep 2023 13:32:30 +0200 Subject: [PATCH] Use local time instead of UTC time as default backup filenames (#100959) Use local time instead of UTC for the backup name --- homeassistant/components/hassio/__init__.py | 4 ++-- tests/components/hassio/test_init.py | 20 +++++++++++++++++++- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/homeassistant/components/hassio/__init__.py b/homeassistant/components/hassio/__init__.py index 270309149ef..3303059d824 100644 --- a/homeassistant/components/hassio/__init__.py +++ b/homeassistant/components/hassio/__init__.py @@ -49,7 +49,7 @@ from homeassistant.helpers.storage import Store from homeassistant.helpers.typing import ConfigType from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed from homeassistant.loader import bind_hass -from homeassistant.util.dt import utcnow +from homeassistant.util.dt import now from .addon_manager import AddonError, AddonInfo, AddonManager, AddonState # noqa: F401 from .addon_panel import async_setup_addon_panel @@ -177,7 +177,7 @@ SCHEMA_ADDON_STDIN = SCHEMA_ADDON.extend( SCHEMA_BACKUP_FULL = vol.Schema( { vol.Optional( - ATTR_NAME, default=lambda: utcnow().strftime("%Y-%m-%d %H:%M:%S") + ATTR_NAME, default=lambda: now().strftime("%Y-%m-%d %H:%M:%S") ): cv.string, vol.Optional(ATTR_PASSWORD): cv.string, vol.Optional(ATTR_COMPRESSED): cv.boolean, diff --git a/tests/components/hassio/test_init.py b/tests/components/hassio/test_init.py index 48f52ee7c24..adb462b02e3 100644 --- a/tests/components/hassio/test_init.py +++ b/tests/components/hassio/test_init.py @@ -548,7 +548,7 @@ async def test_service_calls( assert aioclient_mock.call_count == 30 assert aioclient_mock.mock_calls[-1][2] == { - "name": "2021-11-13 11:48:00", + "name": "2021-11-13 03:48:00", "homeassistant": True, "addons": ["test"], "folders": ["ssl"], @@ -605,6 +605,24 @@ async def test_service_calls( await hass.async_block_till_done() assert aioclient_mock.call_count == 34 + assert aioclient_mock.mock_calls[-1][2] == { + "name": "2021-11-13 03:48:00", + "location": None, + } + + # check backup with different timezone + await hass.config.async_update(time_zone="Europe/London") + + await hass.services.async_call( + "hassio", + "backup_full", + { + "location": "/backup", + }, + ) + await hass.async_block_till_done() + + assert aioclient_mock.call_count == 36 assert aioclient_mock.mock_calls[-1][2] == { "name": "2021-11-13 11:48:00", "location": None,