"""Unit testcases for ows-ledger requests.""" from unittest.mock import MagicMock from unittest.mock import patch import pytest from adjustment_file_import.ows_ledger import \ get_reference_adjustment_types from adjustment_file_import.requests import OwsServiceException @patch('adjustment_file_import.ows_ledger.requests.get') def test_get_reference_adjustment_types(mock_get): """Test to get reference adjustment types.""" path = '/reference-adjustment-types/?limit=200&offset=0' mock_reference_adjustment_types = { 'items': [{ 'reference_adjustment_type_id': 65, 'type_name': 'Account Expense', 'oa_category_name': 'Vendor Expense' }, { 'reference_adjustment_type_id': 92, 'type_name': 'Adjustment', 'oa_category_name': '' }], 'total_count': 2 } mock_json_response = MagicMock(return_value=mock_reference_adjustment_types) mock_response = MagicMock(status_code=200, json=mock_json_response) mock_get.return_value = mock_response results = get_reference_adjustment_types() assert results == mock_reference_adjustment_types mock_get.assert_called_once_with(path, 'ows-ledger') @patch('adjustment_file_import.ows_ledger.requests.get') def test_get_reference_adjustment_types_error(mock_get): """Test error is raised when getting reference adjustment types.""" path = '/reference-adjustment-types/?limit=200&offset=0' mock_response = MagicMock(status_code=500) mock_get.return_value = mock_response with pytest.raises(OwsServiceException) as e: get_reference_adjustment_types() assert str(e) == f'ERROR in GET {path}' mock_get.assert_called_once_with(path, 'ows-ledger')