"""Test csv parser.""" from royalties.utils import csv_parser, exchange_rate_format def test_create_exchange_rate_csv_parser(): """Tests creating a parser.""" expected_has_header = False expected_delimiter = ',' expected_statement_period_id = 1 formatter = exchange_rate_format.ExchangeRateCSVRowParser( expected_statement_period_id ) parser = csv_parser.CSVParser(expected_has_header, expected_delimiter, formatter) assert parser.has_header == expected_has_header assert parser.errors == [] assert parser.rows == [] assert formatter.statement_period_id == expected_statement_period_id def test_get_parser_results(): """Test result getter.""" expected_has_header = False expected_delimiter = ',' expected_statement_period_id = 1 formatter = exchange_rate_format.ExchangeRateCSVRowParser( expected_statement_period_id ) parser = csv_parser.CSVParser(expected_has_header, expected_delimiter, formatter) expected = {'rows': [1, 2, 3, 4], 'errors': [5, 6, 7, 8]} parser.rows = expected['rows'] parser.errors = expected['errors'] actual = parser.get_results() assert actual == expected