Improve error logging on incorrect parsing

This commit is contained in:
Luís Murta 2024-01-21 11:29:40 +00:00
parent c6a13cc83a
commit abf82176e5
Signed by: satprog
GPG Key ID: 169EF1BBD7049F94

View File

@ -132,17 +132,25 @@ class Parser:
line = line_.rstrip().split(options.separator) line = line_.rstrip().split(options.separator)
index = Parser.index(line, options) index = Parser.index(line, options)
date = dt.datetime.strptime(line[index.date].strip(), options.date_fmt).date() try:
text = line[index.text] date_str = line[index.date].strip()
value = utils.parse_decimal(line[index.value]) date = dt.datetime.strptime(date_str, options.date_fmt).date()
if index.negate:
value = -value
transaction = BankTransaction(date, text, value, bank=bank) text = line[index.text]
if options.additional_parser: value = utils.parse_decimal(line[index.value])
func(transaction) if index.negate:
return transaction value = -value
transaction = BankTransaction(date, text, value, bank=bank)
if options.additional_parser:
func(transaction)
return transaction
except IndexError:
raise IndexError(line_)
class Bank1(Parser): class Bank1(Parser):