"""Update Payment Group Payment Batch State logic tests.""" from unittest.mock import patch from abacus_state.constants.constants import ( PARENT_TABLE_NAMES, PAYMENT_GROUP_PAYMENT_BATCH_ACTION_NAMES, ) from abacus_state.logic import payment_group_payment_batch_state as logic from tests.utils.factories import AbacusStateFactory @patch('abacus_state.logic.payment_group_payment_batch_state.AbacusState') def test_update_payment_group_payment_batch_state(mock_model, request_engine): """Test update_payment_group_payment_batch_state method.""" parent_table_name = PARENT_TABLE_NAMES.PAYMENT_GROUP_PAYMENT_BATCH abacus_state = AbacusStateFactory.create( action_name=PAYMENT_GROUP_PAYMENT_BATCH_ACTION_NAMES.SEND_PAYMENT, action_status='init', parent_table_name=parent_table_name, parent_table_id=1, ) mock_put_request = {'action_status': 'error', 'message': 'testing'} res = logic.update_payment_group_payment_batch_state( abacus_state, **mock_put_request ) assert res.status == 200 mock_model.commit_changes.assert_called_once()