Add additional sensors to pyLoad integration (#120309)

This commit is contained in:
Mr. Bubbles 2024-06-24 18:56:33 +02:00 committed by GitHub
parent 31157828e1
commit 1e5f4c2d75
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 998 additions and 0 deletions

View File

@ -3,6 +3,15 @@
"sensor": {
"speed": {
"default": "mdi:speedometer"
},
"active": {
"default": "mdi:cloud-download"
},
"queue": {
"default": "mdi:cloud-clock"
},
"total": {
"default": "mdi:cloud-alert"
}
}
}

View File

@ -22,6 +22,7 @@ from homeassistant.const import (
CONF_SSL,
CONF_USERNAME,
UnitOfDataRate,
UnitOfInformation,
)
from homeassistant.core import DOMAIN as HOMEASSISTANT_DOMAIN, HomeAssistant
from homeassistant.data_entry_flow import FlowResultType
@ -40,7 +41,11 @@ from .coordinator import PyLoadCoordinator
class PyLoadSensorEntity(StrEnum):
"""pyLoad Sensor Entities."""
ACTIVE = "active"
FREE_SPACE = "free_space"
QUEUE = "queue"
SPEED = "speed"
TOTAL = "total"
SENSOR_DESCRIPTIONS: tuple[SensorEntityDescription, ...] = (
@ -52,6 +57,26 @@ SENSOR_DESCRIPTIONS: tuple[SensorEntityDescription, ...] = (
suggested_unit_of_measurement=UnitOfDataRate.MEGABITS_PER_SECOND,
suggested_display_precision=1,
),
SensorEntityDescription(
key=PyLoadSensorEntity.ACTIVE,
translation_key=PyLoadSensorEntity.ACTIVE,
),
SensorEntityDescription(
key=PyLoadSensorEntity.QUEUE,
translation_key=PyLoadSensorEntity.QUEUE,
),
SensorEntityDescription(
key=PyLoadSensorEntity.TOTAL,
translation_key=PyLoadSensorEntity.TOTAL,
),
SensorEntityDescription(
key=PyLoadSensorEntity.FREE_SPACE,
translation_key=PyLoadSensorEntity.FREE_SPACE,
device_class=SensorDeviceClass.DATA_SIZE,
native_unit_of_measurement=UnitOfInformation.BYTES,
suggested_unit_of_measurement=UnitOfInformation.GIBIBYTES,
suggested_display_precision=1,
),
)
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(

View File

@ -31,6 +31,18 @@
"sensor": {
"speed": {
"name": "Speed"
},
"active": {
"name": "Active downloads"
},
"queue": {
"name": "Downloads in queue"
},
"total": {
"name": "Total downlods"
},
"free_space": {
"name": "Free space"
}
}
},

View File

