"""Integration tests for lambda function.""" import json import boto3 import pytest from tests.consts import config as test_config # noqa class TestSuccessfulInvocation: """Test successful check.""" @pytest.fixture def lambda_payload(self): """Fixture for lambda payload.""" event = { 'records': { 'MY_TOPIC': [{ 'value': 'AAAAAB4CAgx1cGRhdGUCDHN1Ym1pdALusfidl2ICArjLhQI' 'CGDE5MTc3MzkxMDEzNgIiVGVzdCBBZG1pbiBSZWplY3QA', }] } } return json.dumps(event) @pytest.fixture def lambda_response(self, lambda_payload): """Fixture for lambda invocation response.""" client = boto3.client('lambda', region_name=test_config.AWS_REGION) response = client.invoke( FunctionName=test_config.LAMBDA_NAME, InvocationType='RequestResponse', LogType='None', Payload=lambda_payload, ) return json.loads(response['Payload'].read().decode('utf-8')) def test_successful_invocation(self, lambda_response): """Test successful invocation.""" assert lambda_response['status'] == 'OK' assert lambda_response['execution_arn'] != ''