34 lines
953 B
Python
34 lines
953 B
Python
|
"""Fixtures for the Rainforest RAVEn tests."""
|
||
|
|
||
|
from collections.abc import Generator
|
||
|
from unittest.mock import AsyncMock, patch
|
||
|
|
||
|
import pytest
|
||
|
|
||
|
from homeassistant.core import HomeAssistant
|
||
|
|
||
|
from . import create_mock_device, create_mock_entry
|
||
|
|
||
|
from tests.common import MockConfigEntry
|
||
|
|
||
|
|
||
|
@pytest.fixture
|
||
|
def mock_device() -> Generator[AsyncMock, None, None]:
|
||
|
"""Mock a functioning RAVEn device."""
|
||
|
mock_device = create_mock_device()
|
||
|
with patch(
|
||
|
"homeassistant.components.rainforest_raven.coordinator.RAVEnSerialDevice",
|
||
|
return_value=mock_device,
|
||
|
):
|
||
|
yield mock_device
|
||
|
|
||
|
|
||
|
@pytest.fixture
|
||
|
async def mock_entry(hass: HomeAssistant, mock_device: AsyncMock) -> MockConfigEntry:
|
||
|
"""Mock a functioning RAVEn config entry."""
|
||
|
mock_entry = create_mock_entry()
|
||
|
mock_entry.add_to_hass(hass)
|
||
|
await hass.config_entries.async_setup(mock_entry.entry_id)
|
||
|
await hass.async_block_till_done()
|
||
|
return mock_entry
|