Skip to content

Commit

Permalink
Full coerage for models.py
Browse files Browse the repository at this point in the history
  • Loading branch information
DCSBL committed Nov 17, 2023
1 parent 11e259d commit 9b5fc28
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 5 deletions.
Binary file modified .coverage
Binary file not shown.
4 changes: 0 additions & 4 deletions homewizard_energy/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -234,10 +234,6 @@ class DeviceType(Enum):
WATER_METER = 7
INLET_HEAT_METER = 12

@classmethod
def _missing_(cls, _: Any) -> ExternalDevice.DeviceType:
return cls.UNKNOWN

@staticmethod
def from_string(value: str) -> ExternalDevice.DeviceType:
"""Convert string to enum."""
Expand Down
2 changes: 1 addition & 1 deletion tests/__snapshots__/test_models.ambr
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
Data(wifi_ssid='My Wi-Fi', wifi_strength=100, smr_version=50, meter_model='ISKRA 2M550T-101', unique_meter_id=None, active_tariff=None, total_energy_import_kwh=10830.511, total_energy_import_t1_kwh=10830.511, total_energy_import_t2_kwh=2948.827, total_energy_import_t3_kwh=None, total_energy_import_t4_kwh=None, total_energy_export_kwh=1285.951, total_energy_export_t1_kwh=1285.951, total_energy_export_t2_kwh=2876.51, total_energy_export_t3_kwh=None, total_energy_export_t4_kwh=None, active_power_w=-543, active_power_l1_w=-676, active_power_l2_w=133, active_power_l3_w=0, active_voltage_l1_v=None, active_voltage_l2_v=None, active_voltage_l3_v=None, active_current_l1_a=None, active_current_l2_a=None, active_current_l3_a=None, active_frequency_hz=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, active_power_average_w=None, monthly_power_peak_w=None, monthly_power_peak_timestamp=None, total_gas_m3=2569.646, gas_timestamp=datetime.datetime(2021, 6, 6, 14, 0, 10), gas_unique_id=None, active_liter_lpm=None, total_liter_m3=None, external_devices=None)
# ---
# name: test_data[data_p1_full.json]
Data(wifi_ssid='My Wi-Fi', wifi_strength=100, smr_version=50, meter_model='ISKRA 2M550T-101', unique_meter_id='NGGYU', active_tariff=2, total_energy_import_kwh=13779.338, total_energy_import_t1_kwh=10830.511, total_energy_import_t2_kwh=2948.827, total_energy_import_t3_kwh=None, total_energy_import_t4_kwh=None, total_energy_export_kwh=0, total_energy_export_t1_kwh=0, total_energy_export_t2_kwh=0, total_energy_export_t3_kwh=None, total_energy_export_t4_kwh=None, active_power_w=-543, active_power_l1_w=-676, active_power_l2_w=133, active_power_l3_w=0, active_voltage_l1_v=None, active_voltage_l2_v=None, active_voltage_l3_v=None, active_current_l1_a=-4, active_current_l2_a=2, active_current_l3_a=0, active_frequency_hz=50, 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, active_power_average_w=123.0, monthly_power_peak_w=1111.0, monthly_power_peak_timestamp=datetime.datetime(2023, 1, 1, 8, 0, 10), total_gas_m3=2569.646, gas_timestamp=datetime.datetime(2021, 6, 6, 14, 0, 10), gas_unique_id='NGLYD', active_liter_lpm=None, total_liter_m3=None, external_devices={'NGLYD': ExternalDevice(unique_id='NGLYD', meter_type=<DeviceType.GAS_METER: 3>, value=111.111, unit='m3', timestamp=datetime.datetime(2021, 6, 6, 14, 0, 10)), 'NGRAADY': ExternalDevice(unique_id='NGRAADY', meter_type=<DeviceType.HEAT_METER: 4>, value=222.222, unit='m3', timestamp=datetime.datetime(2021, 6, 6, 14, 0, 10)), 'NGMYC': ExternalDevice(unique_id='NGMYC', meter_type=<DeviceType.WARM_WATER_METER: 6>, value=333.333, unit='m3', timestamp=datetime.datetime(2021, 6, 6, 14, 0, 10)), 'NGSG': ExternalDevice(unique_id='NGSG', meter_type=<DeviceType.WATER_METER: 7>, value=444.444, unit='m3', timestamp=datetime.datetime(2021, 6, 6, 14, 0, 10)), 'NGTALAHY': ExternalDevice(unique_id='NGTALAHY', meter_type=<DeviceType.INLET_HEAT_METER: 12>, value=555.555, unit='m3', timestamp=datetime.datetime(2021, 6, 6, 14, 0, 10))})
Data(wifi_ssid='My Wi-Fi', wifi_strength=100, smr_version=50, meter_model='ISKRA 2M550T-101', unique_meter_id='NGGYU', active_tariff=2, total_energy_import_kwh=13779.338, total_energy_import_t1_kwh=10830.511, total_energy_import_t2_kwh=2948.827, total_energy_import_t3_kwh=None, total_energy_import_t4_kwh=None, total_energy_export_kwh=0, total_energy_export_t1_kwh=0, total_energy_export_t2_kwh=0, total_energy_export_t3_kwh=None, total_energy_export_t4_kwh=None, active_power_w=-543, active_power_l1_w=-676, active_power_l2_w=133, active_power_l3_w=0, active_voltage_l1_v=None, active_voltage_l2_v=None, active_voltage_l3_v=None, active_current_l1_a=-4, active_current_l2_a=2, active_current_l3_a=0, active_frequency_hz=50, 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, active_power_average_w=123.0, monthly_power_peak_w=1111.0, monthly_power_peak_timestamp=datetime.datetime(2023, 1, 1, 8, 0, 10), total_gas_m3=2569.646, gas_timestamp=datetime.datetime(2021, 6, 6, 14, 0, 10), gas_unique_id='NGLYD', active_liter_lpm=None, total_liter_m3=None, external_devices={'NGLYD': ExternalDevice(unique_id='NGLYD', meter_type=<DeviceType.GAS_METER: 3>, value=111.111, unit='m3', timestamp=datetime.datetime(2021, 6, 6, 14, 0, 10)), 'NGRAADY': ExternalDevice(unique_id='NGRAADY', meter_type=<DeviceType.HEAT_METER: 4>, value=222.222, unit='m3', timestamp=datetime.datetime(2021, 6, 6, 14, 0, 10)), 'NGMYC': ExternalDevice(unique_id='NGMYC', meter_type=<DeviceType.WARM_WATER_METER: 6>, value=333.333, unit='m3', timestamp=datetime.datetime(2021, 6, 6, 14, 0, 10)), 'NGSG': ExternalDevice(unique_id='NGSG', meter_type=<DeviceType.WATER_METER: 7>, value=444.444, unit='m3', timestamp=datetime.datetime(2021, 6, 6, 14, 0, 10)), 'NGTALAHY': ExternalDevice(unique_id='NGTALAHY', meter_type=<DeviceType.UNKNOWN: -1>, value=555.555, unit=',3', timestamp=datetime.datetime(2021, 6, 6, 14, 0, 10))})
# ---
# name: test_data[data_p1_no_gas.json]
Data(wifi_ssid='My Wi-Fi', wifi_strength=100, smr_version=50, meter_model='ISKRA 2M550T-101', unique_meter_id=None, active_tariff=None, total_energy_import_kwh=10830.511, total_energy_import_t1_kwh=10830.511, total_energy_import_t2_kwh=2948.827, total_energy_import_t3_kwh=None, total_energy_import_t4_kwh=None, total_energy_export_kwh=1285.951, total_energy_export_t1_kwh=1285.951, total_energy_export_t2_kwh=2876.51, total_energy_export_t3_kwh=None, total_energy_export_t4_kwh=None, active_power_w=-543, active_power_l1_w=-676, active_power_l2_w=133, active_power_l3_w=0, active_voltage_l1_v=None, active_voltage_l2_v=None, active_voltage_l3_v=None, active_current_l1_a=None, active_current_l2_a=None, active_current_l3_a=None, active_frequency_hz=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, active_power_average_w=None, monthly_power_peak_w=None, monthly_power_peak_timestamp=None, total_gas_m3=None, gas_timestamp=None, gas_unique_id=None, active_liter_lpm=None, total_liter_m3=None, external_devices=None)
Expand Down
13 changes: 13 additions & 0 deletions tests/fixtures/data_p1_full.json
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,19 @@
"timestamp": 210606140010,
"value": 555.555,
"unit": "should_not_be_included_because_of_missing_id"
},
{
"unique_id": "4E4754414C414859",
"type": "catfish",
"timestamp": 210606140010,
"value": 555.555,
"unit": ",3"
},
{
"unique_id": "4E4754414C414859",
"timestamp": 210606140010,
"value": 555.555,
"unit": ",3"
}
]
}

0 comments on commit 9b5fc28

Please sign in to comment.