@ -1,4 +1,196 @@
# serializer version: 1
# name: test_sensor_update_exceptions[CannotConnect][sensor.pyload_active_downloads-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.pyload_active_downloads',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Active downloads',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.ACTIVE: 'active'>,
'unique_id': 'XXXXXXXXXXXXXX_active',
'unit_of_measurement': None,
})
# ---
# name: test_sensor_update_exceptions[CannotConnect][sensor.pyload_active_downloads-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Active downloads',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_active_downloads',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[CannotConnect][sensor.pyload_downloads_in_queue-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.pyload_downloads_in_queue',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Downloads in queue',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.QUEUE: 'queue'>,
'unique_id': 'XXXXXXXXXXXXXX_queue',
'unit_of_measurement': None,
})
# ---
# name: test_sensor_update_exceptions[CannotConnect][sensor.pyload_downloads_in_queue-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Downloads in queue',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_downloads_in_queue',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[CannotConnect][sensor.pyload_downloads_total-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.pyload_downloads_total',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Downloads total',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.TOTAL: 'total'>,
'unique_id': 'XXXXXXXXXXXXXX_total',
'unit_of_measurement': None,
})
# ---
# name: test_sensor_update_exceptions[CannotConnect][sensor.pyload_downloads_total-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Downloads total',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_downloads_total',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[CannotConnect][sensor.pyload_free_space-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.pyload_free_space',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
'sensor': dict({
'suggested_display_precision': 1,
}),
'sensor.private': dict({
'suggested_unit_of_measurement': <UnitOfInformation.GIBIBYTES: 'GiB'>,
}),
}),
'original_device_class': <SensorDeviceClass.DATA_SIZE: 'data_size'>,
'original_icon': None,
'original_name': 'Free space',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.FREE_SPACE: 'free_space'>,
'unique_id': 'XXXXXXXXXXXXXX_free_space',
'unit_of_measurement': <UnitOfInformation.GIBIBYTES: 'GiB'>,
})
# ---
# name: test_sensor_update_exceptions[CannotConnect][sensor.pyload_free_space-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'data_size',
'friendly_name': 'pyLoad Free space',
'unit_of_measurement': <UnitOfInformation.GIBIBYTES: 'GiB'>,
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_free_space',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[CannotConnect][sensor.pyload_speed-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
@ -53,6 +245,244 @@
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[CannotConnect][sensor.pyload_total_downlods-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.pyload_total_downlods',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Total downlods',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.TOTAL: 'total'>,
'unique_id': 'XXXXXXXXXXXXXX_total',
'unit_of_measurement': None,
})
# ---
# name: test_sensor_update_exceptions[CannotConnect][sensor.pyload_total_downlods-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Total downlods',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_total_downlods',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[InvalidAuth][sensor.pyload_active_downloads-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.pyload_active_downloads',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Active downloads',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.ACTIVE: 'active'>,
'unique_id': 'XXXXXXXXXXXXXX_active',
'unit_of_measurement': None,
})
# ---
# name: test_sensor_update_exceptions[InvalidAuth][sensor.pyload_active_downloads-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Active downloads',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_active_downloads',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[InvalidAuth][sensor.pyload_downloads_in_queue-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.pyload_downloads_in_queue',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Downloads in queue',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.QUEUE: 'queue'>,
'unique_id': 'XXXXXXXXXXXXXX_queue',
'unit_of_measurement': None,
})
# ---
# name: test_sensor_update_exceptions[InvalidAuth][sensor.pyload_downloads_in_queue-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Downloads in queue',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_downloads_in_queue',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[InvalidAuth][sensor.pyload_downloads_total-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.pyload_downloads_total',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Downloads total',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.TOTAL: 'total'>,
'unique_id': 'XXXXXXXXXXXXXX_total',
'unit_of_measurement': None,
})
# ---
# name: test_sensor_update_exceptions[InvalidAuth][sensor.pyload_downloads_total-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Downloads total',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_downloads_total',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[InvalidAuth][sensor.pyload_free_space-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.pyload_free_space',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
'sensor': dict({
'suggested_display_precision': 1,
}),
'sensor.private': dict({
'suggested_unit_of_measurement': <UnitOfInformation.GIBIBYTES: 'GiB'>,
}),
}),
'original_device_class': <SensorDeviceClass.DATA_SIZE: 'data_size'>,
'original_icon': None,
'original_name': 'Free space',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.FREE_SPACE: 'free_space'>,
'unique_id': 'XXXXXXXXXXXXXX_free_space',
'unit_of_measurement': <UnitOfInformation.GIBIBYTES: 'GiB'>,
})
# ---
# name: test_sensor_update_exceptions[InvalidAuth][sensor.pyload_free_space-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'data_size',
'friendly_name': 'pyLoad Free space',
'unit_of_measurement': <UnitOfInformation.GIBIBYTES: 'GiB'>,
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_free_space',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[InvalidAuth][sensor.pyload_speed-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
@ -107,6 +537,244 @@
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[InvalidAuth][sensor.pyload_total_downlods-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.pyload_total_downlods',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Total downlods',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.TOTAL: 'total'>,
'unique_id': 'XXXXXXXXXXXXXX_total',
'unit_of_measurement': None,
})
# ---
# name: test_sensor_update_exceptions[InvalidAuth][sensor.pyload_total_downlods-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Total downlods',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_total_downlods',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[ParserError][sensor.pyload_active_downloads-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.pyload_active_downloads',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Active downloads',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.ACTIVE: 'active'>,
'unique_id': 'XXXXXXXXXXXXXX_active',
'unit_of_measurement': None,
})
# ---
# name: test_sensor_update_exceptions[ParserError][sensor.pyload_active_downloads-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Active downloads',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_active_downloads',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[ParserError][sensor.pyload_downloads_in_queue-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.pyload_downloads_in_queue',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Downloads in queue',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.QUEUE: 'queue'>,
'unique_id': 'XXXXXXXXXXXXXX_queue',
'unit_of_measurement': None,
})
# ---
# name: test_sensor_update_exceptions[ParserError][sensor.pyload_downloads_in_queue-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Downloads in queue',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_downloads_in_queue',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[ParserError][sensor.pyload_downloads_total-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.pyload_downloads_total',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Downloads total',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.TOTAL: 'total'>,
'unique_id': 'XXXXXXXXXXXXXX_total',
'unit_of_measurement': None,
})
# ---
# name: test_sensor_update_exceptions[ParserError][sensor.pyload_downloads_total-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Downloads total',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_downloads_total',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[ParserError][sensor.pyload_free_space-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.pyload_free_space',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
'sensor': dict({
'suggested_display_precision': 1,
}),
'sensor.private': dict({
'suggested_unit_of_measurement': <UnitOfInformation.GIBIBYTES: 'GiB'>,
}),
}),
'original_device_class': <SensorDeviceClass.DATA_SIZE: 'data_size'>,
'original_icon': None,
'original_name': 'Free space',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.FREE_SPACE: 'free_space'>,
'unique_id': 'XXXXXXXXXXXXXX_free_space',
'unit_of_measurement': <UnitOfInformation.GIBIBYTES: 'GiB'>,
})
# ---
# name: test_sensor_update_exceptions[ParserError][sensor.pyload_free_space-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'data_size',
'friendly_name': 'pyLoad Free space',
'unit_of_measurement': <UnitOfInformation.GIBIBYTES: 'GiB'>,
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_free_space',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[ParserError][sensor.pyload_speed-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
@ -161,6 +829,244 @@
'state': 'unavailable',
})
# ---
# name: test_sensor_update_exceptions[ParserError][sensor.pyload_total_downlods-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.pyload_total_downlods',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Total downlods',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.TOTAL: 'total'>,
'unique_id': 'XXXXXXXXXXXXXX_total',
'unit_of_measurement': None,
})
# ---
# name: test_sensor_update_exceptions[ParserError][sensor.pyload_total_downlods-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Total downlods',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_total_downlods',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unavailable',
})
# ---
# name: test_setup[sensor.pyload_active_downloads-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.pyload_active_downloads',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Active downloads',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.ACTIVE: 'active'>,
'unique_id': 'XXXXXXXXXXXXXX_active',
'unit_of_measurement': None,
})
# ---
# name: test_setup[sensor.pyload_active_downloads-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Active downloads',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_active_downloads',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '1',
})
# ---
# name: test_setup[sensor.pyload_downloads_in_queue-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.pyload_downloads_in_queue',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Downloads in queue',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.QUEUE: 'queue'>,
'unique_id': 'XXXXXXXXXXXXXX_queue',
'unit_of_measurement': None,
})
# ---
# name: test_setup[sensor.pyload_downloads_in_queue-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Downloads in queue',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_downloads_in_queue',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '6',
})
# ---
# name: test_setup[sensor.pyload_downloads_total-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.pyload_downloads_total',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Downloads total',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.TOTAL: 'total'>,
'unique_id': 'XXXXXXXXXXXXXX_total',
'unit_of_measurement': None,
})
# ---
# name: test_setup[sensor.pyload_downloads_total-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Downloads total',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_downloads_total',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '37',
})
# ---
# name: test_setup[sensor.pyload_free_space-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.pyload_free_space',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
'sensor': dict({
'suggested_display_precision': 1,
}),
'sensor.private': dict({
'suggested_unit_of_measurement': <UnitOfInformation.GIBIBYTES: 'GiB'>,
}),
}),
'original_device_class': <SensorDeviceClass.DATA_SIZE: 'data_size'>,
'original_icon': None,
'original_name': 'Free space',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.FREE_SPACE: 'free_space'>,
'unique_id': 'XXXXXXXXXXXXXX_free_space',
'unit_of_measurement': <UnitOfInformation.GIBIBYTES: 'GiB'>,
})
# ---
# name: test_setup[sensor.pyload_free_space-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'data_size',
'friendly_name': 'pyLoad Free space',
'unit_of_measurement': <UnitOfInformation.GIBIBYTES: 'GiB'>,
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_free_space',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '93.1322574606165',
})
# ---
# name: test_setup[sensor.pyload_speed-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
@ -215,3 +1121,49 @@
'state': '43.247704',
})
# ---
# name: test_setup[sensor.pyload_total_downlods-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.pyload_total_downlods',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Total downlods',
'platform': 'pyload',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': <PyLoadSensorEntity.TOTAL: 'total'>,
'unique_id': 'XXXXXXXXXXXXXX_total',
'unit_of_measurement': None,
})
# ---
# name: test_setup[sensor.pyload_total_downlods-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'pyLoad Total downlods',
}),
'context': <ANY>,
'entity_id': 'sensor.pyload_total_downlods',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '37',
})
# ---