From d793daf36380b2b92345102ac966f576c20ec22e Mon Sep 17 00:00:00 2001 From: root <root@BALAZS-ASUS.localdomain> Date: Sun, 30 Jul 2023 15:15:18 +0200 Subject: [PATCH] linting --- dsmr_parser/objects.py | 1 + dsmr_parser/parsers.py | 6 ++- dsmr_parser/telegram_specifications.py | 56 +++++++++++++------------- test/example_telegrams.py | 2 +- test/objects/test_mbusdevice.py | 18 +++++++-- test/test_parse_v5_eon_hungary.py | 2 +- 6 files changed, 51 insertions(+), 34 deletions(-) diff --git a/dsmr_parser/objects.py b/dsmr_parser/objects.py index 456e2d5..98e1c5d 100644 --- a/dsmr_parser/objects.py +++ b/dsmr_parser/objects.py @@ -5,6 +5,7 @@ import json import pytz + class Telegram(dict): """ Container for parsed telegram data. diff --git a/dsmr_parser/parsers.py b/dsmr_parser/parsers.py index feca8cb..0e60adf 100644 --- a/dsmr_parser/parsers.py +++ b/dsmr_parser/parsers.py @@ -102,7 +102,11 @@ class TelegramParser(object): logger.error("Unexpected {}: {}".format(type(err), err)) raise else: - telegram.add(obis_reference=object["obis_reference"], dsmr_object=dsmr_object, obis_name=object["value_name"]) + telegram.add( + obis_reference=object["obis_reference"], + dsmr_object=dsmr_object, + obis_name=object["value_name"] + ) return telegram diff --git a/dsmr_parser/telegram_specifications.py b/dsmr_parser/telegram_specifications.py index 1431045..3d4b2d6 100644 --- a/dsmr_parser/telegram_specifications.py +++ b/dsmr_parser/telegram_specifications.py @@ -775,9 +775,9 @@ LUXEMBOURG_SMARTY['objects'].extend([ }, # This is already presented in V5, with the same data # { - # 'obis_reference': obis.ELECTRICITY_IMPORTED_TOTAL, - # 'value_parser': CosemParser(ValueParser(Decimal)), - # 'value_name': 'ELECTRICITY_IMPORTED_TOTAL' + # 'obis_reference': obis.ELECTRICITY_IMPORTED_TOTAL, + # 'value_parser': CosemParser(ValueParser(Decimal)), + # 'value_name': 'ELECTRICITY_IMPORTED_TOTAL' # }, { 'obis_reference': obis.ELECTRICITY_EXPORTED_TOTAL, @@ -1349,7 +1349,7 @@ EON_HUNGARY = { 'value_parser': CosemParser(ValueParser(Decimal)), 'value_name': 'INSTANTANEOUS_CURRENT_L2' # Only with 3 phase meters - }, + }, { 'obis_reference': obis.INSTANTANEOUS_CURRENT_L3, 'value_parser': CosemParser(ValueParser(Decimal)), @@ -1432,30 +1432,30 @@ EON_HUNGARY = { }, # I'm not sure which datas does this line containes. It should be the data of last minute of last month. # { - # 'obis_reference': obis.BELGIUM_MAXIMUM_DEMAND_13_MONTHS, - # 'value_parser': NonExistingParser( - # ValueParser(timestamp), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal), - # ValueParser(Decimal) - # ), - # 'value_name': 'LAST_MONTH_DATA' + # 'obis_reference': obis.BELGIUM_MAXIMUM_DEMAND_13_MONTHS, + # 'value_parser': NonExistingParser( + # ValueParser(timestamp), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal), + # ValueParser(Decimal) + # ), + # 'value_name': 'LAST_MONTH_DATA' # }, { 'obis_reference': obis.TEXT_MESSAGE, diff --git a/test/example_telegrams.py b/test/example_telegrams.py index 55a3dae..b21f6ad 100644 --- a/test/example_telegrams.py +++ b/test/example_telegrams.py @@ -362,4 +362,4 @@ TELEGRAM_V5_EON_HU = ( '0-0:98.1.0(230701000000S)(000040.777*kWh)(000008.950*kWh)(000031.827*kWh)(000142.250*kWh)(000111.164*kWh)(000031.086*kWh)(000000.030*kvarh)(000073.988*kvarh)(000000.205*kvarh)(000000.048*kvarh)(000039.199*kvarh)(000035.020*kvarh)(000183.027*kWh)(03.564*kW)(02.156*kW)(03.564*kW)(04.104*kW)(04.104*kW)(03.400*kW)\r\n' '0-0:96.13.0()\r\n' '!99DA\r\n' -) \ No newline at end of file +) diff --git a/test/objects/test_mbusdevice.py b/test/objects/test_mbusdevice.py index 3ff9985..03fde3f 100644 --- a/test/objects/test_mbusdevice.py +++ b/test/objects/test_mbusdevice.py @@ -12,13 +12,25 @@ class MbusDeviceTest(unittest.TestCase): def setUp(self): v5_objects = telegram_specifications.V5['objects'] - device_type_parser = [object["value_parser"] for object in v5_objects if object["obis_reference"] == obis_references.DEVICE_TYPE][0] + device_type_parser = [ + object["value_parser"] + for object in v5_objects + if object["obis_reference"] == obis_references.DEVICE_TYPE + ][0] device_type = device_type_parser.parse('0-2:24.1.0(003)\r\n') - equipment_parser = [object["value_parser"] for object in v5_objects if object["obis_reference"] == obis_references.EQUIPMENT_IDENTIFIER_GAS][0] + equipment_parser = [ + object["value_parser"] + for object in v5_objects + if object["obis_reference"] == obis_references.EQUIPMENT_IDENTIFIER_GAS + ][0] equipment = equipment_parser.parse('0-2:96.1.0(4730303339303031393336393930363139)\r\n') - gas_reading_parser = [object["value_parser"] for object in v5_objects if object["obis_reference"] == obis_references.HOURLY_GAS_METER_READING][0] + gas_reading_parser = [ + object["value_parser"] + for object in v5_objects + if object["obis_reference"] == obis_references.HOURLY_GAS_METER_READING + ][0] gas_reading = gas_reading_parser.parse('0-2:24.2.1(200426223001S)(00246.138*m3)\r\n') mbus_device = MbusDevice(channel_id=1) diff --git a/test/test_parse_v5_eon_hungary.py b/test/test_parse_v5_eon_hungary.py index ba93852..08dd6e1 100644 --- a/test/test_parse_v5_eon_hungary.py +++ b/test/test_parse_v5_eon_hungary.py @@ -7,7 +7,7 @@ import pytz from dsmr_parser import telegram_specifications from dsmr_parser.exceptions import InvalidChecksumError, ParseError -from dsmr_parser.objects import CosemObject, MBusObject +from dsmr_parser.objects import CosemObject from dsmr_parser.parsers import TelegramParser from test.example_telegrams import TELEGRAM_V5_EON_HU