Mock the SMA client in the diagnostics test

The test set the config entry up unmocked, so it reached the configured
host and snapshotted a failed setup. Mocking the client makes the entry
load and the diagnostics cover the real output. Time is frozen and the
context ids excluded to keep the snapshot deterministic.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PRmnu5HiXQUaHcHnNCvBSU
This commit is contained in:
Claude
2026-08-22 16:09:04 +00:00
parent f77bc02f87
commit e7c91db55c
2 changed files with 744 additions and 1 deletions
@@ -2,6 +2,746 @@
# name: test_get_config_entry_diagnostics
dict({
'entities': dict({
'sensor.sma_device_name_battery_capacity_a': None,
'sensor.sma_device_name_battery_capacity_b': None,
'sensor.sma_device_name_battery_capacity_c': None,
'sensor.sma_device_name_battery_capacity_total': dict({
'attributes': dict({
'friendly_name': 'SMA Device Name Battery Capacity Total',
'unit_of_measurement': '%',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_battery_capacity_total',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_battery_charge_a': None,
'sensor.sma_device_name_battery_charge_b': None,
'sensor.sma_device_name_battery_charge_c': None,
'sensor.sma_device_name_battery_charge_total': dict({
'attributes': dict({
'device_class': 'energy',
'friendly_name': 'SMA Device Name Battery Charge Total',
'state_class': 'total_increasing',
'unit_of_measurement': 'kWh',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_battery_charge_total',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_battery_charging_voltage_a': None,
'sensor.sma_device_name_battery_charging_voltage_b': None,
'sensor.sma_device_name_battery_charging_voltage_c': None,
'sensor.sma_device_name_battery_current_a': dict({
'attributes': dict({
'device_class': 'current',
'friendly_name': 'SMA Device Name Battery Current A',
'state_class': 'measurement',
'unit_of_measurement': 'A',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_battery_current_a',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_battery_current_b': dict({
'attributes': dict({
'device_class': 'current',
'friendly_name': 'SMA Device Name Battery Current B',
'state_class': 'measurement',
'unit_of_measurement': 'A',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_battery_current_b',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_battery_current_c': dict({
'attributes': dict({
'device_class': 'current',
'friendly_name': 'SMA Device Name Battery Current C',
'state_class': 'measurement',
'unit_of_measurement': 'A',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_battery_current_c',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_battery_discharge_a': None,
'sensor.sma_device_name_battery_discharge_b': None,
'sensor.sma_device_name_battery_discharge_c': None,
'sensor.sma_device_name_battery_discharge_total': dict({
'attributes': dict({
'device_class': 'energy',
'friendly_name': 'SMA Device Name Battery Discharge Total',
'state_class': 'total_increasing',
'unit_of_measurement': 'kWh',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_battery_discharge_total',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_battery_power_charge_a': None,
'sensor.sma_device_name_battery_power_charge_b': None,
'sensor.sma_device_name_battery_power_charge_c': None,
'sensor.sma_device_name_battery_power_charge_total': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name Battery Power Charge Total',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_battery_power_charge_total',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_battery_power_discharge_a': None,
'sensor.sma_device_name_battery_power_discharge_b': None,
'sensor.sma_device_name_battery_power_discharge_c': None,
'sensor.sma_device_name_battery_power_discharge_total': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name Battery Power Discharge Total',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_battery_power_discharge_total',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_battery_soc_a': None,
'sensor.sma_device_name_battery_soc_b': None,
'sensor.sma_device_name_battery_soc_c': None,
'sensor.sma_device_name_battery_soc_total': dict({
'attributes': dict({
'device_class': 'battery',
'friendly_name': 'SMA Device Name Battery SOC Total',
'state_class': 'measurement',
'unit_of_measurement': '%',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_battery_soc_total',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_battery_status_operating_mode': dict({
'attributes': dict({
'friendly_name': 'SMA Device Name Battery Status Operating Mode',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_battery_status_operating_mode',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_battery_temp_a': dict({
'attributes': dict({
'device_class': 'temperature',
'friendly_name': 'SMA Device Name Battery Temp A',
'state_class': 'measurement',
'unit_of_measurement': '°C',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_battery_temp_a',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_battery_temp_b': dict({
'attributes': dict({
'device_class': 'temperature',
'friendly_name': 'SMA Device Name Battery Temp B',
'state_class': 'measurement',
'unit_of_measurement': '°C',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_battery_temp_b',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_battery_temp_c': dict({
'attributes': dict({
'device_class': 'temperature',
'friendly_name': 'SMA Device Name Battery Temp C',
'state_class': 'measurement',
'unit_of_measurement': '°C',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_battery_temp_c',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_battery_voltage_a': None,
'sensor.sma_device_name_battery_voltage_b': None,
'sensor.sma_device_name_battery_voltage_c': None,
'sensor.sma_device_name_current_l1': None,
'sensor.sma_device_name_current_l2': None,
'sensor.sma_device_name_current_l3': None,
'sensor.sma_device_name_current_total': dict({
'attributes': dict({
'device_class': 'current',
'friendly_name': 'SMA Device Name Current Total',
'state_class': 'measurement',
'unit_of_measurement': 'A',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_current_total',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_daily_yield': dict({
'attributes': dict({
'device_class': 'energy',
'friendly_name': 'SMA Device Name Daily Yield',
'state_class': 'total_increasing',
'unit_of_measurement': 'Wh',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_daily_yield',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_frequency': None,
'sensor.sma_device_name_grid_apparent_power': None,
'sensor.sma_device_name_grid_apparent_power_l1': None,
'sensor.sma_device_name_grid_apparent_power_l2': None,
'sensor.sma_device_name_grid_apparent_power_l3': None,
'sensor.sma_device_name_grid_connection_status': None,
'sensor.sma_device_name_grid_power': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name Grid Power',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_grid_power',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_grid_power_factor': None,
'sensor.sma_device_name_grid_power_factor_excitation': None,
'sensor.sma_device_name_grid_reactive_power': None,
'sensor.sma_device_name_grid_reactive_power_l1': None,
'sensor.sma_device_name_grid_reactive_power_l2': None,
'sensor.sma_device_name_grid_reactive_power_l3': None,
'sensor.sma_device_name_grid_relay_status': None,
'sensor.sma_device_name_insulation_residual_current': None,
'sensor.sma_device_name_inverter_condition': None,
'sensor.sma_device_name_inverter_power_limit': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name Inverter Power Limit',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_inverter_power_limit',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_inverter_system_init': None,
'sensor.sma_device_name_metering_active_power_draw_l1': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name Metering Active Power Draw L1',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_active_power_draw_l1',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_active_power_draw_l2': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name Metering Active Power Draw L2',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_active_power_draw_l2',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_active_power_draw_l3': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name Metering Active Power Draw L3',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_active_power_draw_l3',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_active_power_feed_l1': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name Metering Active Power Feed L1',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_active_power_feed_l1',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_active_power_feed_l2': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name Metering Active Power Feed L2',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_active_power_feed_l2',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_active_power_feed_l3': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name Metering Active Power Feed L3',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_active_power_feed_l3',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_current_consumption': None,
'sensor.sma_device_name_metering_current_l1': dict({
'attributes': dict({
'device_class': 'current',
'friendly_name': 'SMA Device Name Metering Current L1',
'state_class': 'measurement',
'unit_of_measurement': 'A',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_current_l1',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_current_l2': dict({
'attributes': dict({
'device_class': 'current',
'friendly_name': 'SMA Device Name Metering Current L2',
'state_class': 'measurement',
'unit_of_measurement': 'A',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_current_l2',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_current_l3': dict({
'attributes': dict({
'device_class': 'current',
'friendly_name': 'SMA Device Name Metering Current L3',
'state_class': 'measurement',
'unit_of_measurement': 'A',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_current_l3',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_frequency': dict({
'attributes': dict({
'device_class': 'frequency',
'friendly_name': 'SMA Device Name Metering Frequency',
'state_class': 'measurement',
'unit_of_measurement': 'Hz',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_frequency',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_power_absorbed': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name Metering Power Absorbed',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_power_absorbed',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_power_supplied': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name Metering Power Supplied',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_power_supplied',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_total_absorbed': dict({
'attributes': dict({
'device_class': 'energy',
'friendly_name': 'SMA Device Name Metering Total Absorbed',
'state_class': 'total_increasing',
'unit_of_measurement': 'kWh',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_total_absorbed',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_total_consumption': None,
'sensor.sma_device_name_metering_total_yield': dict({
'attributes': dict({
'device_class': 'energy',
'friendly_name': 'SMA Device Name Metering Total Yield',
'state_class': 'total_increasing',
'unit_of_measurement': 'kWh',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_metering_total_yield',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_metering_voltage_l1': None,
'sensor.sma_device_name_metering_voltage_l2': None,
'sensor.sma_device_name_metering_voltage_l3': None,
'sensor.sma_device_name_operating_status': None,
'sensor.sma_device_name_operating_status_general': None,
'sensor.sma_device_name_optimizer_current': None,
'sensor.sma_device_name_optimizer_power': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name Optimizer Power',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_optimizer_power',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_optimizer_temp': None,
'sensor.sma_device_name_optimizer_voltage': None,
'sensor.sma_device_name_power_l1': None,
'sensor.sma_device_name_power_l2': None,
'sensor.sma_device_name_power_l3': None,
'sensor.sma_device_name_pv_current_a': dict({
'attributes': dict({
'device_class': 'current',
'friendly_name': 'SMA Device Name PV Current A',
'state_class': 'measurement',
'unit_of_measurement': 'A',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_pv_current_a',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_pv_current_b': dict({
'attributes': dict({
'device_class': 'current',
'friendly_name': 'SMA Device Name PV Current B',
'state_class': 'measurement',
'unit_of_measurement': 'A',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_pv_current_b',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_pv_current_c': None,
'sensor.sma_device_name_pv_gen_meter': dict({
'attributes': dict({
'device_class': 'energy',
'friendly_name': 'SMA Device Name PV Gen Meter',
'state_class': 'total_increasing',
'unit_of_measurement': 'kWh',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_pv_gen_meter',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_pv_isolation_resistance': None,
'sensor.sma_device_name_pv_power': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name PV Power',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_pv_power',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_pv_power_a': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name PV Power A',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_pv_power_a',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_pv_power_b': dict({
'attributes': dict({
'device_class': 'power',
'friendly_name': 'SMA Device Name PV Power B',
'state_class': 'measurement',
'unit_of_measurement': 'W',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_pv_power_b',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_pv_power_c': None,
'sensor.sma_device_name_pv_voltage_a': None,
'sensor.sma_device_name_pv_voltage_b': None,
'sensor.sma_device_name_pv_voltage_c': None,
'sensor.sma_device_name_secure_power_supply_current': None,
'sensor.sma_device_name_secure_power_supply_power': None,
'sensor.sma_device_name_secure_power_supply_voltage': None,
'sensor.sma_device_name_status': dict({
'attributes': dict({
'friendly_name': 'SMA Device Name Status',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_status',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_total_yield': dict({
'attributes': dict({
'device_class': 'energy',
'friendly_name': 'SMA Device Name Total Yield',
'state_class': 'total_increasing',
'unit_of_measurement': 'kWh',
}),
'context': dict({
'parent_id': None,
'user_id': None,
}),
'entity_id': 'sensor.sma_device_name_total_yield',
'last_changed': '2025-01-01T00:00:00+00:00',
'last_reported': '2025-01-01T00:00:00+00:00',
'last_updated': '2025-01-01T00:00:00+00:00',
'state': 'unknown',
}),
'sensor.sma_device_name_voltage_l1': None,
'sensor.sma_device_name_voltage_l2': None,
'sensor.sma_device_name_voltage_l3': None,
}),
'entry': dict({
'data': dict({
+4 -1
View File
@@ -1,5 +1,6 @@
"""Test the SMA diagnostics."""
import pytest
from syrupy.assertion import SnapshotAssertion
from syrupy.filters import props
@@ -10,6 +11,8 @@ from tests.components.diagnostics import get_diagnostics_for_config_entry
from tests.typing import ClientSessionGenerator
@pytest.mark.freeze_time("2025-01-01 00:00:00+00:00")
@pytest.mark.usefixtures("mock_sma_client")
async def test_get_config_entry_diagnostics(
hass: HomeAssistant,
snapshot: SnapshotAssertion,
@@ -25,5 +28,5 @@ async def test_get_config_entry_diagnostics(
hass, hass_client, mock_config_entry
)
assert diagnostics == snapshot(
exclude=props("created_at", "modified_at", "entry_id")
exclude=props("created_at", "modified_at", "entry_id", "id")
)