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 GitHub
parent c6d3928ed1
commit 827d5256c6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
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]: ) -> dict[str, Any]:
"""Return diagnostics for a config entry.""" """Return diagnostics for a config entry."""
client = entry.runtime_data.client client = entry.runtime_data.client
return await client.get_raw_devices() return {"devices": await client.get_raw_devices()}
async def async_get_device_diagnostics( async def async_get_device_diagnostics(

View File

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

2
requirements_all.txt generated
View File

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

View File

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

View File

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

View File

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