Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions tests/v1/__snapshots__/test_v1_combined_models.ambr

Large diffs are not rendered by default.

22 changes: 22 additions & 0 deletions tests/v1/__snapshots__/test_v1_device.ambr
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# serializer version: 1
# name: test_device[HWE-KWH1-fixtures3]
Device(model_name='Wi-Fi kWh Meter 1-phase', id='appliance/energymeter/3c39e7aabbcc', product_name='kWh Meter', product_type='HWE-KWH1', serial='3c39e7aabbcc', api_version=<AwesomeVersion SemVer '1.0.0'>, firmware_version='2.11')
# ---
# name: test_device[HWE-KWH3-fixtures4]
Device(model_name='Wi-Fi kWh Meter 3-phase', id='appliance/energymeter/3c39e7aabbcc', product_name='kWh Meter 3-phase', product_type='HWE-KWH3', serial='3c39e7aabbcc', api_version=<AwesomeVersion SemVer '1.0.0'>, firmware_version='2.11')
# ---
# name: test_device[HWE-P1-fixtures0]
Device(model_name='Wi-Fi P1 Meter', id='appliance/p1dongle/3c39e7aabbcc', product_name='P1 Meter', product_type='HWE-P1', serial='3c39e7aabbcc', api_version=<AwesomeVersion SemVer '1.0.0'>, firmware_version='2.11')
# ---
# name: test_device[HWE-SKT-fixtures1]
Device(model_name='Wi-Fi Energy Socket', id='appliance/energysocket/3c39e7aabbcc', product_name='Energy Socket', product_type='HWE-SKT', serial='3c39e7aabbcc', api_version=<AwesomeVersion SemVer '1.0.0'>, firmware_version='2.11')
# ---
# name: test_device[HWE-WTR-fixtures2]
Device(model_name='Wi-Fi Watermeter', id='appliance/watermeter/3c39e7aabbcc', product_name='Water Meter', product_type='HWE-WTR', serial='3c39e7aabbcc', api_version=<AwesomeVersion SemVer '1.0.0'>, firmware_version='2.11')
# ---
# name: test_device[SDM230-wifi-fixtures5]
Device(model_name='Wi-Fi kWh Meter 1-phase', id='appliance/energymeter/3c39e7aabbcc', product_name='kWh Meter', product_type='SDM230-wifi', serial='3c39e7aabbcc', api_version=<AwesomeVersion SemVer '1.0.0'>, firmware_version='2.11')
# ---
# name: test_device[SDM630-wifi-fixtures6]
Device(model_name='Wi-Fi kWh Meter 3-phase', id='appliance/energymeter/3c39e7aabbcc', product_name='kWh Meter 3-phase', product_type='SDM630-wifi', serial='3c39e7aabbcc', api_version=<AwesomeVersion SemVer '1.0.0'>, firmware_version='2.11')
# ---
19 changes: 19 additions & 0 deletions tests/v1/__snapshots__/test_v1_measurement.ambr
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# serializer version: 1
# name: test_measurement[HWE-KWH1-fixtures1]
Measurement(wifi_ssid=None, wifi_strength=None, energy_import_kwh=123.456, energy_import_t1_kwh=None, energy_import_t2_kwh=None, energy_import_t3_kwh=None, energy_import_t4_kwh=None, energy_export_kwh=78.91, energy_export_t1_kwh=None, energy_export_t2_kwh=None, energy_export_t3_kwh=None, energy_export_t4_kwh=None, power_w=123.0, power_l1_w=None, power_l2_w=None, power_l3_w=None, voltage_v=230.0, voltage_l1_v=None, voltage_l2_v=None, voltage_l3_v=None, current_a=1.5, current_l1_a=None, current_l2_a=None, current_l3_a=None, apparent_power_va=345.0, apparent_power_l1_va=None, apparent_power_l2_va=None, apparent_power_l3_va=None, reactive_power_var=67.0, reactive_power_l1_var=None, reactive_power_l2_var=None, reactive_power_l3_var=None, power_factor=0.95, power_factor_l1=None, power_factor_l2=None, power_factor_l3=None, frequency_hz=50.0, timestamp=None, protocol_version=None, meter_model=None, unique_id=None, tariff=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, any_power_fail_count=None, long_power_fail_count=None, average_power_15m_w=None, monthly_power_peak_w=None, monthly_power_peak_timestamp=None, external_devices=None, active_liter_lpm=None, total_liter_m3=None, cycles=None, state_of_charge_pct=None)
# ---
# name: test_measurement[HWE-KWH3-fixtures2]
Measurement(wifi_ssid=None, wifi_strength=None, energy_import_kwh=123.456, energy_import_t1_kwh=None, energy_import_t2_kwh=None, energy_import_t3_kwh=None, energy_import_t4_kwh=None, energy_export_kwh=78.91, energy_export_t1_kwh=None, energy_export_t2_kwh=None, energy_export_t3_kwh=None, energy_export_t4_kwh=None, power_w=123.0, power_l1_w=50.0, power_l2_w=40.0, power_l3_w=-30.0, voltage_v=None, voltage_l1_v=230.0, voltage_l2_v=230.0, voltage_l3_v=230.0, current_a=1.5, current_l1_a=-0.5, current_l2_a=0.8, current_l3_a=1.2, apparent_power_va=345.0, apparent_power_l1_va=115.0, apparent_power_l2_va=120.0, apparent_power_l3_va=110.0, reactive_power_var=67.0, reactive_power_l1_var=-20.0, reactive_power_l2_var=30.0, reactive_power_l3_var=57.0, power_factor=None, power_factor_l1=0.95, power_factor_l2=0.9, power_factor_l3=0.85, frequency_hz=50.0, timestamp=None, protocol_version=None, meter_model=None, unique_id=None, tariff=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, any_power_fail_count=None, long_power_fail_count=None, average_power_15m_w=None, monthly_power_peak_w=None, monthly_power_peak_timestamp=None, external_devices=None, active_liter_lpm=None, total_liter_m3=None, cycles=None, state_of_charge_pct=None)
# ---
# name: test_measurement[HWE-P1-fixtures0]
Measurement(wifi_ssid=None, wifi_strength=None, energy_import_kwh=None, energy_import_t1_kwh=10830.511, energy_import_t2_kwh=2948.827, energy_import_t3_kwh=None, energy_import_t4_kwh=None, energy_export_kwh=None, energy_export_t1_kwh=1285.951, energy_export_t2_kwh=2876.51, energy_export_t3_kwh=None, energy_export_t4_kwh=None, power_w=-678.0, power_l1_w=-676.0, power_l2_w=None, power_l3_w=None, voltage_v=None, voltage_l1_v=None, voltage_l2_v=None, voltage_l3_v=None, current_a=None, current_l1_a=None, current_l2_a=None, current_l3_a=None, apparent_power_va=None, apparent_power_l1_va=None, apparent_power_l2_va=None, apparent_power_l3_va=None, reactive_power_var=None, reactive_power_l1_var=None, reactive_power_l2_var=None, reactive_power_l3_var=None, power_factor=None, power_factor_l1=None, power_factor_l2=None, power_factor_l3=None, frequency_hz=None, timestamp=datetime.datetime(2024, 6, 28, 14, 12, 34), protocol_version=50, meter_model='ISKRA 2M550T-101', unique_id='Never Gonna Give You Up', tariff=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, any_power_fail_count=None, long_power_fail_count=None, average_power_15m_w=None, monthly_power_peak_w=None, monthly_power_peak_timestamp=None, external_devices=None, active_liter_lpm=None, total_liter_m3=None, cycles=None, state_of_charge_pct=None)
# ---
# name: test_measurement[HWE-P1-fixtures0].1
Measurement(wifi_ssid=None, wifi_strength=None, energy_import_kwh=13779.338, energy_import_t1_kwh=10830.511, energy_import_t2_kwh=2948.827, energy_import_t3_kwh=None, energy_import_t4_kwh=None, energy_export_kwh=0.0, energy_export_t1_kwh=0.0, energy_export_t2_kwh=0.0, energy_export_t3_kwh=None, energy_export_t4_kwh=None, power_w=-543.0, power_l1_w=-676.0, power_l2_w=133.0, power_l3_w=0.0, voltage_v=None, voltage_l1_v=None, voltage_l2_v=None, voltage_l3_v=None, current_a=6.0, current_l1_a=-4.0, current_l2_a=2.0, current_l3_a=0.0, apparent_power_va=None, apparent_power_l1_va=None, apparent_power_l2_va=None, apparent_power_l3_va=None, reactive_power_var=None, reactive_power_l1_var=None, reactive_power_l2_var=None, reactive_power_l3_var=None, power_factor=None, power_factor_l1=None, power_factor_l2=None, power_factor_l3=None, frequency_hz=None, timestamp=datetime.datetime(2024, 6, 28, 14, 12, 34), protocol_version=50, meter_model='ISKRA 2M550T-101', unique_id='Never Gonna Let You Down', tariff=2, voltage_sag_l1_count=1, voltage_sag_l2_count=1, voltage_sag_l3_count=0, voltage_swell_l1_count=0, voltage_swell_l2_count=0, voltage_swell_l3_count=0, any_power_fail_count=4, long_power_fail_count=5, average_power_15m_w=123.0, monthly_power_peak_w=1111.0, monthly_power_peak_timestamp=datetime.datetime(2024, 6, 4, 10, 11, 22), external_devices={'gas_meter_Never gonna run around': ExternalDevice(unique_id='Never gonna run around', type=<DeviceType.GAS_METER: 'gas_meter'>, value=2569.646, unit='m3', timestamp=datetime.datetime(2024, 6, 28, 14, 0)), 'water_meter_and desert you': ExternalDevice(unique_id='and desert you', type=<DeviceType.WATER_METER: 'water_meter'>, value=123.456, unit='m3', timestamp=datetime.datetime(2024, 6, 28, 14, 5))}, active_liter_lpm=None, total_liter_m3=None, cycles=None, state_of_charge_pct=None)
# ---
# name: test_measurement[HWE-P1-fixtures0].2
Measurement(wifi_ssid=None, wifi_strength=None, energy_import_kwh=None, energy_import_t1_kwh=None, energy_import_t2_kwh=None, energy_import_t3_kwh=None, energy_import_t4_kwh=None, energy_export_kwh=None, energy_export_t1_kwh=None, energy_export_t2_kwh=None, energy_export_t3_kwh=None, energy_export_t4_kwh=None, power_w=None, power_l1_w=None, power_l2_w=None, power_l3_w=None, voltage_v=None, voltage_l1_v=None, voltage_l2_v=None, voltage_l3_v=None, current_a=None, current_l1_a=None, current_l2_a=None, current_l3_a=None, apparent_power_va=None, apparent_power_l1_va=None, apparent_power_l2_va=None, apparent_power_l3_va=None, reactive_power_var=None, reactive_power_l1_var=None, reactive_power_l2_var=None, reactive_power_l3_var=None, power_factor=None, power_factor_l1=None, power_factor_l2=None, power_factor_l3=None, frequency_hz=None, timestamp=None, protocol_version=None, meter_model=None, unique_id='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', tariff=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, any_power_fail_count=None, long_power_fail_count=None, average_power_15m_w=None, monthly_power_peak_w=None, monthly_power_peak_timestamp=None, external_devices={'gas_meter_\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00': ExternalDevice(unique_id='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', type=<DeviceType.GAS_METER: 'gas_meter'>, value=111.111, unit='m3', timestamp=datetime.datetime(2024, 6, 28, 14, 0)), 'heat_meter_\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00': ExternalDevice(unique_id='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', type=<DeviceType.HEAT_METER: 'heat_meter'>, value=222.222, unit='m3', timestamp=datetime.datetime(2024, 6, 28, 14, 0)), 'warm_water_meter_\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00': ExternalDevice(unique_id='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', type=<DeviceType.WARM_WATER_METER: 'warm_water_meter'>, value=333.333, unit='m3', timestamp=datetime.datetime(2024, 6, 28, 14, 0)), 'water_meter_\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00': ExternalDevice(unique_id='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', type=<DeviceType.WATER_METER: 'water_meter'>, value=444.444, unit='m3', timestamp=datetime.datetime(2024, 6, 28, 14, 0)), 'inlet_heat_meter_\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00': ExternalDevice(unique_id='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', type=<DeviceType.INLET_HEAT_METER: 'inlet_heat_meter'>, value=555.555, unit='m3', timestamp=datetime.datetime(2024, 6, 28, 14, 0)), 'None_\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00': ExternalDevice(unique_id='\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', type=None, value=555.555, unit=',3', timestamp=datetime.datetime(2024, 6, 28, 14, 0))}, active_liter_lpm=None, total_liter_m3=None, cycles=None, state_of_charge_pct=None)
# ---
# name: test_measurement[HWE-P1-fixtures0].3
Measurement(wifi_ssid=None, wifi_strength=None, energy_import_kwh=None, energy_import_t1_kwh=None, energy_import_t2_kwh=None, energy_import_t3_kwh=None, energy_import_t4_kwh=None, energy_export_kwh=None, energy_export_t1_kwh=None, energy_export_t2_kwh=None, energy_export_t3_kwh=None, energy_export_t4_kwh=None, power_w=None, power_l1_w=None, power_l2_w=None, power_l3_w=None, voltage_v=None, voltage_l1_v=None, voltage_l2_v=None, voltage_l3_v=None, current_a=None, current_l1_a=None, current_l2_a=None, current_l3_a=None, apparent_power_va=None, apparent_power_l1_va=None, apparent_power_l2_va=None, apparent_power_l3_va=None, reactive_power_var=None, reactive_power_l1_var=None, reactive_power_l2_var=None, reactive_power_l3_var=None, power_factor=None, power_factor_l1=None, power_factor_l2=None, power_factor_l3=None, frequency_hz=None, timestamp=None, protocol_version=None, meter_model=None, unique_id=None, tariff=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, any_power_fail_count=None, long_power_fail_count=None, average_power_15m_w=None, monthly_power_peak_w=None, monthly_power_peak_timestamp=None, external_devices={'None_Never gonna run around': ExternalDevice(unique_id='Never gonna run around', type=None, value=555.555, unit=',3', timestamp=datetime.datetime(2024, 6, 28, 14, 0))}, active_liter_lpm=None, total_liter_m3=None, cycles=None, state_of_charge_pct=None)
# ---
13 changes: 13 additions & 0 deletions tests/v1/__snapshots__/test_v1_state.ambr
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# serializer version: 1
# name: test_state[HWE-SKT-fixtures0]
State(power_on=False, switch_lock=False, brightness=255)
# ---
# name: test_state[HWE-SKT-fixtures0].1
State(power_on=False, switch_lock=None, brightness=None)
# ---
# name: test_state[HWE-SKT-fixtures0].2
State(power_on=None, switch_lock=False, brightness=None)
# ---
# name: test_state[HWE-SKT-fixtures0].3
State(power_on=None, switch_lock=None, brightness=255)
# ---
62 changes: 62 additions & 0 deletions tests/v1/__snapshots__/test_v1_system.ambr
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# serializer version: 1
# name: test_system[HWE-KWH1-fixtures3]
System(wifi_strength_pct=None, wifi_ssid=None, wifi_rssi_db=None, cloud_enabled=True, uptime_s=None, status_led_brightness_pct=None, api_v1_enabled=None)
# ---
# name: test_system[HWE-KWH3-fixtures4]
System(wifi_strength_pct=None, wifi_ssid=None, wifi_rssi_db=None, cloud_enabled=True, uptime_s=None, status_led_brightness_pct=None, api_v1_enabled=None)
# ---
# name: test_system[HWE-P1-fixtures0]
System(wifi_strength_pct=None, wifi_ssid=None, wifi_rssi_db=None, cloud_enabled=True, uptime_s=None, status_led_brightness_pct=None, api_v1_enabled=None)
# ---
# name: test_system[HWE-SKT-fixtures1]
System(wifi_strength_pct=None, wifi_ssid=None, wifi_rssi_db=None, cloud_enabled=True, uptime_s=None, status_led_brightness_pct=None, api_v1_enabled=None)
# ---
# name: test_system[HWE-WTR-fixtures2]
System(wifi_strength_pct=None, wifi_ssid=None, wifi_rssi_db=None, cloud_enabled=True, uptime_s=None, status_led_brightness_pct=None, api_v1_enabled=None)
# ---
# name: test_system[SDM230-wifi-fixtures5]
System(wifi_strength_pct=None, wifi_ssid=None, wifi_rssi_db=None, cloud_enabled=True, uptime_s=None, status_led_brightness_pct=None, api_v1_enabled=None)
# ---
# name: test_system[SDM630-wifi-fixtures6]
System(wifi_strength_pct=None, wifi_ssid=None, wifi_rssi_db=None, cloud_enabled=True, uptime_s=None, status_led_brightness_pct=None, api_v1_enabled=None)
# ---
# name: test_system_update[None-100-None]
dict({
'status_led_brightness_pct': 100,
})
# ---
# name: test_system_update[None-100-True]
dict({
'api_v1_enabled': True,
'status_led_brightness_pct': 100,
})
# ---
# name: test_system_update[None-None-True]
dict({
'api_v1_enabled': True,
})
# ---
# name: test_system_update[True-100-None]
dict({
'cloud_enabled': True,
'status_led_brightness_pct': 100,
})
# ---
# name: test_system_update[True-100-True]
dict({
'api_v1_enabled': True,
'cloud_enabled': True,
'status_led_brightness_pct': 100,
})
# ---
# name: test_system_update[True-None-None]
dict({
'cloud_enabled': True,
})
# ---
# name: test_system_update[True-None-True]
dict({
'api_v1_enabled': True,
'cloud_enabled': True,
})
# ---
13 changes: 13 additions & 0 deletions tests/v1/fixtures/HWE-KWH1/measurement.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"energy_import_kwh": 123.456,
"energy_export_kwh": 78.910,
"power_w": 123,
"voltage_v": 230,
"current_a": 1.5,
"apparent_current_a": 1.6,
"reactive_current_a": 0.5,
"apparent_power_va": 345,
"reactive_power_var": 67,
"power_factor": 0.95,
"frequency_hz": 50
}
35 changes: 35 additions & 0 deletions tests/v1/fixtures/HWE-KWH3/measurement.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{
"energy_import_kwh": 123.456,
"energy_export_kwh": 78.910,
"power_w": 123,
"power_l1_w": 50,
"power_l2_w": 40,
"power_l3_w": -30,
"voltage_l1_v": 230,
"voltage_l2_v": 230,
"voltage_l3_v": 230,
"current_a": 1.5,
"current_l1_a": -0.5,
"current_l2_a": 0.8,
"current_l3_a": 1.2,
"apparent_current_a": 1.6,
"apparent_current_l1_a": 0.6,
"apparent_current_l2_a": 0.9,
"apparent_current_l3_a": 1.3,
"reactive_current_a": 0.5,
"reactive_current_l1_a": -0.2,
"reactive_current_l2_a": 0.3,
"reactive_current_l3_a": 0.4,
"apparent_power_va": 345,
"apparent_power_l1_va": 115,
"apparent_power_l2_va": 120,
"apparent_power_l3_va": 110,
"reactive_power_var": 67,
"reactive_power_l1_var": -20,
"reactive_power_l2_var": 30,
"reactive_power_l3_var": 57,
"power_factor_l1": 0.95,
"power_factor_l2": 0.90,
"power_factor_l3": 0.85,
"frequency_hz": 50
}
12 changes: 12 additions & 0 deletions tests/v1/fixtures/HWE-P1/measurement_1_phase_no_gas.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"protocol_version": 50,
"meter_model": "ISKRA 2M550T-101",
"unique_id": "4E6576657220476F6E6E61204769766520596F75205570",
"timestamp": "2024-06-28T14:12:34",
"energy_import_t1_kwh": 10830.511,
"energy_import_t2_kwh": 2948.827,
"energy_export_t1_kwh": 1285.951,
"energy_export_t2_kwh": 2876.51,
"power_w": -678,
"power_l1_w": -676
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
{
"protocol_version": 50,
"meter_model": "ISKRA 2M550T-101",
"unique_id": "4E6576657220476F6E6E61204C657420596F7520446F776E",
"timestamp": "2024-06-28T14:12:34",
"tariff": 2,
"energy_import_kwh": 13779.338,
"energy_import_t1_kwh": 10830.511,
"energy_import_t2_kwh": 2948.827,
"energy_export_kwh": 0,
"energy_export_t1_kwh": 0,
"energy_export_t2_kwh": 0,
"power_w": -543,
"power_l1_w": -676,
"power_l2_w": 133,
"power_l3_w": 0,
"current_a": 6,
"current_l1_a": -4,
"current_l2_a": 2,
"current_l3_a": 0,
"voltage_sag_l1_count": 1,
"voltage_sag_l2_count": 1,
"voltage_sag_l3_count": 0,
"voltage_swell_l1_count": 0,
"voltage_swell_l2_count": 0,
"voltage_swell_l3_count": 0,
"any_power_fail_count": 4,
"long_power_fail_count": 5,
"average_power_15m_w": 123.000,
"monthly_power_peak_w": 1111.000,
"monthly_power_peak_timestamp": "2024-06-04T10:11:22",
"external": [
{
"unique_id": "4E6576657220676F6E6E612072756E2061726F756E64",
"type": "gas_meter",
"timestamp": "2024-06-28T14:00:00",
"value": 2569.646,
"unit": "m3"
},
{
"unique_id": "616E642064657365727420796F75",
"type": "water_meter",
"timestamp": "2024-06-28T14:05:00",
"value": 123.456,
"unit": "m3"
}
]
}
Loading
Loading