mirror of https://github.com/home-assistant/core
Add device fixtures and tests for HomeWizard Energy 3-phase kWh meter (#104118)
This commit is contained in:
parent
cf9299df59
commit
b3ceb82700
|
@ -0,0 +1,46 @@
|
|||
{
|
||||
"wifi_ssid": "My Wi-Fi",
|
||||
"wifi_strength": 92,
|
||||
"smr_version": null,
|
||||
"meter_model": null,
|
||||
"unique_meter_id": null,
|
||||
"active_tariff": null,
|
||||
"total_power_import_kwh": 0.101,
|
||||
"total_power_import_t1_kwh": 0.101,
|
||||
"total_power_import_t2_kwh": null,
|
||||
"total_power_import_t3_kwh": null,
|
||||
"total_power_import_t4_kwh": null,
|
||||
"total_power_export_kwh": 0.523,
|
||||
"total_power_export_t1_kwh": 0.523,
|
||||
"total_power_export_t2_kwh": null,
|
||||
"total_power_export_t3_kwh": null,
|
||||
"total_power_export_t4_kwh": null,
|
||||
"active_power_w": -900.194,
|
||||
"active_power_l1_w": -1058.296,
|
||||
"active_power_l2_w": 158.102,
|
||||
"active_power_l3_w": 0.0,
|
||||
"active_voltage_l1_v": null,
|
||||
"active_voltage_l2_v": null,
|
||||
"active_voltage_l3_v": null,
|
||||
"active_current_l1_a": null,
|
||||
"active_current_l2_a": null,
|
||||
"active_current_l3_a": null,
|
||||
"active_frequency_hz": null,
|
||||
"voltage_sag_l1_count": null,
|
||||
"voltage_sag_l2_count": null,
|
||||
"voltage_sag_l3_count": null,
|
||||
"voltage_swell_l1_count": null,
|
||||
"voltage_swell_l2_count": null,
|
||||
"voltage_swell_l3_count": null,
|
||||
"any_power_fail_count": null,
|
||||
"long_power_fail_count": null,
|
||||
"active_power_average_w": null,
|
||||
"monthly_power_peak_w": null,
|
||||
"monthly_power_peak_timestamp": null,
|
||||
"total_gas_m3": null,
|
||||
"gas_timestamp": null,
|
||||
"gas_unique_id": null,
|
||||
"active_liter_lpm": null,
|
||||
"total_liter_m3": null,
|
||||
"external_devices": null
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"product_type": "SDM630-wifi",
|
||||
"product_name": "KWh meter 3-phase",
|
||||
"serial": "3c39e7aabbcc",
|
||||
"firmware_version": "3.06",
|
||||
"api_version": "v1"
|
||||
}
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"cloud_enabled": true
|
||||
}
|
|
@ -275,3 +275,70 @@
|
|||
}),
|
||||
})
|
||||
# ---
|
||||
# name: test_diagnostics[SDM630]
|
||||
dict({
|
||||
'data': dict({
|
||||
'data': dict({
|
||||
'active_current_l1_a': None,
|
||||
'active_current_l2_a': None,
|
||||
'active_current_l3_a': None,
|
||||
'active_frequency_hz': None,
|
||||
'active_liter_lpm': None,
|
||||
'active_power_average_w': None,
|
||||
'active_power_l1_w': -1058.296,
|
||||
'active_power_l2_w': 158.102,
|
||||
'active_power_l3_w': 0.0,
|
||||
'active_power_w': -900.194,
|
||||
'active_tariff': None,
|
||||
'active_voltage_l1_v': None,
|
||||
'active_voltage_l2_v': None,
|
||||
'active_voltage_l3_v': None,
|
||||
'any_power_fail_count': None,
|
||||
'external_devices': None,
|
||||
'gas_timestamp': None,
|
||||
'gas_unique_id': None,
|
||||
'long_power_fail_count': None,
|
||||
'meter_model': None,
|
||||
'monthly_power_peak_timestamp': None,
|
||||
'monthly_power_peak_w': None,
|
||||
'smr_version': None,
|
||||
'total_energy_export_kwh': 0.523,
|
||||
'total_energy_export_t1_kwh': 0.523,
|
||||
'total_energy_export_t2_kwh': None,
|
||||
'total_energy_export_t3_kwh': None,
|
||||
'total_energy_export_t4_kwh': None,
|
||||
'total_energy_import_kwh': 0.101,
|
||||
'total_energy_import_t1_kwh': 0.101,
|
||||
'total_energy_import_t2_kwh': None,
|
||||
'total_energy_import_t3_kwh': None,
|
||||
'total_energy_import_t4_kwh': None,
|
||||
'total_gas_m3': None,
|
||||
'total_liter_m3': None,
|
||||
'unique_meter_id': None,
|
||||
'voltage_sag_l1_count': None,
|
||||
'voltage_sag_l2_count': None,
|
||||
'voltage_sag_l3_count': None,
|
||||
'voltage_swell_l1_count': None,
|
||||
'voltage_swell_l2_count': None,
|
||||
'voltage_swell_l3_count': None,
|
||||
'wifi_ssid': '**REDACTED**',
|
||||
'wifi_strength': 92,
|
||||
}),
|
||||
'device': dict({
|
||||
'api_version': 'v1',
|
||||
'firmware_version': '3.06',
|
||||
'product_name': 'KWh meter 3-phase',
|
||||
'product_type': 'SDM630-wifi',
|
||||
'serial': '**REDACTED**',
|
||||
}),
|
||||
'state': None,
|
||||
'system': None,
|
||||
}),
|
||||
'entry': dict({
|
||||
'ip_address': '**REDACTED**',
|
||||
'product_name': 'Product name',
|
||||
'product_type': 'product_type',
|
||||
'serial': '**REDACTED**',
|
||||
}),
|
||||
})
|
||||
# ---
|
||||
|
|
|
@ -4203,3 +4203,811 @@
|
|||
'state': '92',
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_active_power:device-registry]
|
||||
DeviceRegistryEntrySnapshot({
|
||||
'area_id': None,
|
||||
'config_entries': <ANY>,
|
||||
'configuration_url': None,
|
||||
'connections': set({
|
||||
tuple(
|
||||
'mac',
|
||||
'3c:39:e7:aa:bb:cc',
|
||||
),
|
||||
}),
|
||||
'disabled_by': None,
|
||||
'entry_type': None,
|
||||
'hw_version': None,
|
||||
'id': <ANY>,
|
||||
'identifiers': set({
|
||||
tuple(
|
||||
'homewizard',
|
||||
'3c39e7aabbcc',
|
||||
),
|
||||
}),
|
||||
'is_new': False,
|
||||
'manufacturer': 'HomeWizard',
|
||||
'model': 'SDM630-wifi',
|
||||
'name': 'Device',
|
||||
'name_by_user': None,
|
||||
'serial_number': None,
|
||||
'suggested_area': None,
|
||||
'sw_version': '3.06',
|
||||
'via_device_id': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_active_power:entity-registry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': dict({
|
||||
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||
}),
|
||||
'config_entry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'sensor.device_active_power',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'name': None,
|
||||
'options': dict({
|
||||
'sensor': dict({
|
||||
'suggested_display_precision': 0,
|
||||
}),
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.POWER: 'power'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Active power',
|
||||
'platform': 'homewizard',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'active_power_w',
|
||||
'unique_id': 'aabbccddeeff_active_power_w',
|
||||
'unit_of_measurement': <UnitOfPower.WATT: 'W'>,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_active_power:state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'power',
|
||||
'friendly_name': 'Device Active power',
|
||||
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||
'unit_of_measurement': <UnitOfPower.WATT: 'W'>,
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.device_active_power',
|
||||
'last_changed': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': '-900.194',
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_active_power_phase_1:device-registry]
|
||||
DeviceRegistryEntrySnapshot({
|
||||
'area_id': None,
|
||||
'config_entries': <ANY>,
|
||||
'configuration_url': None,
|
||||
'connections': set({
|
||||
tuple(
|
||||
'mac',
|
||||
'3c:39:e7:aa:bb:cc',
|
||||
),
|
||||
}),
|
||||
'disabled_by': None,
|
||||
'entry_type': None,
|
||||
'hw_version': None,
|
||||
'id': <ANY>,
|
||||
'identifiers': set({
|
||||
tuple(
|
||||
'homewizard',
|
||||
'3c39e7aabbcc',
|
||||
),
|
||||
}),
|
||||
'is_new': False,
|
||||
'manufacturer': 'HomeWizard',
|
||||
'model': 'SDM630-wifi',
|
||||
'name': 'Device',
|
||||
'name_by_user': None,
|
||||
'serial_number': None,
|
||||
'suggested_area': None,
|
||||
'sw_version': '3.06',
|
||||
'via_device_id': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_active_power_phase_1:entity-registry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': dict({
|
||||
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||
}),
|
||||
'config_entry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'sensor.device_active_power_phase_1',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'name': None,
|
||||
'options': dict({
|
||||
'sensor': dict({
|
||||
'suggested_display_precision': 0,
|
||||
}),
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.POWER: 'power'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Active power phase 1',
|
||||
'platform': 'homewizard',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'active_power_l1_w',
|
||||
'unique_id': 'aabbccddeeff_active_power_l1_w',
|
||||
'unit_of_measurement': <UnitOfPower.WATT: 'W'>,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_active_power_phase_1:state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'power',
|
||||
'friendly_name': 'Device Active power phase 1',
|
||||
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||
'unit_of_measurement': <UnitOfPower.WATT: 'W'>,
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.device_active_power_phase_1',
|
||||
'last_changed': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': '-1058.296',
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_active_power_phase_2:device-registry]
|
||||
DeviceRegistryEntrySnapshot({
|
||||
'area_id': None,
|
||||
'config_entries': <ANY>,
|
||||
'configuration_url': None,
|
||||
'connections': set({
|
||||
tuple(
|
||||
'mac',
|
||||
'3c:39:e7:aa:bb:cc',
|
||||
),
|
||||
}),
|
||||
'disabled_by': None,
|
||||
'entry_type': None,
|
||||
'hw_version': None,
|
||||
'id': <ANY>,
|
||||
'identifiers': set({
|
||||
tuple(
|
||||
'homewizard',
|
||||
'3c39e7aabbcc',
|
||||
),
|
||||
}),
|
||||
'is_new': False,
|
||||
'manufacturer': 'HomeWizard',
|
||||
'model': 'SDM630-wifi',
|
||||
'name': 'Device',
|
||||
'name_by_user': None,
|
||||
'serial_number': None,
|
||||
'suggested_area': None,
|
||||
'sw_version': '3.06',
|
||||
'via_device_id': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_active_power_phase_2:entity-registry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': dict({
|
||||
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||
}),
|
||||
'config_entry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'sensor.device_active_power_phase_2',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'name': None,
|
||||
'options': dict({
|
||||
'sensor': dict({
|
||||
'suggested_display_precision': 0,
|
||||
}),
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.POWER: 'power'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Active power phase 2',
|
||||
'platform': 'homewizard',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'active_power_l2_w',
|
||||
'unique_id': 'aabbccddeeff_active_power_l2_w',
|
||||
'unit_of_measurement': <UnitOfPower.WATT: 'W'>,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_active_power_phase_2:state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'power',
|
||||
'friendly_name': 'Device Active power phase 2',
|
||||
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||
'unit_of_measurement': <UnitOfPower.WATT: 'W'>,
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.device_active_power_phase_2',
|
||||
'last_changed': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': '158.102',
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_active_power_phase_3:device-registry]
|
||||
DeviceRegistryEntrySnapshot({
|
||||
'area_id': None,
|
||||
'config_entries': <ANY>,
|
||||
'configuration_url': None,
|
||||
'connections': set({
|
||||
tuple(
|
||||
'mac',
|
||||
'3c:39:e7:aa:bb:cc',
|
||||
),
|
||||
}),
|
||||
'disabled_by': None,
|
||||
'entry_type': None,
|
||||
'hw_version': None,
|
||||
'id': <ANY>,
|
||||
'identifiers': set({
|
||||
tuple(
|
||||
'homewizard',
|
||||
'3c39e7aabbcc',
|
||||
),
|
||||
}),
|
||||
'is_new': False,
|
||||
'manufacturer': 'HomeWizard',
|
||||
'model': 'SDM630-wifi',
|
||||
'name': 'Device',
|
||||
'name_by_user': None,
|
||||
'serial_number': None,
|
||||
'suggested_area': None,
|
||||
'sw_version': '3.06',
|
||||
'via_device_id': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_active_power_phase_3:entity-registry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': dict({
|
||||
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||
}),
|
||||
'config_entry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'sensor.device_active_power_phase_3',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'name': None,
|
||||
'options': dict({
|
||||
'sensor': dict({
|
||||
'suggested_display_precision': 0,
|
||||
}),
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.POWER: 'power'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Active power phase 3',
|
||||
'platform': 'homewizard',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'active_power_l3_w',
|
||||
'unique_id': 'aabbccddeeff_active_power_l3_w',
|
||||
'unit_of_measurement': <UnitOfPower.WATT: 'W'>,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_active_power_phase_3:state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'power',
|
||||
'friendly_name': 'Device Active power phase 3',
|
||||
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||
'unit_of_measurement': <UnitOfPower.WATT: 'W'>,
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.device_active_power_phase_3',
|
||||
'last_changed': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': '0.0',
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_total_energy_export:device-registry]
|
||||
DeviceRegistryEntrySnapshot({
|
||||
'area_id': None,
|
||||
'config_entries': <ANY>,
|
||||
'configuration_url': None,
|
||||
'connections': set({
|
||||
tuple(
|
||||
'mac',
|
||||
'3c:39:e7:aa:bb:cc',
|
||||
),
|
||||
}),
|
||||
'disabled_by': None,
|
||||
'entry_type': None,
|
||||
'hw_version': None,
|
||||
'id': <ANY>,
|
||||
'identifiers': set({
|
||||
tuple(
|
||||
'homewizard',
|
||||
'3c39e7aabbcc',
|
||||
),
|
||||
}),
|
||||
'is_new': False,
|
||||
'manufacturer': 'HomeWizard',
|
||||
'model': 'SDM630-wifi',
|
||||
'name': 'Device',
|
||||
'name_by_user': None,
|
||||
'serial_number': None,
|
||||
'suggested_area': None,
|
||||
'sw_version': '3.06',
|
||||
'via_device_id': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_total_energy_export:entity-registry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': dict({
|
||||
'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>,
|
||||
}),
|
||||
'config_entry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'sensor.device_total_energy_export',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'name': None,
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.ENERGY: 'energy'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Total energy export',
|
||||
'platform': 'homewizard',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'total_energy_export_kwh',
|
||||
'unique_id': 'aabbccddeeff_total_power_export_kwh',
|
||||
'unit_of_measurement': <UnitOfEnergy.KILO_WATT_HOUR: 'kWh'>,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_total_energy_export:state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'energy',
|
||||
'friendly_name': 'Device Total energy export',
|
||||
'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>,
|
||||
'unit_of_measurement': <UnitOfEnergy.KILO_WATT_HOUR: 'kWh'>,
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.device_total_energy_export',
|
||||
'last_changed': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': '0.523',
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_total_energy_export_tariff_1:device-registry]
|
||||
DeviceRegistryEntrySnapshot({
|
||||
'area_id': None,
|
||||
'config_entries': <ANY>,
|
||||
'configuration_url': None,
|
||||
'connections': set({
|
||||
tuple(
|
||||
'mac',
|
||||
'3c:39:e7:aa:bb:cc',
|
||||
),
|
||||
}),
|
||||
'disabled_by': None,
|
||||
'entry_type': None,
|
||||
'hw_version': None,
|
||||
'id': <ANY>,
|
||||
'identifiers': set({
|
||||
tuple(
|
||||
'homewizard',
|
||||
'3c39e7aabbcc',
|
||||
),
|
||||
}),
|
||||
'is_new': False,
|
||||
'manufacturer': 'HomeWizard',
|
||||
'model': 'SDM630-wifi',
|
||||
'name': 'Device',
|
||||
'name_by_user': None,
|
||||
'serial_number': None,
|
||||
'suggested_area': None,
|
||||
'sw_version': '3.06',
|
||||
'via_device_id': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_total_energy_export_tariff_1:entity-registry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': dict({
|
||||
'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>,
|
||||
}),
|
||||
'config_entry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'sensor.device_total_energy_export_tariff_1',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'name': None,
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.ENERGY: 'energy'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Total energy export tariff 1',
|
||||
'platform': 'homewizard',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'total_energy_export_t1_kwh',
|
||||
'unique_id': 'aabbccddeeff_total_power_export_t1_kwh',
|
||||
'unit_of_measurement': <UnitOfEnergy.KILO_WATT_HOUR: 'kWh'>,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_total_energy_export_tariff_1:state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'energy',
|
||||
'friendly_name': 'Device Total energy export tariff 1',
|
||||
'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>,
|
||||
'unit_of_measurement': <UnitOfEnergy.KILO_WATT_HOUR: 'kWh'>,
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.device_total_energy_export_tariff_1',
|
||||
'last_changed': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': '0.523',
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_total_energy_import:device-registry]
|
||||
DeviceRegistryEntrySnapshot({
|
||||
'area_id': None,
|
||||
'config_entries': <ANY>,
|
||||
'configuration_url': None,
|
||||
'connections': set({
|
||||
tuple(
|
||||
'mac',
|
||||
'3c:39:e7:aa:bb:cc',
|
||||
),
|
||||
}),
|
||||
'disabled_by': None,
|
||||
'entry_type': None,
|
||||
'hw_version': None,
|
||||
'id': <ANY>,
|
||||
'identifiers': set({
|
||||
tuple(
|
||||
'homewizard',
|
||||
'3c39e7aabbcc',
|
||||
),
|
||||
}),
|
||||
'is_new': False,
|
||||
'manufacturer': 'HomeWizard',
|
||||
'model': 'SDM630-wifi',
|
||||
'name': 'Device',
|
||||
'name_by_user': None,
|
||||
'serial_number': None,
|
||||
'suggested_area': None,
|
||||
'sw_version': '3.06',
|
||||
'via_device_id': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_total_energy_import:entity-registry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': dict({
|
||||
'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>,
|
||||
}),
|
||||
'config_entry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'sensor.device_total_energy_import',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'name': None,
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.ENERGY: 'energy'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Total energy import',
|
||||
'platform': 'homewizard',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'total_energy_import_kwh',
|
||||
'unique_id': 'aabbccddeeff_total_power_import_kwh',
|
||||
'unit_of_measurement': <UnitOfEnergy.KILO_WATT_HOUR: 'kWh'>,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_total_energy_import:state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'energy',
|
||||
'friendly_name': 'Device Total energy import',
|
||||
'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>,
|
||||
'unit_of_measurement': <UnitOfEnergy.KILO_WATT_HOUR: 'kWh'>,
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.device_total_energy_import',
|
||||
'last_changed': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': '0.101',
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_total_energy_import_tariff_1:device-registry]
|
||||
DeviceRegistryEntrySnapshot({
|
||||
'area_id': None,
|
||||
'config_entries': <ANY>,
|
||||
'configuration_url': None,
|
||||
'connections': set({
|
||||
tuple(
|
||||
'mac',
|
||||
'3c:39:e7:aa:bb:cc',
|
||||
),
|
||||
}),
|
||||
'disabled_by': None,
|
||||
'entry_type': None,
|
||||
'hw_version': None,
|
||||
'id': <ANY>,
|
||||
'identifiers': set({
|
||||
tuple(
|
||||
'homewizard',
|
||||
'3c39e7aabbcc',
|
||||
),
|
||||
}),
|
||||
'is_new': False,
|
||||
'manufacturer': 'HomeWizard',
|
||||
'model': 'SDM630-wifi',
|
||||
'name': 'Device',
|
||||
'name_by_user': None,
|
||||
'serial_number': None,
|
||||
'suggested_area': None,
|
||||
'sw_version': '3.06',
|
||||
'via_device_id': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_total_energy_import_tariff_1:entity-registry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': dict({
|
||||
'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>,
|
||||
}),
|
||||
'config_entry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'sensor.device_total_energy_import_tariff_1',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'name': None,
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.ENERGY: 'energy'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Total energy import tariff 1',
|
||||
'platform': 'homewizard',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'total_energy_import_t1_kwh',
|
||||
'unique_id': 'aabbccddeeff_total_power_import_t1_kwh',
|
||||
'unit_of_measurement': <UnitOfEnergy.KILO_WATT_HOUR: 'kWh'>,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_total_energy_import_tariff_1:state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'energy',
|
||||
'friendly_name': 'Device Total energy import tariff 1',
|
||||
'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>,
|
||||
'unit_of_measurement': <UnitOfEnergy.KILO_WATT_HOUR: 'kWh'>,
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.device_total_energy_import_tariff_1',
|
||||
'last_changed': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': '0.101',
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_wi_fi_ssid:device-registry]
|
||||
DeviceRegistryEntrySnapshot({
|
||||
'area_id': None,
|
||||
'config_entries': <ANY>,
|
||||
'configuration_url': None,
|
||||
'connections': set({
|
||||
tuple(
|
||||
'mac',
|
||||
'3c:39:e7:aa:bb:cc',
|
||||
),
|
||||
}),
|
||||
'disabled_by': None,
|
||||
'entry_type': None,
|
||||
'hw_version': None,
|
||||
'id': <ANY>,
|
||||
'identifiers': set({
|
||||
tuple(
|
||||
'homewizard',
|
||||
'3c39e7aabbcc',
|
||||
),
|
||||
}),
|
||||
'is_new': False,
|
||||
'manufacturer': 'HomeWizard',
|
||||
'model': 'SDM630-wifi',
|
||||
'name': 'Device',
|
||||
'name_by_user': None,
|
||||
'serial_number': None,
|
||||
'suggested_area': None,
|
||||
'sw_version': '3.06',
|
||||
'via_device_id': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_wi_fi_ssid:entity-registry]
|
||||
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': <EntityCategory.DIAGNOSTIC: 'diagnostic'>,
|
||||
'entity_id': 'sensor.device_wi_fi_ssid',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'name': None,
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': None,
|
||||
'original_icon': 'mdi:wifi',
|
||||
'original_name': 'Wi-Fi SSID',
|
||||
'platform': 'homewizard',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'wifi_ssid',
|
||||
'unique_id': 'aabbccddeeff_wifi_ssid',
|
||||
'unit_of_measurement': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_wi_fi_ssid:state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'friendly_name': 'Device Wi-Fi SSID',
|
||||
'icon': 'mdi:wifi',
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.device_wi_fi_ssid',
|
||||
'last_changed': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': 'My Wi-Fi',
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_wi_fi_strength:device-registry]
|
||||
DeviceRegistryEntrySnapshot({
|
||||
'area_id': None,
|
||||
'config_entries': <ANY>,
|
||||
'configuration_url': None,
|
||||
'connections': set({
|
||||
tuple(
|
||||
'mac',
|
||||
'3c:39:e7:aa:bb:cc',
|
||||
),
|
||||
}),
|
||||
'disabled_by': None,
|
||||
'entry_type': None,
|
||||
'hw_version': None,
|
||||
'id': <ANY>,
|
||||
'identifiers': set({
|
||||
tuple(
|
||||
'homewizard',
|
||||
'3c39e7aabbcc',
|
||||
),
|
||||
}),
|
||||
'is_new': False,
|
||||
'manufacturer': 'HomeWizard',
|
||||
'model': 'SDM630-wifi',
|
||||
'name': 'Device',
|
||||
'name_by_user': None,
|
||||
'serial_number': None,
|
||||
'suggested_area': None,
|
||||
'sw_version': '3.06',
|
||||
'via_device_id': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_wi_fi_strength:entity-registry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': dict({
|
||||
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||
}),
|
||||
'config_entry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': <EntityCategory.DIAGNOSTIC: 'diagnostic'>,
|
||||
'entity_id': 'sensor.device_wi_fi_strength',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'name': None,
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': None,
|
||||
'original_icon': 'mdi:wifi',
|
||||
'original_name': 'Wi-Fi strength',
|
||||
'platform': 'homewizard',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'wifi_strength',
|
||||
'unique_id': 'aabbccddeeff_wifi_strength',
|
||||
'unit_of_measurement': '%',
|
||||
})
|
||||
# ---
|
||||
# name: test_sensors[SDM630-entity_ids3][sensor.device_wi_fi_strength:state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'friendly_name': 'Device Wi-Fi strength',
|
||||
'icon': 'mdi:wifi',
|
||||
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||
'unit_of_measurement': '%',
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.device_wi_fi_strength',
|
||||
'last_changed': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': '92',
|
||||
})
|
||||
# ---
|
||||
|
|
|
@ -17,7 +17,7 @@ pytestmark = [
|
|||
]
|
||||
|
||||
|
||||
@pytest.mark.parametrize("device_fixture", ["HWE-WTR", "SDM230"])
|
||||
@pytest.mark.parametrize("device_fixture", ["HWE-WTR", "SDM230", "SDM630"])
|
||||
async def test_identify_button_entity_not_loaded_when_not_available(
|
||||
hass: HomeAssistant,
|
||||
) -> None:
|
||||
|
|
|
@ -17,6 +17,7 @@ from tests.typing import ClientSessionGenerator
|
|||
"HWE-SKT",
|
||||
"HWE-WTR",
|
||||
"SDM230",
|
||||
"SDM630",
|
||||
],
|
||||
)
|
||||
async def test_diagnostics(
|
||||
|
|
|
@ -91,7 +91,7 @@ async def test_number_entities(
|
|||
)
|
||||
|
||||
|
||||
@pytest.mark.parametrize("device_fixture", ["HWE-WTR", "SDM230"])
|
||||
@pytest.mark.parametrize("device_fixture", ["HWE-WTR", "SDM230", "SDM630"])
|
||||
async def test_entities_not_created_for_device(hass: HomeAssistant) -> None:
|
||||
"""Does not load button when device has no support for it."""
|
||||
assert not hass.states.get("number.device_status_light_brightness")
|
||||
|
|
|
@ -91,6 +91,21 @@ pytestmark = [
|
|||
"sensor.device_active_power_phase_1",
|
||||
],
|
||||
),
|
||||
(
|
||||
"SDM630",
|
||||
[
|
||||
"sensor.device_wi_fi_ssid",
|
||||
"sensor.device_wi_fi_strength",
|
||||
"sensor.device_total_energy_import",
|
||||
"sensor.device_total_energy_import_tariff_1",
|
||||
"sensor.device_total_energy_export",
|
||||
"sensor.device_total_energy_export_tariff_1",
|
||||
"sensor.device_active_power",
|
||||
"sensor.device_active_power_phase_1",
|
||||
"sensor.device_active_power_phase_2",
|
||||
"sensor.device_active_power_phase_3",
|
||||
],
|
||||
),
|
||||
],
|
||||
)
|
||||
async def test_sensors(
|
||||
|
@ -151,6 +166,12 @@ async def test_sensors(
|
|||
"sensor.device_wi_fi_strength",
|
||||
],
|
||||
),
|
||||
(
|
||||
"SDM630",
|
||||
[
|
||||
"sensor.device_wi_fi_strength",
|
||||
],
|
||||
),
|
||||
],
|
||||
)
|
||||
async def test_disabled_by_default_sensors(
|
||||
|
@ -266,6 +287,42 @@ async def test_sensors_unreachable(
|
|||
"sensor.device_voltage_swells_detected_phase_3",
|
||||
],
|
||||
),
|
||||
(
|
||||
"SDM630",
|
||||
[
|
||||
"sensor.device_active_average_demand",
|
||||
"sensor.device_active_current_phase_1",
|
||||
"sensor.device_active_current_phase_2",
|
||||
"sensor.device_active_current_phase_3",
|
||||
"sensor.device_active_frequency",
|
||||
"sensor.device_active_tariff",
|
||||
"sensor.device_active_voltage_phase_1",
|
||||
"sensor.device_active_voltage_phase_2",
|
||||
"sensor.device_active_voltage_phase_3",
|
||||
"sensor.device_active_water_usage",
|
||||
"sensor.device_dsmr_version",
|
||||
"sensor.device_gas_meter_identifier",
|
||||
"sensor.device_long_power_failures_detected",
|
||||
"sensor.device_peak_demand_current_month",
|
||||
"sensor.device_power_failures_detected",
|
||||
"sensor.device_smart_meter_identifier",
|
||||
"sensor.device_smart_meter_model",
|
||||
"sensor.device_total_energy_export_tariff_2",
|
||||
"sensor.device_total_energy_export_tariff_3",
|
||||
"sensor.device_total_energy_export_tariff_4",
|
||||
"sensor.device_total_energy_import_tariff_2",
|
||||
"sensor.device_total_energy_import_tariff_3",
|
||||
"sensor.device_total_energy_import_tariff_4",
|
||||
"sensor.device_total_gas",
|
||||
"sensor.device_total_water_usage",
|
||||
"sensor.device_voltage_sags_detected_phase_1",
|
||||
"sensor.device_voltage_sags_detected_phase_2",
|
||||
"sensor.device_voltage_sags_detected_phase_3",
|
||||
"sensor.device_voltage_swells_detected_phase_1",
|
||||
"sensor.device_voltage_swells_detected_phase_2",
|
||||
"sensor.device_voltage_swells_detected_phase_3",
|
||||
],
|
||||
),
|
||||
],
|
||||
)
|
||||
async def test_entities_not_created_for_device(
|
||||
|
|
|
@ -45,6 +45,14 @@ pytestmark = [
|
|||
"switch.device_cloud_connection",
|
||||
],
|
||||
),
|
||||
(
|
||||
"SDM630",
|
||||
[
|
||||
"switch.device",
|
||||
"switch.device_switch_lock",
|
||||
"switch.device_cloud_connection",
|
||||
],
|
||||
),
|
||||
],
|
||||
)
|
||||
async def test_entities_not_created_for_device(
|
||||
|
|
Loading…
Reference in New Issue