Coverage for jbank/management/commands/parse_aeb43.py : 0%

Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
1import logging
2import os
3from pprint import pprint
4from django.core.management.base import CommandParser
5from jbank.aeb43 import AEB43_STATEMENT_SUFFIXES, parse_aeb43_statements_from_file
6from jbank.files import list_dir_files
7from jbank.parsers import parse_filename_suffix
8from jutil.command import SafeCommand
10logger = logging.getLogger(__name__)
13class Command(SafeCommand):
14 help = "Parses bank statement .AEB43 files"
16 def add_arguments(self, parser: CommandParser):
17 parser.add_argument("path", type=str)
18 parser.add_argument("--verbose", action="store_true")
19 parser.add_argument("--test", action="store_true")
21 def do(self, *args, **kwargs):
22 files = list_dir_files(kwargs["path"])
23 for filename in files:
24 plain_filename = os.path.basename(filename)
26 if parse_filename_suffix(plain_filename).upper() not in AEB43_STATEMENT_SUFFIXES:
27 print("Ignoring non-AEB43 file {}".format(filename))
28 continue
30 batches = parse_aeb43_statements_from_file(filename)
31 pprint(batches)