"""Test for vat exempt lambda invocation.""" from unittest.mock import patch import pytest from hooks.lambda_invoke.invocation_response import LambdaInvocationResponse from tasks.accounting_period_calculate_vat.invoke_vat_exempt_lambda import \ invoke_vat_exempt_lambda_task @patch('tasks.accounting_period_calculate_vat.invoke_vat_exempt_lambda' '.OrchLambdaHook') def test_invoke_vat_exempt_lambda_success( mock_orchlambdahook, mock_accounting_period_calc_vat_dag_run, lambda_response_success ): """Test invoke_vat_exempt_lambda task success.""" mock_lambda_response = LambdaInvocationResponse(lambda_response_success) mock_orchlambdahook.return_value.invoke_lambda.return_value = mock_lambda_response invoke_vat_exempt_lambda_task(mock_accounting_period_calc_vat_dag_run) mock_orchlambdahook.assert_called_once() @patch('tasks.accounting_period_calculate_vat.invoke_vat_exempt_lambda' '.OrchLambdaHook') def test_invoke_vat_exempt_lambda_error( mock_orchlambdahook, mock_accounting_period_calc_vat_dag_run, lambda_response_error ): """Test invoke_vat_exempt_lambda raises exception when lambda fails.""" mock_lambda_response = LambdaInvocationResponse(lambda_response_error) mock_orchlambdahook.return_value.invoke_lambda.return_value = mock_lambda_response with pytest.raises(Exception): invoke_vat_exempt_lambda_task(mock_accounting_period_calc_vat_dag_run) mock_orchlambdahook.assert_called_once()