Coverage for modbus_connect/importer.py: 0%

13 statements  

« prev     ^ index     » next       coverage.py v7.0.0, created at 2023-01-12 07:46 +0000

1import csv 

2 

3import modbus_connect.utils as utils 

4 

5 

6# Get variable names and memory addresses from csv file, and save them in a list of dictionaries 

7def load_tags_from_list( 

8 directory: str, 

9 filename: str, 

10 name_row: int, 

11 address_row: int, 

12 memory_row: int, 

13 datatype_row: int, 

14) -> list[utils.ModbusRegister]: 

15 tags = [] 

16 try: 

17 with open(directory + filename, "r") as file: 

18 reader = csv.reader(file, delimiter=";") 

19 next(reader, None) # Skip header 

20 for row in reader: 

21 tags.append( 

22 { 

23 "name": row[name_row], 

24 "address": int(row[address_row]), 

25 "memory": row[memory_row], 

26 "datatype": row[datatype_row], 

27 } 

28 ) 

29 return tags 

30 except Exception as e: 

31 raise ("Some problem has occurred while reading the file: " + str(e))