Improve geniushub test coverage (#124157)

* Add tests for local connection

* Test cloud setup

* Improve tests.

* Simplied coverage test to cloud setup.

* Mock out library and add snapshots

* Mock out library and add snapshots

* Update tests/components/geniushub/conftest.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Attempt to make it nice

* Fix

---------

Co-authored-by: Joostlek <joostlek@outlook.com>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
This commit is contained in:
GeoffAtHome
2024-09-06 14:17:50 +01:00
committed by GitHub
parent b68c90d59a
commit 543f986955
12 changed files with 3130 additions and 2 deletions
+12
View File
@@ -1 +1,13 @@
"""Tests for the geniushub integration."""
from homeassistant.core import HomeAssistant
from tests.common import MockConfigEntry
async def setup_integration(hass: HomeAssistant, config_entry: MockConfigEntry) -> None:
"""Fixture for setting up the component."""
config_entry.add_to_hass(hass)
await hass.config_entries.async_setup(config_entry.entry_id)
await hass.async_block_till_done()
+37 -2
View File
@@ -1,14 +1,16 @@
"""GeniusHub tests configuration."""
from collections.abc import Generator
from unittest.mock import patch
from typing import Any
from unittest.mock import MagicMock, patch
from geniushubclient import GeniusDevice, GeniusZone
import pytest
from homeassistant.components.geniushub.const import DOMAIN
from homeassistant.const import CONF_HOST, CONF_PASSWORD, CONF_TOKEN, CONF_USERNAME
from tests.common import MockConfigEntry
from tests.common import MockConfigEntry, load_json_array_fixture
from tests.components.smhi.common import AsyncMock
@@ -38,6 +40,38 @@ def mock_geniushub_client() -> Generator[AsyncMock]:
yield client
@pytest.fixture(scope="session")
def zones() -> list[dict[str, Any]]:
"""Return a list of zones."""
return load_json_array_fixture("zones_cloud_test_data.json", DOMAIN)
@pytest.fixture(scope="session")
def devices() -> list[dict[str, Any]]:
"""Return a list of devices."""
return load_json_array_fixture("devices_cloud_test_data.json", DOMAIN)
@pytest.fixture
def mock_geniushub_cloud(
zones: list[dict[str, Any]], devices: list[dict[str, Any]]
) -> Generator[MagicMock]:
"""Mock a GeniusHub."""
with patch(
"homeassistant.components.geniushub.GeniusHub",
autospec=True,
) as mock_client:
client = mock_client.return_value
genius_zones = [GeniusZone(z["id"], z, client) for z in zones]
client.zone_objs = genius_zones
client._zones = genius_zones
genius_devices = [GeniusDevice(d["id"], d, client) for d in devices]
client.device_objs = genius_devices
client._devices = genius_devices
client.api_version = 1
yield client
@pytest.fixture
def mock_local_config_entry() -> MockConfigEntry:
"""Mock a local config entry."""
@@ -62,4 +96,5 @@ def mock_cloud_config_entry() -> MockConfigEntry:
data={
CONF_TOKEN: "abcdef",
},
entry_id="01J71MQF0EC62D620DGYNG2R8H",
)
@@ -0,0 +1,151 @@
[
{
"id": "4",
"type": "Smart Plug",
"assignedZones": [{ "name": "Bedroom Socket" }],
"state": { "outputOnOff": "True" }
},
{
"id": "6",
"type": "Smart Plug",
"assignedZones": [{ "name": "Kitchen Socket" }],
"state": { "outputOnOff": "True" }
},
{
"id": "11",
"type": "Radiator Valve",
"assignedZones": [{ "name": "Lounge" }],
"state": { "batteryLevel": 43, "setTemperature": 4 }
},
{
"id": "16",
"type": "Room Sensor",
"assignedZones": [{ "name": "Guest room" }],
"state": {
"batteryLevel": 100,
"measuredTemperature": 21,
"luminance": 29,
"occupancyTrigger": 255
}
},
{
"id": "17",
"type": "Room Sensor",
"assignedZones": [{ "name": "Ensuite" }],
"state": {
"batteryLevel": 100,
"measuredTemperature": 21,
"luminance": 32,
"occupancyTrigger": 0
}
},
{
"id": "18",
"type": "Room Sensor",
"assignedZones": [{ "name": "Bedroom" }],
"state": {
"batteryLevel": 36,
"measuredTemperature": 21.5,
"luminance": 1,
"occupancyTrigger": 0
}
},
{
"id": "20",
"type": "Room Sensor",
"assignedZones": [{ "name": "Kitchen" }],
"state": {
"batteryLevel": 100,
"measuredTemperature": 21.5,
"luminance": 1,
"occupancyTrigger": 0
}
},
{
"id": "21",
"type": "Room Sensor",
"assignedZones": [{ "name": "Hall" }],
"state": {
"batteryLevel": 100,
"measuredTemperature": 21,
"luminance": 33,
"occupancyTrigger": 0
}
},
{
"id": "22",
"type": "Single Channel Receiver",
"assignedZones": [{ "name": "East Berlin" }],
"state": { "outputOnOff": "False" }
},
{
"id": "50",
"type": "Room Sensor",
"assignedZones": [{ "name": "Study" }],
"state": {
"batteryLevel": 100,
"measuredTemperature": 22,
"luminance": 34,
"occupancyTrigger": 0
}
},
{
"id": "53",
"type": "Room Sensor",
"assignedZones": [{ "name": "Lounge" }],
"state": {
"batteryLevel": 28,
"measuredTemperature": 0,
"luminance": 0,
"occupancyTrigger": 0
}
},
{
"id": "56",
"type": "Radiator Valve",
"assignedZones": [{ "name": "Kitchen" }],
"state": { "batteryLevel": 55, "setTemperature": 4 }
},
{
"id": "68",
"type": "Radiator Valve",
"assignedZones": [{ "name": "Hall" }],
"state": { "batteryLevel": 92, "setTemperature": 4 }
},
{
"id": "78",
"type": "Radiator Valve",
"assignedZones": [{ "name": "Bedroom" }],
"state": { "batteryLevel": 42, "setTemperature": 4 }
},
{
"id": "85",
"type": "Radiator Valve",
"assignedZones": [{ "name": "Study" }],
"state": { "batteryLevel": 61, "setTemperature": 4 }
},
{
"id": "86",
"type": "Smart Plug",
"assignedZones": [{ "name": "Study Socket" }],
"state": { "outputOnOff": "False" }
},
{
"id": "88",
"type": "Radiator Valve",
"assignedZones": [{ "name": "Ensuite" }],
"state": { "batteryLevel": 49, "setTemperature": 4 }
},
{
"id": "89",
"type": "Radiator Valve",
"assignedZones": [{ "name": "Kitchen" }],
"state": { "batteryLevel": 48, "setTemperature": 4 }
},
{
"id": "90",
"type": "Radiator Valve",
"assignedZones": [{ "name": "Guest room" }],
"state": { "batteryLevel": 92, "setTemperature": 4 }
}
]
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,50 @@
# serializer version: 1
# name: test_cloud_all_sensors[binary_sensor.single_channel_receiver_22-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'binary_sensor',
'entity_category': None,
'entity_id': 'binary_sensor.single_channel_receiver_22',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Single Channel Receiver 22',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_22',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[binary_sensor.single_channel_receiver_22-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'East Berlin',
'friendly_name': 'Single Channel Receiver 22',
'state': dict({
}),
}),
'context': <ANY>,
'entity_id': 'binary_sensor.single_channel_receiver_22',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'on',
})
# ---
@@ -0,0 +1,569 @@
# serializer version: 1
# name: test_cloud_all_sensors[climate.bedroom-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'max_temp': 28.0,
'min_temp': 4.0,
'preset_modes': list([
'boost',
]),
}),
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'climate',
'entity_category': None,
'entity_id': 'climate.bedroom',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:radiator',
'original_name': 'Bedroom',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': <ClimateEntityFeature: 401>,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_zone_29',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[climate.bedroom-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'current_temperature': 21.5,
'friendly_name': 'Bedroom',
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'icon': 'mdi:radiator',
'max_temp': 28.0,
'min_temp': 4.0,
'preset_mode': None,
'preset_modes': list([
'boost',
]),
'status': dict({
'mode': 'off',
'override': dict({
'duration': 0,
'setpoint': 23.5,
}),
'temperature': 21.5,
'type': 'radiator',
}),
'supported_features': <ClimateEntityFeature: 401>,
'temperature': 4,
}),
'context': <ANY>,
'entity_id': 'climate.bedroom',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'off',
})
# ---
# name: test_cloud_all_sensors[climate.ensuite-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'max_temp': 28.0,
'min_temp': 4.0,
'preset_modes': list([
'activity',
'boost',
]),
}),
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'climate',
'entity_category': None,
'entity_id': 'climate.ensuite',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:radiator',
'original_name': 'Ensuite',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': <ClimateEntityFeature: 401>,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_zone_5',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[climate.ensuite-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'current_temperature': 21,
'friendly_name': 'Ensuite',
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'icon': 'mdi:radiator',
'max_temp': 28.0,
'min_temp': 4.0,
'preset_mode': None,
'preset_modes': list([
'activity',
'boost',
]),
'status': dict({
'mode': 'off',
'occupied': 'False',
'override': dict({
'duration': 0,
'setpoint': 28,
}),
'temperature': 21,
'type': 'radiator',
}),
'supported_features': <ClimateEntityFeature: 401>,
'temperature': 4,
}),
'context': <ANY>,
'entity_id': 'climate.ensuite',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'off',
})
# ---
# name: test_cloud_all_sensors[climate.guest_room-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'max_temp': 28.0,
'min_temp': 4.0,
'preset_modes': list([
'activity',
'boost',
]),
}),
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'climate',
'entity_category': None,
'entity_id': 'climate.guest_room',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:radiator',
'original_name': 'Guest room',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': <ClimateEntityFeature: 401>,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_zone_7',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[climate.guest_room-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'current_temperature': 21,
'friendly_name': 'Guest room',
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'icon': 'mdi:radiator',
'max_temp': 28.0,
'min_temp': 4.0,
'preset_mode': None,
'preset_modes': list([
'activity',
'boost',
]),
'status': dict({
'mode': 'off',
'occupied': 'True',
'override': dict({
'duration': 0,
'setpoint': 20,
}),
'temperature': 21,
'type': 'radiator',
}),
'supported_features': <ClimateEntityFeature: 401>,
'temperature': 4,
}),
'context': <ANY>,
'entity_id': 'climate.guest_room',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'off',
})
# ---
# name: test_cloud_all_sensors[climate.hall-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'max_temp': 28.0,
'min_temp': 4.0,
'preset_modes': list([
'activity',
'boost',
]),
}),
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'climate',
'entity_category': None,
'entity_id': 'climate.hall',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:radiator',
'original_name': 'Hall',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': <ClimateEntityFeature: 401>,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_zone_2',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[climate.hall-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'current_temperature': 21,
'friendly_name': 'Hall',
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'icon': 'mdi:radiator',
'max_temp': 28.0,
'min_temp': 4.0,
'preset_mode': None,
'preset_modes': list([
'activity',
'boost',
]),
'status': dict({
'mode': 'off',
'occupied': 'False',
'override': dict({
'duration': 0,
'setpoint': 20,
}),
'temperature': 21,
'type': 'radiator',
}),
'supported_features': <ClimateEntityFeature: 401>,
'temperature': 4,
}),
'context': <ANY>,
'entity_id': 'climate.hall',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'off',
})
# ---
# name: test_cloud_all_sensors[climate.kitchen-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'max_temp': 28.0,
'min_temp': 4.0,
'preset_modes': list([
'activity',
'boost',
]),
}),
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'climate',
'entity_category': None,
'entity_id': 'climate.kitchen',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:radiator',
'original_name': 'Kitchen',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': <ClimateEntityFeature: 401>,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_zone_3',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[climate.kitchen-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'current_temperature': 21.5,
'friendly_name': 'Kitchen',
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'icon': 'mdi:radiator',
'max_temp': 28.0,
'min_temp': 4.0,
'preset_mode': None,
'preset_modes': list([
'activity',
'boost',
]),
'status': dict({
'mode': 'off',
'occupied': 'False',
'override': dict({
'duration': 0,
'setpoint': 20,
}),
'temperature': 21.5,
'type': 'radiator',
}),
'supported_features': <ClimateEntityFeature: 401>,
'temperature': 4,
}),
'context': <ANY>,
'entity_id': 'climate.kitchen',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'off',
})
# ---
# name: test_cloud_all_sensors[climate.lounge-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'max_temp': 28.0,
'min_temp': 4.0,
'preset_modes': list([
'boost',
]),
}),
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'climate',
'entity_category': None,
'entity_id': 'climate.lounge',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:radiator',
'original_name': 'Lounge',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': <ClimateEntityFeature: 401>,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_zone_1',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[climate.lounge-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'current_temperature': 20,
'friendly_name': 'Lounge',
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'icon': 'mdi:radiator',
'max_temp': 28.0,
'min_temp': 4.0,
'preset_mode': None,
'preset_modes': list([
'boost',
]),
'status': dict({
'mode': 'off',
'override': dict({
'duration': 0,
'setpoint': 20,
}),
'temperature': 20,
'type': 'radiator',
}),
'supported_features': <ClimateEntityFeature: 401>,
'temperature': 4,
}),
'context': <ANY>,
'entity_id': 'climate.lounge',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'off',
})
# ---
# name: test_cloud_all_sensors[climate.study-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'max_temp': 28.0,
'min_temp': 4.0,
'preset_modes': list([
'activity',
'boost',
]),
}),
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'climate',
'entity_category': None,
'entity_id': 'climate.study',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:radiator',
'original_name': 'Study',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': <ClimateEntityFeature: 401>,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_zone_30',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[climate.study-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'current_temperature': 22,
'friendly_name': 'Study',
'hvac_modes': list([
<HVACMode.OFF: 'off'>,
<HVACMode.HEAT: 'heat'>,
]),
'icon': 'mdi:radiator',
'max_temp': 28.0,
'min_temp': 4.0,
'preset_mode': None,
'preset_modes': list([
'activity',
'boost',
]),
'status': dict({
'mode': 'off',
'occupied': 'False',
'override': dict({
'duration': 0,
'setpoint': 28,
}),
'temperature': 22,
'type': 'radiator',
}),
'supported_features': <ClimateEntityFeature: 401>,
'temperature': 4,
}),
'context': <ANY>,
'entity_id': 'climate.study',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'off',
})
# ---
@@ -0,0 +1,954 @@
# serializer version: 1
# name: test_cloud_all_sensors[sensor.geniushub_errors-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.geniushub_errors',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'GeniusHub Errors',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_Errors',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[sensor.geniushub_errors-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'error_list': list([
]),
'friendly_name': 'GeniusHub Errors',
}),
'context': <ANY>,
'entity_id': 'sensor.geniushub_errors',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '0',
})
# ---
# name: test_cloud_all_sensors[sensor.geniushub_information-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.geniushub_information',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'GeniusHub Information',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_Information',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[sensor.geniushub_information-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'GeniusHub Information',
'information_list': list([
]),
}),
'context': <ANY>,
'entity_id': 'sensor.geniushub_information',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '0',
})
# ---
# name: test_cloud_all_sensors[sensor.geniushub_warnings-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.geniushub_warnings',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'GeniusHub Warnings',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_Warnings',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[sensor.geniushub_warnings-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'GeniusHub Warnings',
'warning_list': list([
]),
}),
'context': <ANY>,
'entity_id': 'sensor.geniushub_warnings',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '0',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_11-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.radiator_valve_11',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery-40',
'original_name': 'Radiator Valve 11',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_11',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_11-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Lounge',
'device_class': 'battery',
'friendly_name': 'Radiator Valve 11',
'icon': 'mdi:battery-40',
'state': dict({
'set_temperature': 4,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.radiator_valve_11',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '43',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_56-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.radiator_valve_56',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery-50',
'original_name': 'Radiator Valve 56',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_56',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_56-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Kitchen',
'device_class': 'battery',
'friendly_name': 'Radiator Valve 56',
'icon': 'mdi:battery-50',
'state': dict({
'set_temperature': 4,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.radiator_valve_56',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '55',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_68-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.radiator_valve_68',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery-90',
'original_name': 'Radiator Valve 68',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_68',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_68-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Hall',
'device_class': 'battery',
'friendly_name': 'Radiator Valve 68',
'icon': 'mdi:battery-90',
'state': dict({
'set_temperature': 4,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.radiator_valve_68',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '92',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_78-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.radiator_valve_78',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery-40',
'original_name': 'Radiator Valve 78',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_78',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_78-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Bedroom',
'device_class': 'battery',
'friendly_name': 'Radiator Valve 78',
'icon': 'mdi:battery-40',
'state': dict({
'set_temperature': 4,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.radiator_valve_78',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '42',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_85-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.radiator_valve_85',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery-60',
'original_name': 'Radiator Valve 85',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_85',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_85-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Study',
'device_class': 'battery',
'friendly_name': 'Radiator Valve 85',
'icon': 'mdi:battery-60',
'state': dict({
'set_temperature': 4,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.radiator_valve_85',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '61',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_88-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.radiator_valve_88',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery-50',
'original_name': 'Radiator Valve 88',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_88',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_88-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Ensuite',
'device_class': 'battery',
'friendly_name': 'Radiator Valve 88',
'icon': 'mdi:battery-50',
'state': dict({
'set_temperature': 4,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.radiator_valve_88',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '49',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_89-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.radiator_valve_89',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery-50',
'original_name': 'Radiator Valve 89',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_89',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_89-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Kitchen',
'device_class': 'battery',
'friendly_name': 'Radiator Valve 89',
'icon': 'mdi:battery-50',
'state': dict({
'set_temperature': 4,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.radiator_valve_89',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '48',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_90-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.radiator_valve_90',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery-90',
'original_name': 'Radiator Valve 90',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_90',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.radiator_valve_90-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Guest room',
'device_class': 'battery',
'friendly_name': 'Radiator Valve 90',
'icon': 'mdi:battery-90',
'state': dict({
'set_temperature': 4,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.radiator_valve_90',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '92',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_16-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.room_sensor_16',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery',
'original_name': 'Room Sensor 16',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_16',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_16-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Guest room',
'device_class': 'battery',
'friendly_name': 'Room Sensor 16',
'icon': 'mdi:battery',
'state': dict({
'luminance': 29,
'measured_temperature': 21,
'occupancy_trigger': 255,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.room_sensor_16',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '100',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_17-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.room_sensor_17',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery',
'original_name': 'Room Sensor 17',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_17',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_17-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Ensuite',
'device_class': 'battery',
'friendly_name': 'Room Sensor 17',
'icon': 'mdi:battery',
'state': dict({
'luminance': 32,
'measured_temperature': 21,
'occupancy_trigger': 0,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.room_sensor_17',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '100',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_18-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.room_sensor_18',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery-alert',
'original_name': 'Room Sensor 18',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_18',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_18-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Bedroom',
'device_class': 'battery',
'friendly_name': 'Room Sensor 18',
'icon': 'mdi:battery-alert',
'state': dict({
'luminance': 1,
'measured_temperature': 21.5,
'occupancy_trigger': 0,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.room_sensor_18',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '36',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_20-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.room_sensor_20',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery',
'original_name': 'Room Sensor 20',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_20',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_20-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Kitchen',
'device_class': 'battery',
'friendly_name': 'Room Sensor 20',
'icon': 'mdi:battery',
'state': dict({
'luminance': 1,
'measured_temperature': 21.5,
'occupancy_trigger': 0,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.room_sensor_20',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '100',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_21-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.room_sensor_21',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery',
'original_name': 'Room Sensor 21',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_21',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_21-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Hall',
'device_class': 'battery',
'friendly_name': 'Room Sensor 21',
'icon': 'mdi:battery',
'state': dict({
'luminance': 33,
'measured_temperature': 21,
'occupancy_trigger': 0,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.room_sensor_21',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '100',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_50-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.room_sensor_50',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery',
'original_name': 'Room Sensor 50',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_50',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_50-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Study',
'device_class': 'battery',
'friendly_name': 'Room Sensor 50',
'icon': 'mdi:battery',
'state': dict({
'luminance': 34,
'measured_temperature': 22,
'occupancy_trigger': 0,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.room_sensor_50',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '100',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_53-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.room_sensor_53',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.BATTERY: 'battery'>,
'original_icon': 'mdi:battery-alert',
'original_name': 'Room Sensor 53',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_device_53',
'unit_of_measurement': '%',
})
# ---
# name: test_cloud_all_sensors[sensor.room_sensor_53-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'assigned_zone': 'Lounge',
'device_class': 'battery',
'friendly_name': 'Room Sensor 53',
'icon': 'mdi:battery-alert',
'state': dict({
'luminance': 0,
'measured_temperature': 0,
'occupancy_trigger': 0,
}),
'unit_of_measurement': '%',
}),
'context': <ANY>,
'entity_id': 'sensor.room_sensor_53',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '28',
})
# ---
@@ -0,0 +1,166 @@
# serializer version: 1
# name: test_cloud_all_sensors[switch.bedroom_socket-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'switch',
'entity_category': None,
'entity_id': 'switch.bedroom_socket',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SwitchDeviceClass.OUTLET: 'outlet'>,
'original_icon': None,
'original_name': 'Bedroom Socket',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_zone_27',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[switch.bedroom_socket-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'outlet',
'friendly_name': 'Bedroom Socket',
'status': dict({
'mode': 'timer',
'override': dict({
'duration': 0,
'setpoint': 'True',
}),
'type': 'on / off',
}),
}),
'context': <ANY>,
'entity_id': 'switch.bedroom_socket',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'on',
})
# ---
# name: test_cloud_all_sensors[switch.kitchen_socket-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'switch',
'entity_category': None,
'entity_id': 'switch.kitchen_socket',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SwitchDeviceClass.OUTLET: 'outlet'>,
'original_icon': None,
'original_name': 'Kitchen Socket',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_zone_28',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[switch.kitchen_socket-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'outlet',
'friendly_name': 'Kitchen Socket',
'status': dict({
'mode': 'timer',
'override': dict({
'duration': 0,
'setpoint': 'True',
}),
'type': 'on / off',
}),
}),
'context': <ANY>,
'entity_id': 'switch.kitchen_socket',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'on',
})
# ---
# name: test_cloud_all_sensors[switch.study_socket-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'switch',
'entity_category': None,
'entity_id': 'switch.study_socket',
'has_entity_name': False,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SwitchDeviceClass.OUTLET: 'outlet'>,
'original_icon': None,
'original_name': 'Study Socket',
'platform': 'geniushub',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '01J71MQF0EC62D620DGYNG2R8H_zone_32',
'unit_of_measurement': None,
})
# ---
# name: test_cloud_all_sensors[switch.study_socket-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'outlet',
'friendly_name': 'Study Socket',
'status': dict({
'mode': 'off',
'override': dict({
'duration': 0,
'setpoint': 'True',
}),
'type': 'on / off',
}),
}),
'context': <ANY>,
'entity_id': 'switch.study_socket',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'off',
})
# ---
@@ -0,0 +1,32 @@
"""Tests for the Geniushub binary sensor platform."""
from unittest.mock import patch
import pytest
from syrupy import SnapshotAssertion
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant
from homeassistant.helpers import entity_registry as er
from . import setup_integration
from tests.common import MockConfigEntry, snapshot_platform
@pytest.mark.usefixtures("mock_geniushub_cloud")
async def test_cloud_all_sensors(
hass: HomeAssistant,
mock_cloud_config_entry: MockConfigEntry,
entity_registry: er.EntityRegistry,
snapshot: SnapshotAssertion,
) -> None:
"""Test the creation of the Genius Hub binary sensors."""
with patch(
"homeassistant.components.geniushub.PLATFORMS", [Platform.BINARY_SENSOR]
):
await setup_integration(hass, mock_cloud_config_entry)
await snapshot_platform(
hass, entity_registry, snapshot, mock_cloud_config_entry.entry_id
)
@@ -0,0 +1,30 @@
"""Tests for the Geniushub climate platform."""
from unittest.mock import patch
import pytest
from syrupy import SnapshotAssertion
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant
from homeassistant.helpers import entity_registry as er
from . import setup_integration
from tests.common import MockConfigEntry, snapshot_platform
@pytest.mark.usefixtures("mock_geniushub_cloud")
async def test_cloud_all_sensors(
hass: HomeAssistant,
mock_cloud_config_entry: MockConfigEntry,
entity_registry: er.EntityRegistry,
snapshot: SnapshotAssertion,
) -> None:
"""Test the creation of the Genius Hub climate entities."""
with patch("homeassistant.components.geniushub.PLATFORMS", [Platform.CLIMATE]):
await setup_integration(hass, mock_cloud_config_entry)
await snapshot_platform(
hass, entity_registry, snapshot, mock_cloud_config_entry.entry_id
)
+30
View File
@@ -0,0 +1,30 @@
"""Tests for the Geniushub sensor platform."""
from unittest.mock import patch
import pytest
from syrupy import SnapshotAssertion
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant
from homeassistant.helpers import entity_registry as er
from . import setup_integration
from tests.common import MockConfigEntry, snapshot_platform
@pytest.mark.usefixtures("mock_geniushub_cloud")
async def test_cloud_all_sensors(
hass: HomeAssistant,
mock_cloud_config_entry: MockConfigEntry,
entity_registry: er.EntityRegistry,
snapshot: SnapshotAssertion,
) -> None:
"""Test the creation of the Genius Hub sensors."""
with patch("homeassistant.components.geniushub.PLATFORMS", [Platform.SENSOR]):
await setup_integration(hass, mock_cloud_config_entry)
await snapshot_platform(
hass, entity_registry, snapshot, mock_cloud_config_entry.entry_id
)
+30
View File
@@ -0,0 +1,30 @@
"""Tests for the Geniushub switch platform."""
from unittest.mock import patch
import pytest
from syrupy import SnapshotAssertion
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant
from homeassistant.helpers import entity_registry as er
from . import setup_integration
from tests.common import MockConfigEntry, snapshot_platform
@pytest.mark.usefixtures("mock_geniushub_cloud")
async def test_cloud_all_sensors(
hass: HomeAssistant,
mock_cloud_config_entry: MockConfigEntry,
entity_registry: er.EntityRegistry,
snapshot: SnapshotAssertion,
) -> None:
"""Test the creation of the Genius Hub switch entities."""
with patch("homeassistant.components.geniushub.PLATFORMS", [Platform.SWITCH]):
await setup_integration(hass, mock_cloud_config_entry)
await snapshot_platform(
hass, entity_registry, snapshot, mock_cloud_config_entry.entry_id
)