"""Test notify_started task.""" from unittest.mock import patch from lib import constants from tasks.payments_upload_approval.notify_started import notify_started_task @patch('tasks.payments_upload_approval.notify_started.helpers') @patch('tasks.payments_upload_approval.notify_started.ows') def test_notify_started_task( mock_ows, mock_helpers, mock_payments_upload_approval_dag_run ): """Test updating 'upload_approval' abacus_state record to 'running'.""" payment_group_payment_id = 1 mock_upload_approval_action = { 'abacus_state_id': 1, 'action_name': constants.PAYMENT_GROUP_PAYMENT_ACTIONS.UPLOAD_APPROVAL, 'action_status': constants.ABACUS_STATE_STATUSES.INIT } mock_helpers.get_event_from_params.return_value.target_id = payment_group_payment_id mock_helpers.get_abacus_state.return_value = mock_upload_approval_action mock_ows.update_abacus_state.return_value = True notify_started_task(mock_payments_upload_approval_dag_run) mock_helpers.get_event_from_params.assert_called_once_with( mock_payments_upload_approval_dag_run ) mock_helpers.get_abacus_state.assert_called_once_with( constants.PAYMENT_GROUP_PAYMENT_ACTIONS.UPLOAD_APPROVAL, payment_group_payment_id ) mock_ows.update_abacus_state.assert_called_once_with( mock_upload_approval_action.get('abacus_state_id'), body={ 'action_status': constants.ABACUS_STATE_STATUSES.RUNNING } )