"""Test Statistics component setup process.""" from __future__ import annotations from unittest.mock import Mock, patch from homeassistant.components.local_file.const import DOMAIN from homeassistant.config_entries import SOURCE_USER, ConfigEntryState from homeassistant.core import HomeAssistant from tests.common import MockConfigEntry async def test_unload_entry(hass: HomeAssistant, loaded_entry: MockConfigEntry) -> None: """Test unload an entry.""" assert loaded_entry.state is ConfigEntryState.LOADED assert await hass.config_entries.async_unload(loaded_entry.entry_id) await hass.async_block_till_done() assert loaded_entry.state is ConfigEntryState.NOT_LOADED async def test_file_not_readable_during_startup( hass: HomeAssistant, get_config: dict[str, str], ) -> None: """Test a warning is shown setup when file is not readable.""" config_entry = MockConfigEntry( domain=DOMAIN, source=SOURCE_USER, options=get_config, entry_id="1", ) config_entry.add_to_hass(hass) with ( patch("os.path.isfile", Mock(return_value=True)), patch("os.access", Mock(return_value=False)), patch( "homeassistant.components.local_file.camera.mimetypes.guess_type", Mock(return_value=(None, None)), ), ): await hass.config_entries.async_setup(config_entry.entry_id) await hass.async_block_till_done() assert config_entry.state is ConfigEntryState.SETUP_ERROR