Make feedreader recoverable (#134202)

raise ConfigEntryNotReady on connection errors during setup
This commit is contained in:
Michael
2024-12-29 15:08:15 +01:00
committed by GitHub
parent 0db07a033b
commit 7704ef95a4
2 changed files with 24 additions and 1 deletions

View File

@@ -11,6 +11,7 @@ from freezegun.api import FrozenDateTimeFactory
import pytest
from homeassistant.components.feedreader.const import DOMAIN
from homeassistant.config_entries import ConfigEntryState
from homeassistant.core import Event, HomeAssistant
from homeassistant.helpers import device_registry as dr
import homeassistant.util.dt as dt_util
@@ -52,6 +53,23 @@ async def test_setup(
assert not events
async def test_setup_error(
hass: HomeAssistant,
feed_one_event,
) -> None:
"""Test setup error."""
entry = create_mock_entry(VALID_CONFIG_DEFAULT)
entry.add_to_hass(hass)
with patch(
"homeassistant.components.feedreader.coordinator.feedparser.http.get"
) as feedreader:
feedreader.side_effect = urllib.error.URLError("Test")
feedreader.return_value = feed_one_event
await hass.config_entries.async_setup(entry.entry_id)
assert entry.state is ConfigEntryState.SETUP_RETRY
async def test_storage_data_writing(
hass: HomeAssistant,
events: list[Event],