"""Tests for reserve_processor module.""" from unittest.mock import patch from reserves_take.reserve_processor import ReserveProcessor @patch('reserves_take.reserve_processor.app_logger') @patch('reserves_take.reserve_processor.ReserveTakeItem') def test_reserve_processor_process( mock_reserve_take_item, mock_app_logger, mock_sales_transactions_response, mock_contract_reserves_response ): """Test process method of ReserveProcessor class.""" mock_reserve_take_item.return_value.format_ledger_deposit_entry\ .return_value = 'deposit_entry' mock_reserve_take_item.return_value.format_reserve_taken_entry \ .return_value = 'reserve_taken_entry' processor = ReserveProcessor( abacus_event_id=1, statement_period_id=1, accounting_run_id=1, transactions=mock_sales_transactions_response, contract_reserves=mock_contract_reserves_response ) processor.process() assert processor.reserve_taken_entries == [ 'reserve_taken_entry', 'reserve_taken_entry' ] assert processor.deposit_entries == [ 'deposit_entry', 'deposit_entry' ] mock_app_logger.info.assert_called_once_with('Processed 3 transactions')