core/tests/components/synology_dsm/conftest.py

42 lines
1.3 KiB
Python

"""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