From c303487c1bf234bad2901882476dceefec2243a9 Mon Sep 17 00:00:00 2001 From: epenet <6771947+epenet@users.noreply.github.com> Date: Fri, 28 Apr 2023 21:16:08 +0200 Subject: [PATCH] Fix lingering timer in feedreader (#92180) --- homeassistant/components/feedreader/__init__.py | 7 ++++++- tests/components/feedreader/test_init.py | 8 ++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/homeassistant/components/feedreader/__init__.py b/homeassistant/components/feedreader/__init__.py index 50404bb96dc..6be0e3c219f 100644 --- a/homeassistant/components/feedreader/__init__.py +++ b/homeassistant/components/feedreader/__init__.py @@ -93,7 +93,12 @@ class FeedManager: def _init_regular_updates(self, hass: HomeAssistant) -> None: """Schedule regular updates at the top of the clock.""" - track_time_interval(hass, lambda now: self._update(), self._scan_interval) + track_time_interval( + hass, + lambda now: self._update(), + self._scan_interval, + cancel_on_shutdown=True, + ) @property def last_update_successful(self) -> bool: diff --git a/tests/components/feedreader/test_init.py b/tests/components/feedreader/test_init.py index 495a9f83641..61851559969 100644 --- a/tests/components/feedreader/test_init.py +++ b/tests/components/feedreader/test_init.py @@ -85,7 +85,9 @@ async def test_setup_one_feed(hass: HomeAssistant) -> None: assert await async_setup_component(hass, feedreader.DOMAIN, VALID_CONFIG_1) await hass.async_block_till_done() - track_method.assert_called_once_with(hass, mock.ANY, DEFAULT_SCAN_INTERVAL) + track_method.assert_called_once_with( + hass, mock.ANY, DEFAULT_SCAN_INTERVAL, cancel_on_shutdown=True + ) async def test_setup_scan_interval(hass: HomeAssistant) -> None: @@ -96,7 +98,9 @@ async def test_setup_scan_interval(hass: HomeAssistant) -> None: assert await async_setup_component(hass, feedreader.DOMAIN, VALID_CONFIG_2) await hass.async_block_till_done() - track_method.assert_called_once_with(hass, mock.ANY, timedelta(seconds=60)) + track_method.assert_called_once_with( + hass, mock.ANY, timedelta(seconds=60), cancel_on_shutdown=True + ) async def test_setup_max_entries(hass: HomeAssistant) -> None: