mirror of
https://github.com/home-assistant/supervisor.git
synced 2025-04-22 20:27:16 +00:00
60 lines
1.7 KiB
Python
60 lines
1.7 KiB
Python
"""Common test functions."""
|
|
from unittest.mock import MagicMock, PropertyMock, patch
|
|
|
|
import pytest
|
|
|
|
from supervisor.bootstrap import initialize_coresys
|
|
from supervisor.docker import DockerAPI
|
|
|
|
# pylint: disable=redefined-outer-name, protected-access
|
|
|
|
|
|
@pytest.fixture
|
|
def docker():
|
|
"""Mock DockerAPI."""
|
|
images = [MagicMock(tags=["homeassistant/amd64-hassio-supervisor:latest"])]
|
|
|
|
with patch("docker.DockerClient", return_value=MagicMock()), patch(
|
|
"supervisor.docker.DockerAPI.images", return_value=MagicMock()
|
|
), patch("supervisor.docker.DockerAPI.containers", return_value=MagicMock()), patch(
|
|
"supervisor.docker.DockerAPI.api", return_value=MagicMock()
|
|
), patch(
|
|
"supervisor.docker.DockerAPI.images.list", return_value=images
|
|
):
|
|
docker_obj = DockerAPI()
|
|
|
|
yield docker_obj
|
|
|
|
|
|
@pytest.fixture
|
|
async def coresys(loop, docker):
|
|
"""Create a CoreSys Mock."""
|
|
with patch("supervisor.bootstrap.initialize_system_data"), patch(
|
|
"supervisor.bootstrap.setup_diagnostics"
|
|
), patch(
|
|
"supervisor.bootstrap.fetch_timezone", return_value="Europe/Zurich",
|
|
):
|
|
coresys_obj = await initialize_coresys()
|
|
|
|
coresys_obj.ingress.save_data = MagicMock()
|
|
coresys_obj.arch._default_arch = "amd64"
|
|
|
|
yield coresys_obj
|
|
|
|
|
|
@pytest.fixture
|
|
def sys_machine():
|
|
"""Mock sys_machine."""
|
|
with patch("supervisor.coresys.CoreSys.machine", new_callable=PropertyMock) as mock:
|
|
yield mock
|
|
|
|
|
|
@pytest.fixture
|
|
def sys_supervisor():
|
|
"""Mock sys_supervisor."""
|
|
with patch(
|
|
"supervisor.coresys.CoreSys.supervisor", new_callable=PropertyMock
|
|
) as mock:
|
|
mock.return_value = MagicMock()
|
|
yield MagicMock
|