Files
core/tests/components/probe_plus/conftest.py
Jordan Harvey 20ce879471 Add new Probe Plus integration (#143424)
* Add probe_plus integration

* Changes for quality scale

* sentence-casing

* Update homeassistant/components/probe_plus/config_flow.py

Co-authored-by: Erwin Douna <e.douna@gmail.com>

* Update homeassistant/components/probe_plus/config_flow.py

Co-authored-by: Erwin Douna <e.douna@gmail.com>

* Update tests/components/probe_plus/test_config_flow.py

Co-authored-by: Erwin Douna <e.douna@gmail.com>

* Update tests/components/probe_plus/test_config_flow.py

Co-authored-by: Erwin Douna <e.douna@gmail.com>

* remove version from configflow

* remove address var from async_step_bluetooth_confirm

* move timedelta to SCAN_INTERVAL in coordinator

* update tests

* updates from review

* add voltage device class

* remove unused logger

* remove names

* update tests

* Update config flow tests

* Update unit tests

* Reorder successful tests

* Update config entry typing

* Remove icons

* ruff

* Update async_add_entities logic

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* sensor platform formatting

---------

Co-authored-by: Erwin Douna <e.douna@gmail.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-05-19 22:50:09 +02:00

61 lines
1.7 KiB
Python

"""Common fixtures for the Probe Plus tests."""
from collections.abc import Generator
from unittest.mock import AsyncMock, MagicMock, patch
from pyprobeplus.parser import ParserBase, ProbePlusData
import pytest
from homeassistant.components.probe_plus.const import DOMAIN
from homeassistant.const import CONF_ADDRESS
from homeassistant.core import HomeAssistant
from tests.common import MockConfigEntry
@pytest.fixture
def mock_setup_entry() -> Generator[AsyncMock]:
"""Override async_setup_entry."""
with patch(
"homeassistant.components.probe_plus.async_setup_entry", return_value=True
) as mock_setup_entry:
yield mock_setup_entry
@pytest.fixture
def mock_config_entry(hass: HomeAssistant) -> MockConfigEntry:
"""Return the default mocked config entry."""
return MockConfigEntry(
title="FM210 aa:bb:cc:dd:ee:ff",
domain=DOMAIN,
version=1,
data={
CONF_ADDRESS: "aa:bb:cc:dd:ee:ff",
},
unique_id="aa:bb:cc:dd:ee:ff",
)
@pytest.fixture
def mock_probe_plus() -> MagicMock:
"""Mock the Probe Plus device."""
with patch(
"homeassistant.components.probe_plus.coordinator.ProbePlusDevice",
autospec=True,
) as mock_device:
device = mock_device.return_value
device.connected = True
device.name = "FM210 aa:bb:cc:dd:ee:ff"
mock_state = ParserBase()
mock_state.state = ProbePlusData(
relay_battery=50,
probe_battery=50,
probe_temperature=25.0,
probe_rssi=200,
probe_voltage=3.7,
relay_status=1,
relay_voltage=9.0,
)
device._device_state = mock_state
yield device