"""Configure Synology DSM tests.""" from collections.abc import Generator from unittest.mock import AsyncMock, patch import pytest from homeassistant.core import HomeAssistant from homeassistant.setup import async_setup_component from .common import mock_dsm_information @pytest.fixture def mock_setup_entry() -> Generator[AsyncMock]: """Mock setting up a config entry.""" with patch( "homeassistant.components.synology_dsm.async_setup_entry", return_value=True ) as mock_setup: yield mock_setup @pytest.fixture async def setup_media_source(hass: HomeAssistant) -> None: """Set up media source.""" assert await async_setup_component(hass, "media_source", {}) @pytest.fixture(name="mock_dsm") def fixture_dsm(): """Set up SynologyDSM API fixture.""" with patch("homeassistant.components.synology_dsm.common.SynologyDSM") as dsm: dsm.login = AsyncMock(return_value=True) dsm.update = AsyncMock(return_value=True) dsm.information = mock_dsm_information() dsm.network.update = AsyncMock(return_value=True) dsm.surveillance_station.update = AsyncMock(return_value=True) dsm.upgrade.update = AsyncMock(return_value=True) dsm.file = AsyncMock(get_shared_folders=AsyncMock(return_value=None)) return dsm