"""Test file reader.""" from accounting.adapters.file import build_dict from accounting.adapters.file import read_statement_file from accounting.adapters.file import read_transaction_file def test_read_statement_file(): """Test opening a properly formed TSV.""" result = [] for line in read_statement_file('./tests/files/one_statement.tsv'): result.append(line) assert result == [ { 'statement_id': '1', 'dms_customer_id': '1', 'actual_statement_no': 'none', 'paid': 'Y', 'year': '2018', 'quarter': '4', 'month': '10', 'check_detail_id': '0', 'period_id': '238', 'activity_rate': '1.000000', 'original_currency_id': '1' } ] def test_read_transaction_file(): """Test opening a properly formed TSV.""" result = [] for line in read_transaction_file('./tests/files/one_txn.tsv'): result.append(line) assert len(result) == 2 def test_build_dict(): """Test building a dict from two strings.""" header_line = ['header1', 'header2', 'header3'] value_line = ['value1', 'value2', 'value3'] built_dict = build_dict(header_line, value_line) assert built_dict == { 'header1': 'value1', 'header2': 'value2', 'header3': 'value3', }