"""Tests for reference_signing_entity handlers.""" from unittest.mock import patch from owsresponse import response @patch('abacus_contract.blueprints.reference_signing_entity.logic') def test_get_profit_centers_by_signing_entities(mock_logic, fixture_client): """Test to get profit centers by signing entities.""" mock_profit_centers = [ { 'data': [ { 'signing_entity_sap_profit_center_id': 1, 'reference_signing_entity_id': 1, 'created_at': '2026-06-09T00:00:00.000000+0000', 'sap_profit_center': { 'reference_sap_profit_center_id': 1, 'profit_center': 'PC001', 'company_code': '4914', 'business_group': 'ORC', 'display_name': 'Test', }, } ] }, { 'data': None, }, ] mock_logic.get_profit_centers_by_signing_entities.return_value = response.Response( message=mock_profit_centers, status=200 ) result = fixture_client.post( '/reference-signing-entity/reference-sap-profit-centers/dataloader', json=[1, 2] ) assert result.status_code == 200 assert result.json == mock_profit_centers mock_logic.get_profit_centers_by_signing_entities.assert_called_with([1, 2]) @patch('abacus_contract.blueprints.reference_signing_entity.logic') def test_get_signing_entities_dataloader(mock_logic, fixture_client): """Test to get signing entities by ids.""" mock_signing_entities = [ { 'data': { 'reference_signing_entity_id': 1, 'reference_sap_profit_center_id': 1, 'reference_payment_entity_id': 1, 'company_code': '4914', 'legal_name': 'AWAL Digital Limited', 'vat_number': 'GB 423 4787 86', 'company_registration_number': '04430703', 'address': '2 Canal Reach, London, N1C 4DB', } }, { 'data': None, }, ] mock_logic.get_signing_entities_by_ids.return_value = response.Response( message=mock_signing_entities, status=200 ) result = fixture_client.post('/reference-signing-entities/dataloader', json=[1, 2]) assert result.status_code == 200 assert result.json == mock_signing_entities mock_logic.get_signing_entities_by_ids.assert_called_with([1, 2]) @patch('abacus_contract.blueprints.reference_signing_entity.logic') def test_get_reference_signing_entities(mock_logic, fixture_client): """Test to get reference signing entities.""" mock_signing_entities = { 'items': [ { 'reference_signing_entity_id': 1, 'reference_payment_entity_id': 1, 'company_code': '4914', 'legal_name': 'AWAL Digital Limited', 'vat_number': 'GB 423 4787 86', 'company_registration_number': '04430703', 'address': '2 Canal Reach, London, N1C 4DB', } ], 'total_count': 1, } mock_logic.get_reference_signing_entities.return_value = response.Response( message=mock_signing_entities, status=200 ) result = fixture_client.get('/reference-signing-entities') assert result.status_code == 200 assert result.json == mock_signing_entities mock_logic.get_reference_signing_entities.assert_called_once()