Make Oven setpoint follow temperature UoM in SmartThings (#140666)

This commit is contained in:
Joost Lekkerkerker 2025-03-15 15:08:21 +01:00 committed by Franck Nijhof
parent a2102f9b98
commit 85b6b3a360
No known key found for this signature in database
GPG Key ID: D62583BA8AB11CA3
6 changed files with 1163 additions and 3 deletions

View File

@ -132,6 +132,7 @@ class SmartThingsSensorEntityDescription(SensorEntityDescription):
capability_ignore_list: list[set[Capability]] | None = None
options_attribute: Attribute | None = None
exists_fn: Callable[[Status], bool] | None = None
use_temperature_unit: bool = False
CAPABILITY_TO_SENSORS: dict[
@ -573,7 +574,7 @@ CAPABILITY_TO_SENSORS: dict[
key=Attribute.OVEN_SETPOINT,
translation_key="oven_setpoint",
device_class=SensorDeviceClass.TEMPERATURE,
native_unit_of_measurement=UnitOfTemperature.FAHRENHEIT,
use_temperature_unit=True,
value_fn=lambda value: value if value != 0 else None,
)
]
@ -1018,7 +1019,10 @@ class SmartThingsSensor(SmartThingsEntity, SensorEntity):
attribute: Attribute,
) -> None:
"""Init the class."""
super().__init__(client, device, {capability})
capabilities_to_subscribe = {capability}
if entity_description.use_temperature_unit:
capabilities_to_subscribe.add(Capability.TEMPERATURE_MEASUREMENT)
super().__init__(client, device, capabilities_to_subscribe)
self._attr_unique_id = f"{device.device.device_id}{entity_description.unique_id_separator}{entity_description.key}"
self._attribute = attribute
self.capability = capability
@ -1033,7 +1037,12 @@ class SmartThingsSensor(SmartThingsEntity, SensorEntity):
@property
def native_unit_of_measurement(self) -> str | None:
"""Return the unit this state is expressed in."""
unit = self._internal_state[self.capability][self._attribute].unit
if self.entity_description.use_temperature_unit:
unit = self._internal_state[Capability.TEMPERATURE_MEASUREMENT][
Attribute.TEMPERATURE
].unit
else:
unit = self._internal_state[self.capability][self._attribute].unit
return (
UNITS.get(unit, unit)
if unit

View File

@ -110,6 +110,7 @@ def mock_smartthings() -> Generator[AsyncMock]:
"da_rvc_normal_000001",
"da_ks_microwave_0101x",
"da_ks_range_0101x",
"da_ks_oven_01061",
"hue_color_temperature_bulb",
"hue_rgbw_color_bulb",
"c2c_shade",

View File

@ -0,0 +1,566 @@
{
"components": {
"main": {
"ovenSetpoint": {
"ovenSetpointRange": {
"value": null
},
"ovenSetpoint": {
"value": 220,
"timestamp": "2025-03-15T12:06:07.818Z"
}
},
"refresh": {},
"samsungce.doorState": {
"doorState": {
"value": "closed",
"timestamp": "2025-03-15T09:25:35.157Z"
}
},
"samsungce.microwavePower": {
"supportedPowerLevels": {
"value": null
},
"powerLevel": {
"value": "0W",
"timestamp": "2025-03-15T12:06:07.803Z"
}
},
"samsungce.waterReservoir": {
"slotState": {
"value": null
}
},
"samsungce.kitchenDeviceDefaults": {
"defaultOperationTime": {
"value": null
},
"defaultOvenMode": {
"value": "Convection",
"timestamp": "2025-03-15T12:06:07.758Z"
},
"defaultOvenSetpoint": {
"value": null
}
},
"execute": {
"data": {
"value": null
}
},
"samsungce.deviceIdentification": {
"micomAssayCode": {
"value": null
},
"modelName": {
"value": null
},
"serialNumber": {
"value": null
},
"serialNumberExtra": {
"value": null
},
"modelClassificationCode": {
"value": null
},
"description": {
"value": null
},
"releaseYear": {
"value": null
},
"binaryId": {
"value": "TP1X_DA-KS-OVEN-01061",
"timestamp": "2025-03-13T20:35:02.073Z"
}
},
"samsungce.ovenDrainageRequirement": {
"drainageRequirement": {
"value": null
}
},
"ocf": {
"st": {
"value": null
},
"mndt": {
"value": null
},
"mnfv": {
"value": "AKS-WW-TP1X-21-OVEN_40211229",
"timestamp": "2025-01-08T17:29:14.260Z"
},
"mnhw": {
"value": "Realtek",
"timestamp": "2025-01-08T17:29:14.260Z"
},
"di": {
"value": "9447959a-0dfa-6b27-d40d-650da525c53f",
"timestamp": "2025-01-08T17:29:14.260Z"
},
"mnsl": {
"value": "http://www.samsung.com",
"timestamp": "2025-01-08T17:29:14.260Z"
},
"dmv": {
"value": "res.1.1.0,sh.1.1.0",
"timestamp": "2025-01-08T17:29:14.260Z"
},
"n": {
"value": "[oven] Samsung",
"timestamp": "2025-01-08T17:29:14.260Z"
},
"mnmo": {
"value": "TP1X_DA-KS-OVEN-01061|40457041|50030018001611000A00000000000000",
"timestamp": "2025-01-08T17:29:14.260Z"
},
"vid": {
"value": "DA-KS-OVEN-01061",
"timestamp": "2025-01-08T17:29:14.260Z"
},
"mnmn": {
"value": "Samsung Electronics",
"timestamp": "2025-01-08T17:29:14.260Z"
},
"mnml": {
"value": "http://www.samsung.com",
"timestamp": "2025-01-08T17:29:14.260Z"
},
"mnpv": {
"value": "DAWIT 3.0",
"timestamp": "2025-01-08T17:29:14.260Z"
},
"mnos": {
"value": "TizenRT 3.1",
"timestamp": "2025-01-08T17:29:14.260Z"
},
"pi": {
"value": "9447959a-0dfa-6b27-d40d-650da525c53f",
"timestamp": "2025-01-08T17:29:14.260Z"
},
"icv": {
"value": "core.1.1.0",
"timestamp": "2025-01-08T17:29:14.260Z"
}
},
"remoteControlStatus": {
"remoteControlEnabled": {
"value": "true",
"timestamp": "2025-03-15T09:47:55.406Z"
}
},
"samsungce.kitchenDeviceIdentification": {
"regionCode": {
"value": "EU",
"timestamp": "2025-03-15T12:06:07.758Z"
},
"modelCode": {
"value": "NQ7000B-/EU7",
"timestamp": "2025-03-15T12:06:07.758Z"
},
"fuel": {
"value": null
},
"type": {
"value": "oven",
"timestamp": "2025-01-08T17:29:12.924Z"
},
"representativeComponent": {
"value": null
}
},
"samsungce.kitchenModeSpecification": {
"specification": {
"value": {
"single": [
{
"mode": "NoOperation",
"supportedOperations": [],
"supportedOptions": {}
},
{
"mode": "Autocook",
"supportedOperations": [],
"supportedOptions": {}
},
{
"mode": "Convection",
"supportedOperations": ["start", "set"],
"supportedOptions": {
"temperature": {
"C": {
"min": 40,
"max": 230,
"default": 160,
"resolution": 5
}
},
"operationTime": {
"min": "00:01:00",
"max": "10:00:00",
"default": "01:00:00",
"resolution": "00:01:00"
}
}
},
{
"mode": "FanConventional",
"supportedOperations": ["start", "set"],
"supportedOptions": {
"temperature": {
"C": {
"min": 40,
"max": 230,
"default": 180,
"resolution": 5
}
},
"operationTime": {
"min": "00:01:00",
"max": "10:00:00",
"default": "01:00:00",
"resolution": "00:01:00"
}
}
},
{
"mode": "LargeGrill",
"supportedOperations": ["start", "set"],
"supportedOptions": {
"temperature": {
"C": {
"min": 150,
"max": 230,
"default": 220,
"resolution": 5
}
},
"operationTime": {
"min": "00:01:00",
"max": "10:00:00",
"default": "01:00:00",
"resolution": "00:01:00"
}
}
},
{
"mode": "FanGrill",
"supportedOperations": ["start", "set"],
"supportedOptions": {
"temperature": {
"C": {
"min": 40,
"max": 230,
"default": 180,
"resolution": 5
}
},
"operationTime": {
"min": "00:01:00",
"max": "10:00:00",
"default": "01:00:00",
"resolution": "00:01:00"
}
}
},
{
"mode": "MicroWaveGrill",
"supportedOperations": ["set"],
"supportedOptions": {
"temperature": {
"C": {
"min": 40,
"max": 200,
"default": 200,
"resolution": 5
}
},
"operationTime": {
"min": "00:00:10",
"max": "01:30:00",
"default": "00:00:30",
"resolution": "00:00:10"
},
"powerLevel": {
"default": "300W",
"supportedValues": ["100W", "180W", "300W", "450W", "600W"]
}
}
},
{
"mode": "MicroWaveConvection",
"supportedOperations": ["set"],
"supportedOptions": {
"temperature": {
"C": {
"min": 40,
"max": 200,
"default": 180,
"resolution": 5
}
},
"operationTime": {
"min": "00:00:10",
"max": "01:30:00",
"default": "00:00:30",
"resolution": "00:00:10"
},
"powerLevel": {
"default": "300W",
"supportedValues": ["100W", "180W", "300W", "450W", "600W"]
}
}
},
{
"mode": "AirFryer",
"supportedOperations": ["start", "set"],
"supportedOptions": {
"temperature": {
"C": {
"min": 150,
"max": 230,
"default": 220,
"resolution": 5
}
},
"operationTime": {
"min": "00:01:00",
"max": "10:00:00",
"default": "01:00:00",
"resolution": "00:01:00"
}
}
},
{
"mode": "MicroWave",
"supportedOperations": ["set"],
"supportedOptions": {
"operationTime": {
"min": "00:00:10",
"max": "01:30:00",
"default": "00:00:30",
"resolution": "00:00:10"
},
"powerLevel": {
"default": "800W",
"supportedValues": [
"100W",
"180W",
"300W",
"450W",
"600W",
"700W",
"800W"
]
}
}
},
{
"mode": "Deodorization",
"supportedOperations": ["start", "set"],
"supportedOptions": {
"operationTime": {
"min": "00:00:10",
"max": "00:15:00",
"default": "00:05:00",
"resolution": "00:00:10"
}
}
},
{
"mode": "KeepWarm",
"supportedOperations": ["start", "set"],
"supportedOptions": {
"temperature": {
"C": {
"min": 60,
"max": 100,
"default": 60,
"resolution": 5
}
},
"operationTime": {
"min": "00:01:00",
"max": "10:00:00",
"default": "01:00:00",
"resolution": "00:01:00"
}
}
},
{
"mode": "SteamClean",
"supportedOperations": ["set"],
"supportedOptions": {}
}
]
},
"timestamp": "2025-01-08T17:29:14.757Z"
}
},
"custom.disabledCapabilities": {
"disabledCapabilities": {
"value": [
"samsungce.waterReservoir",
"samsungce.ovenDrainageRequirement"
],
"timestamp": "2025-03-15T12:06:07.758Z"
}
},
"samsungce.definedRecipe": {
"definedRecipe": {
"value": {
"cavityId": "0",
"recipeType": "0",
"categoryId": 0,
"itemId": 0,
"servingSize": 0,
"browingLevel": 0,
"option": 0
},
"timestamp": "2025-03-15T12:06:07.803Z"
}
},
"samsungce.driverVersion": {
"versionNumber": {
"value": 22100101,
"timestamp": "2025-01-08T17:29:12.924Z"
}
},
"samsungce.softwareUpdate": {
"targetModule": {
"value": null
},
"otnDUID": {
"value": "43CB2ZD4VUEGW",
"timestamp": "2025-03-13T20:35:02.073Z"
},
"lastUpdatedDate": {
"value": null
},
"availableModules": {
"value": [],
"timestamp": "2025-03-13T20:35:02.073Z"
},
"newVersionAvailable": {
"value": false,
"timestamp": "2025-03-13T20:35:02.073Z"
},
"operatingState": {
"value": null
},
"progress": {
"value": null
}
},
"temperatureMeasurement": {
"temperatureRange": {
"value": null
},
"temperature": {
"value": 30,
"unit": "C",
"timestamp": "2025-03-15T12:06:32.918Z"
}
},
"samsungce.ovenOperatingState": {
"completionTime": {
"value": "2025-03-15T12:06:09.550Z",
"timestamp": "2025-03-15T12:06:09.554Z"
},
"operatingState": {
"value": "running",
"timestamp": "2025-03-15T12:06:07.866Z"
},
"progress": {
"value": 0,
"timestamp": "2025-03-15T12:06:07.866Z"
},
"ovenJobState": {
"value": "preheat",
"timestamp": "2025-03-15T12:06:07.803Z"
},
"operationTime": {
"value": "00:00:00",
"timestamp": "2025-03-15T12:06:07.866Z"
}
},
"ovenMode": {
"supportedOvenModes": {
"value": ["Others", "Bake", "Broil", "ConvectionBroil", "warming"],
"timestamp": "2025-01-08T17:29:14.757Z"
},
"ovenMode": {
"value": "Bake",
"timestamp": "2025-03-15T12:06:07.758Z"
}
},
"ovenOperatingState": {
"completionTime": {
"value": "2025-03-15T12:06:09.550Z",
"timestamp": "2025-03-15T12:06:09.554Z"
},
"machineState": {
"value": "running",
"timestamp": "2025-03-15T12:06:07.866Z"
},
"progress": {
"value": 0,
"unit": "%",
"timestamp": "2025-03-15T12:06:07.866Z"
},
"supportedMachineStates": {
"value": null
},
"ovenJobState": {
"value": "preheat",
"timestamp": "2025-03-15T12:06:07.803Z"
},
"operationTime": {
"value": 0,
"timestamp": "2025-03-15T12:06:07.866Z"
}
},
"samsungce.ovenMode": {
"supportedOvenModes": {
"value": [
"NoOperation",
"Autocook",
"Convection",
"FanConventional",
"LargeGrill",
"FanGrill",
"MicroWaveGrill",
"MicroWaveConvection",
"AirFryer",
"MicroWave",
"Deodorization",
"KeepWarm",
"SteamClean"
],
"timestamp": "2025-01-08T17:29:14.757Z"
},
"ovenMode": {
"value": "Convection",
"timestamp": "2025-03-15T12:06:07.758Z"
}
},
"samsungce.lamp": {
"brightnessLevel": {
"value": "high",
"timestamp": "2025-03-15T12:06:07.956Z"
},
"supportedBrightnessLevel": {
"value": ["off", "high"],
"timestamp": "2025-03-15T12:06:07.758Z"
}
},
"samsungce.kidsLock": {
"lockState": {
"value": "unlocked",
"timestamp": "2025-03-13T20:35:02.170Z"
}
}
}
}
}

View File

@ -0,0 +1,153 @@
{
"items": [
{
"deviceId": "9447959a-0dfa-6b27-d40d-650da525c53f",
"name": "[oven] Samsung",
"label": "Oven",
"manufacturerName": "Samsung Electronics",
"presentationId": "DA-KS-OVEN-01061",
"deviceManufacturerCode": "Samsung Electronics",
"locationId": "a81dc8da-5a3f-43b6-8c8a-1309f37eeeb9",
"ownerId": "97ee2149-9de0-3287-8245-24d6fd1609aa",
"roomId": "eb2167dd-8b8d-4131-b59e-5dd391b2e151",
"deviceTypeName": "Samsung OCF Oven",
"components": [
{
"id": "main",
"label": "main",
"capabilities": [
{
"id": "ocf",
"version": 1
},
{
"id": "execute",
"version": 1
},
{
"id": "refresh",
"version": 1
},
{
"id": "remoteControlStatus",
"version": 1
},
{
"id": "ovenSetpoint",
"version": 1
},
{
"id": "ovenMode",
"version": 1
},
{
"id": "ovenOperatingState",
"version": 1
},
{
"id": "temperatureMeasurement",
"version": 1
},
{
"id": "samsungce.deviceIdentification",
"version": 1
},
{
"id": "samsungce.doorState",
"version": 1
},
{
"id": "samsungce.definedRecipe",
"version": 1
},
{
"id": "samsungce.kitchenDeviceIdentification",
"version": 1
},
{
"id": "samsungce.kitchenDeviceDefaults",
"version": 1
},
{
"id": "samsungce.driverVersion",
"version": 1
},
{
"id": "samsungce.ovenMode",
"version": 1
},
{
"id": "samsungce.ovenOperatingState",
"version": 1
},
{
"id": "samsungce.microwavePower",
"version": 1
},
{
"id": "samsungce.lamp",
"version": 1
},
{
"id": "samsungce.kitchenModeSpecification",
"version": 1
},
{
"id": "samsungce.kidsLock",
"version": 1
},
{
"id": "samsungce.softwareUpdate",
"version": 1
},
{
"id": "samsungce.waterReservoir",
"version": 1
},
{
"id": "samsungce.ovenDrainageRequirement",
"version": 1
},
{
"id": "custom.disabledCapabilities",
"version": 1
}
],
"categories": [
{
"name": "Oven",
"categoryType": "manufacturer"
}
]
}
],
"createTime": "2025-01-08T17:29:12.549Z",
"profile": {
"id": "eb34598f-f96a-3420-a90a-71693052eaa3"
},
"ocf": {
"ocfDeviceType": "oic.d.oven",
"name": "[oven] Samsung",
"specVersion": "core.1.1.0",
"verticalDomainSpecVersion": "res.1.1.0,sh.1.1.0",
"manufacturerName": "Samsung Electronics",
"modelNumber": "TP1X_DA-KS-OVEN-01061|40457041|50030018001611000A00000000000000",
"platformVersion": "DAWIT 3.0",
"platformOS": "TizenRT 3.1",
"hwVersion": "Realtek",
"firmwareVersion": "AKS-WW-TP1X-21-OVEN_40211229",
"vendorId": "DA-KS-OVEN-01061",
"vendorResourceClientServerVersion": "Realtek Release 3.1.211122",
"lastSignupTime": "2025-01-08T17:29:08.536664213Z",
"transferCandidate": false,
"additionalAuthCodeRequired": false
},
"type": "OCF",
"restrictionTier": 0,
"allowed": null,
"executionContext": "CLOUD",
"relationships": []
}
],
"_links": {}
}

View File

@ -398,6 +398,39 @@
'via_device_id': None,
})
# ---
# name: test_devices[da_ks_oven_01061]
DeviceRegistryEntrySnapshot({
'area_id': None,
'config_entries': <ANY>,
'config_entries_subentries': <ANY>,
'configuration_url': 'https://account.smartthings.com',
'connections': set({
}),
'disabled_by': None,
'entry_type': None,
'hw_version': 'Realtek',
'id': <ANY>,
'identifiers': set({
tuple(
'smartthings',
'9447959a-0dfa-6b27-d40d-650da525c53f',
),
}),
'is_new': False,
'labels': set({
}),
'manufacturer': 'Samsung Electronics',
'model': 'TP1X_DA-KS-OVEN-01061',
'model_id': None,
'name': 'Oven',
'name_by_user': None,
'primary_config_entry': <ANY>,
'serial_number': None,
'suggested_area': None,
'sw_version': 'AKS-WW-TP1X-21-OVEN_40211229',
'via_device_id': None,
})
# ---
# name: test_devices[da_ks_range_0101x]
DeviceRegistryEntrySnapshot({
'area_id': None,

View File

@ -2085,6 +2085,404 @@
'state': '-17',
})
# ---
# name: test_all_entities[da_ks_oven_01061][sensor.oven_completion_time-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.oven_completion_time',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.TIMESTAMP: 'timestamp'>,
'original_icon': None,
'original_name': 'Completion time',
'platform': 'smartthings',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': 'completion_time',
'unique_id': '9447959a-0dfa-6b27-d40d-650da525c53f.completionTime',
'unit_of_measurement': None,
})
# ---
# name: test_all_entities[da_ks_oven_01061][sensor.oven_completion_time-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'timestamp',
'friendly_name': 'Oven Completion time',
}),
'context': <ANY>,
'entity_id': 'sensor.oven_completion_time',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '2025-03-15T12:06:09+00:00',
})
# ---
# name: test_all_entities[da_ks_oven_01061][sensor.oven_job_state-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'options': list([
'cleaning',
'cooking',
'cooling',
'draining',
'preheat',
'ready',
'rinsing',
'finished',
'scheduled_start',
'warming',
'defrosting',
'sensing',
'searing',
'fast_preheat',
'scheduled_end',
'stone_heating',
'time_hold_preheat',
]),
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.oven_job_state',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.ENUM: 'enum'>,
'original_icon': None,
'original_name': 'Job state',
'platform': 'smartthings',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': 'oven_job_state',
'unique_id': '9447959a-0dfa-6b27-d40d-650da525c53f.ovenJobState',
'unit_of_measurement': None,
})
# ---
# name: test_all_entities[da_ks_oven_01061][sensor.oven_job_state-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'enum',
'friendly_name': 'Oven Job state',
'options': list([
'cleaning',
'cooking',
'cooling',
'draining',
'preheat',
'ready',
'rinsing',
'finished',
'scheduled_start',
'warming',
'defrosting',
'sensing',
'searing',
'fast_preheat',
'scheduled_end',
'stone_heating',
'time_hold_preheat',
]),
}),
'context': <ANY>,
'entity_id': 'sensor.oven_job_state',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'preheat',
})
# ---
# name: test_all_entities[da_ks_oven_01061][sensor.oven_machine_state-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'options': list([
'ready',
'running',
'paused',
]),
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.oven_machine_state',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.ENUM: 'enum'>,
'original_icon': None,
'original_name': 'Machine state',
'platform': 'smartthings',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': 'oven_machine_state',
'unique_id': '9447959a-0dfa-6b27-d40d-650da525c53f.machineState',
'unit_of_measurement': None,
})
# ---
# name: test_all_entities[da_ks_oven_01061][sensor.oven_machine_state-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'enum',
'friendly_name': 'Oven Machine state',
'options': list([
'ready',
'running',
'paused',
]),
}),
'context': <ANY>,
'entity_id': 'sensor.oven_machine_state',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'running',
})
# ---
# name: test_all_entities[da_ks_oven_01061][sensor.oven_oven_mode-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'options': list([
'conventional',
'bake',
'bottom_heat',
'convection_bake',
'convection_roast',
'broil',
'convection_broil',
'steam_cook',
'steam_bake',
'steam_roast',
'steam_bottom_heat_plus_convection',
'microwave',
'microwave_plus_grill',
'microwave_plus_convection',
'microwave_plus_hot_blast',
'microwave_plus_hot_blast_2',
'slim_middle',
'slim_strong',
'slow_cook',
'proof',
'dehydrate',
'others',
'strong_steam',
'descale',
'rinse',
]),
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': <EntityCategory.DIAGNOSTIC: 'diagnostic'>,
'entity_id': 'sensor.oven_oven_mode',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.ENUM: 'enum'>,
'original_icon': None,
'original_name': 'Oven mode',
'platform': 'smartthings',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': 'oven_mode',
'unique_id': '9447959a-0dfa-6b27-d40d-650da525c53f.ovenMode',
'unit_of_measurement': None,
})
# ---
# name: test_all_entities[da_ks_oven_01061][sensor.oven_oven_mode-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'enum',
'friendly_name': 'Oven Oven mode',
'options': list([
'conventional',
'bake',
'bottom_heat',
'convection_bake',
'convection_roast',
'broil',
'convection_broil',
'steam_cook',
'steam_bake',
'steam_roast',
'steam_bottom_heat_plus_convection',
'microwave',
'microwave_plus_grill',
'microwave_plus_convection',
'microwave_plus_hot_blast',
'microwave_plus_hot_blast_2',
'slim_middle',
'slim_strong',
'slow_cook',
'proof',
'dehydrate',
'others',
'strong_steam',
'descale',
'rinse',
]),
}),
'context': <ANY>,
'entity_id': 'sensor.oven_oven_mode',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'bake',
})
# ---
# name: test_all_entities[da_ks_oven_01061][sensor.oven_set_point-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': None,
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.oven_set_point',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.TEMPERATURE: 'temperature'>,
'original_icon': None,
'original_name': 'Set point',
'platform': 'smartthings',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': 'oven_setpoint',
'unique_id': '9447959a-0dfa-6b27-d40d-650da525c53f.ovenSetpoint',
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
})
# ---
# name: test_all_entities[da_ks_oven_01061][sensor.oven_set_point-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'temperature',
'friendly_name': 'Oven Set point',
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
}),
'context': <ANY>,
'entity_id': 'sensor.oven_set_point',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '220',
})
# ---
# name: test_all_entities[da_ks_oven_01061][sensor.oven_temperature-entry]
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'sensor',
'entity_category': None,
'entity_id': 'sensor.oven_temperature',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': <SensorDeviceClass.TEMPERATURE: 'temperature'>,
'original_icon': None,
'original_name': 'Temperature',
'platform': 'smartthings',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'unique_id': '9447959a-0dfa-6b27-d40d-650da525c53f.temperature',
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
})
# ---
# name: test_all_entities[da_ks_oven_01061][sensor.oven_temperature-state]
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'temperature',
'friendly_name': 'Oven Temperature',
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
}),
'context': <ANY>,
'entity_id': 'sensor.oven_temperature',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '30',
})
# ---
# name: test_all_entities[da_ks_range_0101x][sensor.vulcan_completion_time-entry]
EntityRegistryEntrySnapshot({
'aliases': set({