diff --git a/noxfile.py b/noxfile.py index fd53338c230..a379adb9274 100644 --- a/noxfile.py +++ b/noxfile.py @@ -117,7 +117,7 @@ def test_with_boto3_sdk_as_required_package(session: nox.Session): @nox.session() def test_with_fastjsonschema_as_required_package(session: nox.Session): - """Tests that depends on boto3/botocore library""" + """Tests that depends on fastjsonschema library""" # Validation build_and_run_test( session, @@ -145,8 +145,9 @@ def test_with_aws_encryption_sdk_as_required_package(session: nox.Session): @nox.session() @nox.parametrize("pydantic", ["1.10", "2.0"]) def test_with_pydantic_required_package(session: nox.Session, pydantic: str): - """Tests that only depends for required libraries""" + """Tests that only depends for Pydantic library v1 and v2""" # Event Handler OpenAPI + # Parser session.install(f"pydantic>={pydantic}") @@ -154,5 +155,6 @@ def test_with_pydantic_required_package(session: nox.Session, pydantic: str): session, folders=[ f"{PREFIX_TESTS_FUNCTIONAL}/event_handler/_pydantic/", + f"{PREFIX_TESTS_UNIT}/parser/_pydantic/", ], ) diff --git a/tests/unit/parser/_pydantic/__init__.py b/tests/unit/parser/_pydantic/__init__.py new file mode 100644 index 00000000000..e69de29bb2d diff --git a/tests/unit/parser/schemas.py b/tests/unit/parser/_pydantic/schemas.py similarity index 100% rename from tests/unit/parser/schemas.py rename to tests/unit/parser/_pydantic/schemas.py diff --git a/tests/unit/parser/test_alb.py b/tests/unit/parser/_pydantic/test_alb.py similarity index 100% rename from tests/unit/parser/test_alb.py rename to tests/unit/parser/_pydantic/test_alb.py diff --git a/tests/unit/parser/test_apigw.py b/tests/unit/parser/_pydantic/test_apigw.py similarity index 99% rename from tests/unit/parser/test_apigw.py rename to tests/unit/parser/_pydantic/test_apigw.py index b2ed294ff7a..7b4b2528373 100644 --- a/tests/unit/parser/test_apigw.py +++ b/tests/unit/parser/_pydantic/test_apigw.py @@ -4,7 +4,7 @@ from aws_lambda_powertools.utilities.parser import envelopes, parse from aws_lambda_powertools.utilities.parser.models import APIGatewayProxyEventModel from tests.functional.utils import load_event -from tests.unit.parser.schemas import MyApiGatewayBusiness +from tests.unit.parser._pydantic.schemas import MyApiGatewayBusiness def test_apigw_event_with_envelope(): diff --git a/tests/unit/parser/test_apigwv2.py b/tests/unit/parser/_pydantic/test_apigwv2.py similarity index 98% rename from tests/unit/parser/test_apigwv2.py rename to tests/unit/parser/_pydantic/test_apigwv2.py index 5a0f627b3cd..47e79cbaa36 100644 --- a/tests/unit/parser/test_apigwv2.py +++ b/tests/unit/parser/_pydantic/test_apigwv2.py @@ -5,7 +5,7 @@ RequestContextV2Authorizer, ) from tests.functional.utils import load_event -from tests.unit.parser.schemas import MyApiGatewayBusiness +from tests.unit.parser._pydantic.schemas import MyApiGatewayBusiness def test_apigw_v2_event_with_envelope(): diff --git a/tests/unit/parser/test_bedrock_agent.py b/tests/unit/parser/_pydantic/test_bedrock_agent.py similarity index 97% rename from tests/unit/parser/test_bedrock_agent.py rename to tests/unit/parser/_pydantic/test_bedrock_agent.py index f3c208469e9..207318952cc 100644 --- a/tests/unit/parser/test_bedrock_agent.py +++ b/tests/unit/parser/_pydantic/test_bedrock_agent.py @@ -1,7 +1,7 @@ from aws_lambda_powertools.utilities.parser import envelopes, parse from aws_lambda_powertools.utilities.parser.models import BedrockAgentEventModel from tests.functional.utils import load_event -from tests.unit.parser.schemas import MyBedrockAgentBusiness +from tests.unit.parser._pydantic.schemas import MyBedrockAgentBusiness def test_bedrock_agent_event_with_envelope(): diff --git a/tests/unit/parser/test_cloudformation_custom_resource.py b/tests/unit/parser/_pydantic/test_cloudformation_custom_resource.py similarity index 100% rename from tests/unit/parser/test_cloudformation_custom_resource.py rename to tests/unit/parser/_pydantic/test_cloudformation_custom_resource.py diff --git a/tests/unit/parser/test_cloudwatch.py b/tests/unit/parser/_pydantic/test_cloudwatch.py similarity index 98% rename from tests/unit/parser/test_cloudwatch.py rename to tests/unit/parser/_pydantic/test_cloudwatch.py index b62116dedbd..b7cf1801865 100644 --- a/tests/unit/parser/test_cloudwatch.py +++ b/tests/unit/parser/_pydantic/test_cloudwatch.py @@ -11,7 +11,7 @@ CloudWatchLogsModel, ) from tests.functional.utils import load_event -from tests.unit.parser.schemas import MyCloudWatchBusiness +from tests.unit.parser._pydantic.schemas import MyCloudWatchBusiness def decode_cloudwatch_raw_event(event: dict): diff --git a/tests/unit/parser/test_dynamodb.py b/tests/unit/parser/_pydantic/test_dynamodb.py similarity index 97% rename from tests/unit/parser/test_dynamodb.py rename to tests/unit/parser/_pydantic/test_dynamodb.py index abbcd152d6b..d4014cd031f 100644 --- a/tests/unit/parser/test_dynamodb.py +++ b/tests/unit/parser/_pydantic/test_dynamodb.py @@ -2,7 +2,7 @@ from aws_lambda_powertools.utilities.parser import ValidationError, envelopes, parse from tests.functional.utils import load_event -from tests.unit.parser.schemas import MyAdvancedDynamoBusiness, MyDynamoBusiness +from tests.unit.parser._pydantic.schemas import MyAdvancedDynamoBusiness, MyDynamoBusiness def test_dynamo_db_stream_trigger_event(): diff --git a/tests/unit/parser/test_eventbridge.py b/tests/unit/parser/_pydantic/test_eventbridge.py similarity index 97% rename from tests/unit/parser/test_eventbridge.py rename to tests/unit/parser/_pydantic/test_eventbridge.py index 7f250ecdb83..056a3bb2591 100644 --- a/tests/unit/parser/test_eventbridge.py +++ b/tests/unit/parser/_pydantic/test_eventbridge.py @@ -2,7 +2,7 @@ from aws_lambda_powertools.utilities.parser import ValidationError, envelopes, parse from tests.functional.utils import load_event -from tests.unit.parser.schemas import ( +from tests.unit.parser._pydantic.schemas import ( MyAdvancedEventbridgeBusiness, MyEventbridgeBusiness, ) diff --git a/tests/unit/parser/test_kafka.py b/tests/unit/parser/_pydantic/test_kafka.py similarity index 97% rename from tests/unit/parser/test_kafka.py rename to tests/unit/parser/_pydantic/test_kafka.py index 1f229c1db6e..066820c2f11 100644 --- a/tests/unit/parser/test_kafka.py +++ b/tests/unit/parser/_pydantic/test_kafka.py @@ -5,7 +5,7 @@ KafkaSelfManagedEventModel, ) from tests.functional.utils import load_event -from tests.unit.parser.schemas import MyLambdaKafkaBusiness +from tests.unit.parser._pydantic.schemas import MyLambdaKafkaBusiness def test_kafka_msk_event_with_envelope(): diff --git a/tests/unit/parser/test_kinesis.py b/tests/unit/parser/_pydantic/test_kinesis.py similarity index 98% rename from tests/unit/parser/test_kinesis.py rename to tests/unit/parser/_pydantic/test_kinesis.py index 730759f1230..9da19ed3e0b 100644 --- a/tests/unit/parser/test_kinesis.py +++ b/tests/unit/parser/_pydantic/test_kinesis.py @@ -13,7 +13,7 @@ extract_cloudwatch_logs_from_record, ) from tests.functional.utils import load_event -from tests.unit.parser.schemas import MyKinesisBusiness +from tests.unit.parser._pydantic.schemas import MyKinesisBusiness def test_kinesis_trigger_bad_base64_event(): diff --git a/tests/unit/parser/test_kinesis_firehose.py b/tests/unit/parser/_pydantic/test_kinesis_firehose.py similarity index 98% rename from tests/unit/parser/test_kinesis_firehose.py rename to tests/unit/parser/_pydantic/test_kinesis_firehose.py index bd12d25e3d3..e12b0427110 100644 --- a/tests/unit/parser/test_kinesis_firehose.py +++ b/tests/unit/parser/_pydantic/test_kinesis_firehose.py @@ -9,7 +9,7 @@ KinesisFirehoseSqsRecord, ) from tests.functional.utils import load_event -from tests.unit.parser.schemas import MyKinesisFirehoseBusiness +from tests.unit.parser._pydantic.schemas import MyKinesisFirehoseBusiness def test_firehose_sqs_wrapped_message_event(): diff --git a/tests/unit/parser/test_lambda_function_url.py b/tests/unit/parser/_pydantic/test_lambda_function_url.py similarity index 98% rename from tests/unit/parser/test_lambda_function_url.py rename to tests/unit/parser/_pydantic/test_lambda_function_url.py index 3b1a7f259ec..8cf4c395e84 100644 --- a/tests/unit/parser/test_lambda_function_url.py +++ b/tests/unit/parser/_pydantic/test_lambda_function_url.py @@ -1,7 +1,7 @@ from aws_lambda_powertools.utilities.parser import envelopes, parse from aws_lambda_powertools.utilities.parser.models import LambdaFunctionUrlModel from tests.functional.utils import load_event -from tests.unit.parser.schemas import MyALambdaFuncUrlBusiness +from tests.unit.parser._pydantic.schemas import MyALambdaFuncUrlBusiness def test_lambda_func_url_event_with_envelope(): diff --git a/tests/unit/parser/test_s3.py b/tests/unit/parser/_pydantic/test_s3.py similarity index 100% rename from tests/unit/parser/test_s3.py rename to tests/unit/parser/_pydantic/test_s3.py diff --git a/tests/unit/parser/test_s3_batch_operation.py b/tests/unit/parser/_pydantic/test_s3_batch_operation.py similarity index 100% rename from tests/unit/parser/test_s3_batch_operation.py rename to tests/unit/parser/_pydantic/test_s3_batch_operation.py diff --git a/tests/unit/parser/test_s3_notification.py b/tests/unit/parser/_pydantic/test_s3_notification.py similarity index 100% rename from tests/unit/parser/test_s3_notification.py rename to tests/unit/parser/_pydantic/test_s3_notification.py diff --git a/tests/unit/parser/test_s3_object_event.py b/tests/unit/parser/_pydantic/test_s3_object_event.py similarity index 100% rename from tests/unit/parser/test_s3_object_event.py rename to tests/unit/parser/_pydantic/test_s3_object_event.py diff --git a/tests/unit/parser/test_ses.py b/tests/unit/parser/_pydantic/test_ses.py similarity index 100% rename from tests/unit/parser/test_ses.py rename to tests/unit/parser/_pydantic/test_ses.py diff --git a/tests/unit/parser/test_sns.py b/tests/unit/parser/_pydantic/test_sns.py similarity index 98% rename from tests/unit/parser/test_sns.py rename to tests/unit/parser/_pydantic/test_sns.py index 9b925d5fa76..cfb0a5a820b 100644 --- a/tests/unit/parser/test_sns.py +++ b/tests/unit/parser/_pydantic/test_sns.py @@ -5,7 +5,7 @@ from aws_lambda_powertools.utilities.parser import ValidationError, envelopes, parse from tests.functional.utils import load_event from tests.functional.validator.conftest import sns_event # noqa: F401 -from tests.unit.parser.schemas import MyAdvancedSnsBusiness, MySnsBusiness +from tests.unit.parser._pydantic.schemas import MyAdvancedSnsBusiness, MySnsBusiness def test_handle_sns_trigger_event_json_body(sns_event): # noqa: F811 diff --git a/tests/unit/parser/test_sqs.py b/tests/unit/parser/_pydantic/test_sqs.py similarity index 98% rename from tests/unit/parser/test_sqs.py rename to tests/unit/parser/_pydantic/test_sqs.py index d28f1093d15..44fe44839ae 100644 --- a/tests/unit/parser/test_sqs.py +++ b/tests/unit/parser/_pydantic/test_sqs.py @@ -4,7 +4,7 @@ from aws_lambda_powertools.utilities.parser.models import SqsModel from tests.functional.utils import load_event from tests.functional.validator.conftest import sqs_event # noqa: F401 -from tests.unit.parser.schemas import MyAdvancedSqsBusiness, MySqsBusiness +from tests.unit.parser._pydantic.schemas import MyAdvancedSqsBusiness, MySqsBusiness def test_handle_sqs_trigger_event_json_body(sqs_event): # noqa: F811 diff --git a/tests/unit/parser/test_vpc_lattice.py b/tests/unit/parser/_pydantic/test_vpc_lattice.py similarity index 95% rename from tests/unit/parser/test_vpc_lattice.py rename to tests/unit/parser/_pydantic/test_vpc_lattice.py index e5dfedfb445..0ffd919e4db 100644 --- a/tests/unit/parser/test_vpc_lattice.py +++ b/tests/unit/parser/_pydantic/test_vpc_lattice.py @@ -3,7 +3,7 @@ from aws_lambda_powertools.utilities.parser import ValidationError, envelopes, parse from aws_lambda_powertools.utilities.parser.models import VpcLatticeModel from tests.functional.utils import load_event -from tests.unit.parser.schemas import MyVpcLatticeBusiness +from tests.unit.parser._pydantic.schemas import MyVpcLatticeBusiness def test_vpc_lattice_event_with_envelope(): diff --git a/tests/unit/parser/test_vpc_latticev2.py b/tests/unit/parser/_pydantic/test_vpc_latticev2.py similarity index 97% rename from tests/unit/parser/test_vpc_latticev2.py rename to tests/unit/parser/_pydantic/test_vpc_latticev2.py index 78d93fde041..d21dd84abe6 100644 --- a/tests/unit/parser/test_vpc_latticev2.py +++ b/tests/unit/parser/_pydantic/test_vpc_latticev2.py @@ -3,7 +3,7 @@ from aws_lambda_powertools.utilities.parser import ValidationError, envelopes, parse from aws_lambda_powertools.utilities.parser.models import VpcLatticeV2Model from tests.functional.utils import load_event -from tests.unit.parser.schemas import MyVpcLatticeBusiness +from tests.unit.parser._pydantic.schemas import MyVpcLatticeBusiness def test_vpc_lattice_v2_event_with_envelope():