2020-06-10 16:33:48 +00:00
|
|
|
"""Tests for SpeedTest sensors."""
|
2024-03-08 13:47:22 +00:00
|
|
|
|
2021-07-22 10:25:54 +00:00
|
|
|
from unittest.mock import MagicMock
|
2021-01-01 21:31:56 +00:00
|
|
|
|
2020-06-10 16:33:48 +00:00
|
|
|
from homeassistant.components.sensor import DOMAIN as SENSOR_DOMAIN
|
2024-05-04 20:32:53 +00:00
|
|
|
from homeassistant.components.speedtestdotnet.const import DOMAIN
|
2023-09-12 19:12:01 +00:00
|
|
|
from homeassistant.core import HomeAssistant
|
2020-06-10 16:33:48 +00:00
|
|
|
|
|
|
|
from . import MOCK_RESULTS, MOCK_SERVERS, MOCK_STATES
|
|
|
|
|
2023-09-12 19:12:01 +00:00
|
|
|
from tests.common import MockConfigEntry
|
2020-06-10 16:33:48 +00:00
|
|
|
|
|
|
|
|
2021-07-22 10:25:54 +00:00
|
|
|
async def test_speedtestdotnet_sensors(
|
|
|
|
hass: HomeAssistant, mock_api: MagicMock
|
|
|
|
) -> None:
|
2020-06-10 16:33:48 +00:00
|
|
|
"""Test sensors created for speedtestdotnet integration."""
|
2022-12-18 09:57:17 +00:00
|
|
|
entry = MockConfigEntry(domain=DOMAIN, data={})
|
2020-06-10 16:33:48 +00:00
|
|
|
entry.add_to_hass(hass)
|
|
|
|
|
2021-07-22 10:25:54 +00:00
|
|
|
mock_api.return_value.get_best_server.return_value = MOCK_SERVERS[1][0]
|
|
|
|
mock_api.return_value.results.dict.return_value = MOCK_RESULTS
|
2020-06-10 16:33:48 +00:00
|
|
|
|
2021-07-22 10:25:54 +00:00
|
|
|
await hass.config_entries.async_setup(entry.entry_id)
|
|
|
|
await hass.async_block_till_done()
|
2020-06-10 16:33:48 +00:00
|
|
|
|
|
|
|
assert len(hass.states.async_entity_ids(SENSOR_DOMAIN)) == 3
|
|
|
|
|
2023-07-09 18:20:39 +00:00
|
|
|
sensor = hass.states.get("sensor.speedtest_ping")
|
|
|
|
assert sensor
|
|
|
|
assert sensor.state == MOCK_STATES["ping"]
|
|
|
|
|
|
|
|
sensor = hass.states.get("sensor.speedtest_download")
|
|
|
|
assert sensor
|
|
|
|
assert sensor.state == MOCK_STATES["download"]
|
|
|
|
|
|
|
|
sensor = hass.states.get("sensor.speedtest_ping")
|
|
|
|
assert sensor
|
|
|
|
assert sensor.state == MOCK_STATES["ping"]
|