Bump pySmartThings to 2.7.4 (#140720)

* Bump pySmartThings to 2.7.3

* Bump pySmartThings to 2.7.3

* Fix

* Fix

* Fix
This commit is contained in:
Joost Lekkerkerker 2025-03-20 11:02:51 +01:00 committed by Franck Nijhof
parent a453e9d4c2
commit 21ced23c3c
No known key found for this signature in database
GPG Key ID: D62583BA8AB11CA3
6 changed files with 303 additions and 299 deletions

View File

@ -23,7 +23,7 @@ async def async_get_config_entry_diagnostics(
) -> dict[str, Any]:
"""Return diagnostics for a config entry."""
client = entry.runtime_data.client
return await client.get_raw_devices()
return {"devices": await client.get_raw_devices()}
async def async_get_device_diagnostics(

View File

@ -29,5 +29,5 @@
"documentation": "https://www.home-assistant.io/integrations/smartthings",
"iot_class": "cloud_push",
"loggers": ["pysmartthings"],
"requirements": ["pysmartthings==2.7.2"]
"requirements": ["pysmartthings==2.7.4"]
}

2
requirements_all.txt generated
View File

@ -2310,7 +2310,7 @@ pysma==0.7.5
pysmappee==0.2.29
# homeassistant.components.smartthings
pysmartthings==2.7.2
pysmartthings==2.7.4
# homeassistant.components.smarty
pysmarty2==0.10.2

View File

@ -1882,7 +1882,7 @@ pysma==0.7.5
pysmappee==0.2.29
# homeassistant.components.smartthings
pysmartthings==2.7.2
pysmartthings==2.7.4
# homeassistant.components.smarty
pysmarty2==0.10.2

View File

@ -1,307 +1,311 @@
# serializer version: 1
# name: test_config_entry_diagnostics[da_ac_rac_000001]
dict({
'_links': dict({
}),
'items': list([
'devices': list([
dict({
'allowed': list([
]),
'components': list([
'_links': dict({
}),
'items': list([
dict({
'capabilities': list([
'allowed': list([
]),
'components': list([
dict({
'id': 'ocf',
'version': 1,
'capabilities': list([
dict({
'id': 'ocf',
'version': 1,
}),
dict({
'id': 'switch',
'version': 1,
}),
dict({
'id': 'airConditionerMode',
'version': 1,
}),
dict({
'id': 'airConditionerFanMode',
'version': 1,
}),
dict({
'id': 'fanOscillationMode',
'version': 1,
}),
dict({
'id': 'airQualitySensor',
'version': 1,
}),
dict({
'id': 'temperatureMeasurement',
'version': 1,
}),
dict({
'id': 'thermostatCoolingSetpoint',
'version': 1,
}),
dict({
'id': 'relativeHumidityMeasurement',
'version': 1,
}),
dict({
'id': 'dustSensor',
'version': 1,
}),
dict({
'id': 'veryFineDustSensor',
'version': 1,
}),
dict({
'id': 'audioVolume',
'version': 1,
}),
dict({
'id': 'remoteControlStatus',
'version': 1,
}),
dict({
'id': 'powerConsumptionReport',
'version': 1,
}),
dict({
'id': 'demandResponseLoadControl',
'version': 1,
}),
dict({
'id': 'refresh',
'version': 1,
}),
dict({
'id': 'execute',
'version': 1,
}),
dict({
'id': 'custom.spiMode',
'version': 1,
}),
dict({
'id': 'custom.thermostatSetpointControl',
'version': 1,
}),
dict({
'id': 'custom.airConditionerOptionalMode',
'version': 1,
}),
dict({
'id': 'custom.airConditionerTropicalNightMode',
'version': 1,
}),
dict({
'id': 'custom.autoCleaningMode',
'version': 1,
}),
dict({
'id': 'custom.deviceReportStateConfiguration',
'version': 1,
}),
dict({
'id': 'custom.energyType',
'version': 1,
}),
dict({
'id': 'custom.dustFilter',
'version': 1,
}),
dict({
'id': 'custom.airConditionerOdorController',
'version': 1,
}),
dict({
'id': 'custom.deodorFilter',
'version': 1,
}),
dict({
'id': 'custom.disabledComponents',
'version': 1,
}),
dict({
'id': 'custom.disabledCapabilities',
'version': 1,
}),
dict({
'id': 'samsungce.deviceIdentification',
'version': 1,
}),
dict({
'id': 'samsungce.dongleSoftwareInstallation',
'version': 1,
}),
dict({
'id': 'samsungce.softwareUpdate',
'version': 1,
}),
dict({
'id': 'samsungce.selfCheck',
'version': 1,
}),
dict({
'id': 'samsungce.driverVersion',
'version': 1,
}),
]),
'categories': list([
dict({
'categoryType': 'manufacturer',
'name': 'AirConditioner',
}),
]),
'id': 'main',
'label': 'main',
}),
dict({
'id': 'switch',
'version': 1,
}),
dict({
'id': 'airConditionerMode',
'version': 1,
}),
dict({
'id': 'airConditionerFanMode',
'version': 1,
}),
dict({
'id': 'fanOscillationMode',
'version': 1,
}),
dict({
'id': 'airQualitySensor',
'version': 1,
}),
dict({
'id': 'temperatureMeasurement',
'version': 1,
}),
dict({
'id': 'thermostatCoolingSetpoint',
'version': 1,
}),
dict({
'id': 'relativeHumidityMeasurement',
'version': 1,
}),
dict({
'id': 'dustSensor',
'version': 1,
}),
dict({
'id': 'veryFineDustSensor',
'version': 1,
}),
dict({
'id': 'audioVolume',
'version': 1,
}),
dict({
'id': 'remoteControlStatus',
'version': 1,
}),
dict({
'id': 'powerConsumptionReport',
'version': 1,
}),
dict({
'id': 'demandResponseLoadControl',
'version': 1,
}),
dict({
'id': 'refresh',
'version': 1,
}),
dict({
'id': 'execute',
'version': 1,
}),
dict({
'id': 'custom.spiMode',
'version': 1,
}),
dict({
'id': 'custom.thermostatSetpointControl',
'version': 1,
}),
dict({
'id': 'custom.airConditionerOptionalMode',
'version': 1,
}),
dict({
'id': 'custom.airConditionerTropicalNightMode',
'version': 1,
}),
dict({
'id': 'custom.autoCleaningMode',
'version': 1,
}),
dict({
'id': 'custom.deviceReportStateConfiguration',
'version': 1,
}),
dict({
'id': 'custom.energyType',
'version': 1,
}),
dict({
'id': 'custom.dustFilter',
'version': 1,
}),
dict({
'id': 'custom.airConditionerOdorController',
'version': 1,
}),
dict({
'id': 'custom.deodorFilter',
'version': 1,
}),
dict({
'id': 'custom.disabledComponents',
'version': 1,
}),
dict({
'id': 'custom.disabledCapabilities',
'version': 1,
}),
dict({
'id': 'samsungce.deviceIdentification',
'version': 1,
}),
dict({
'id': 'samsungce.dongleSoftwareInstallation',
'version': 1,
}),
dict({
'id': 'samsungce.softwareUpdate',
'version': 1,
}),
dict({
'id': 'samsungce.selfCheck',
'version': 1,
}),
dict({
'id': 'samsungce.driverVersion',
'version': 1,
'capabilities': list([
dict({
'id': 'switch',
'version': 1,
}),
dict({
'id': 'airConditionerMode',
'version': 1,
}),
dict({
'id': 'airConditionerFanMode',
'version': 1,
}),
dict({
'id': 'fanOscillationMode',
'version': 1,
}),
dict({
'id': 'temperatureMeasurement',
'version': 1,
}),
dict({
'id': 'thermostatCoolingSetpoint',
'version': 1,
}),
dict({
'id': 'relativeHumidityMeasurement',
'version': 1,
}),
dict({
'id': 'airQualitySensor',
'version': 1,
}),
dict({
'id': 'dustSensor',
'version': 1,
}),
dict({
'id': 'veryFineDustSensor',
'version': 1,
}),
dict({
'id': 'odorSensor',
'version': 1,
}),
dict({
'id': 'remoteControlStatus',
'version': 1,
}),
dict({
'id': 'audioVolume',
'version': 1,
}),
dict({
'id': 'custom.thermostatSetpointControl',
'version': 1,
}),
dict({
'id': 'custom.autoCleaningMode',
'version': 1,
}),
dict({
'id': 'custom.airConditionerTropicalNightMode',
'version': 1,
}),
dict({
'id': 'custom.disabledCapabilities',
'version': 1,
}),
dict({
'id': 'ocf',
'version': 1,
}),
dict({
'id': 'powerConsumptionReport',
'version': 1,
}),
dict({
'id': 'demandResponseLoadControl',
'version': 1,
}),
dict({
'id': 'custom.spiMode',
'version': 1,
}),
dict({
'id': 'custom.airConditionerOptionalMode',
'version': 1,
}),
dict({
'id': 'custom.deviceReportStateConfiguration',
'version': 1,
}),
dict({
'id': 'custom.energyType',
'version': 1,
}),
dict({
'id': 'custom.dustFilter',
'version': 1,
}),
dict({
'id': 'custom.airConditionerOdorController',
'version': 1,
}),
dict({
'id': 'custom.deodorFilter',
'version': 1,
}),
]),
'categories': list([
dict({
'categoryType': 'manufacturer',
'name': 'Other',
}),
]),
'id': '1',
'label': '1',
}),
]),
'categories': list([
dict({
'categoryType': 'manufacturer',
'name': 'AirConditioner',
}),
]),
'id': 'main',
'label': 'main',
}),
dict({
'capabilities': list([
dict({
'id': 'switch',
'version': 1,
}),
dict({
'id': 'airConditionerMode',
'version': 1,
}),
dict({
'id': 'airConditionerFanMode',
'version': 1,
}),
dict({
'id': 'fanOscillationMode',
'version': 1,
}),
dict({
'id': 'temperatureMeasurement',
'version': 1,
}),
dict({
'id': 'thermostatCoolingSetpoint',
'version': 1,
}),
dict({
'id': 'relativeHumidityMeasurement',
'version': 1,
}),
dict({
'id': 'airQualitySensor',
'version': 1,
}),
dict({
'id': 'dustSensor',
'version': 1,
}),
dict({
'id': 'veryFineDustSensor',
'version': 1,
}),
dict({
'id': 'odorSensor',
'version': 1,
}),
dict({
'id': 'remoteControlStatus',
'version': 1,
}),
dict({
'id': 'audioVolume',
'version': 1,
}),
dict({
'id': 'custom.thermostatSetpointControl',
'version': 1,
}),
dict({
'id': 'custom.autoCleaningMode',
'version': 1,
}),
dict({
'id': 'custom.airConditionerTropicalNightMode',
'version': 1,
}),
dict({
'id': 'custom.disabledCapabilities',
'version': 1,
}),
dict({
'id': 'ocf',
'version': 1,
}),
dict({
'id': 'powerConsumptionReport',
'version': 1,
}),
dict({
'id': 'demandResponseLoadControl',
'version': 1,
}),
dict({
'id': 'custom.spiMode',
'version': 1,
}),
dict({
'id': 'custom.airConditionerOptionalMode',
'version': 1,
}),
dict({
'id': 'custom.deviceReportStateConfiguration',
'version': 1,
}),
dict({
'id': 'custom.energyType',
'version': 1,
}),
dict({
'id': 'custom.dustFilter',
'version': 1,
}),
dict({
'id': 'custom.airConditionerOdorController',
'version': 1,
}),
dict({
'id': 'custom.deodorFilter',
'version': 1,
}),
]),
'categories': list([
dict({
'categoryType': 'manufacturer',
'name': 'Other',
}),
]),
'id': '1',
'label': '1',
'createTime': '2021-04-06T16:43:34.753Z',
'deviceId': '96a5ef74-5832-a84b-f1f7-ca799957065d',
'deviceManufacturerCode': 'Samsung Electronics',
'deviceTypeName': 'Samsung OCF Air Conditioner',
'executionContext': 'CLOUD',
'label': 'AC Office Granit',
'locationId': '58d3fd7c-c512-4da3-b500-ef269382756c',
'manufacturerName': 'Samsung Electronics',
'name': '[room a/c] Samsung',
'ocf': dict({
'additionalAuthCodeRequired': False,
'lastSignupTime': '2025-01-08T02:32:04.631093137Z',
'manufacturerName': 'Samsung Electronics',
'ocfDeviceType': 'x.com.st.d.sensor.light',
'transferCandidate': False,
'vendorId': 'VD-Sensor.Light-2023',
}),
'ownerId': 'f9a28d7c-1ed5-d9e9-a81c-18971ec081db',
'presentationId': 'DA-AC-RAC-000001',
'profile': dict({
'id': '60fbc713-8da5-315d-b31a-6d6dcde4be7b',
}),
'restrictionTier': 0,
'roomId': '85a79db4-9cf2-4f09-a5b2-cd70a5c0cef0',
'type': 'OCF',
}),
]),
'createTime': '2021-04-06T16:43:34.753Z',
'deviceId': '96a5ef74-5832-a84b-f1f7-ca799957065d',
'deviceManufacturerCode': 'Samsung Electronics',
'deviceTypeName': 'Samsung OCF Air Conditioner',
'executionContext': 'CLOUD',
'label': 'AC Office Granit',
'locationId': '58d3fd7c-c512-4da3-b500-ef269382756c',
'manufacturerName': 'Samsung Electronics',
'name': '[room a/c] Samsung',
'ocf': dict({
'additionalAuthCodeRequired': False,
'lastSignupTime': '2025-01-08T02:32:04.631093137Z',
'manufacturerName': 'Samsung Electronics',
'ocfDeviceType': 'x.com.st.d.sensor.light',
'transferCandidate': False,
'vendorId': 'VD-Sensor.Light-2023',
}),
'ownerId': 'f9a28d7c-1ed5-d9e9-a81c-18971ec081db',
'presentationId': 'DA-AC-RAC-000001',
'profile': dict({
'id': '60fbc713-8da5-315d-b31a-6d6dcde4be7b',
}),
'restrictionTier': 0,
'roomId': '85a79db4-9cf2-4f09-a5b2-cd70a5c0cef0',
'type': 'OCF',
}),
]),
})

View File

@ -30,9 +30,9 @@ async def test_config_entry_diagnostics(
snapshot: SnapshotAssertion,
) -> None:
"""Test generating diagnostics for a device entry."""
mock_smartthings.get_raw_devices.return_value = load_json_object_fixture(
"devices/da_ac_rac_000001.json", DOMAIN
)
mock_smartthings.get_raw_devices.return_value = [
load_json_object_fixture("devices/da_ac_rac_000001.json", DOMAIN)
]
await setup_integration(hass, mock_config_entry)
assert (
await get_diagnostics_for_config_entry(hass, hass_client, mock_config_entry)