From daa03407dddfbf4ffa5bebaf2f7a9be7e6842a4f Mon Sep 17 00:00:00 2001 From: Anisa Oshafi Date: Wed, 28 May 2025 10:00:18 +0200 Subject: [PATCH 1/2] Fix MA/MR pipeline for EC2 tests --- tests/aws/services/ec2/test_ec2.py | 23 +++++++++++++------ tests/aws/services/ec2/test_ec2.snapshot.json | 6 ++--- .../aws/services/ec2/test_ec2.validation.json | 6 ++--- 3 files changed, 22 insertions(+), 13 deletions(-) diff --git a/tests/aws/services/ec2/test_ec2.py b/tests/aws/services/ec2/test_ec2.py index 9a308bcb500b8..0a8ee7f66135b 100644 --- a/tests/aws/services/ec2/test_ec2.py +++ b/tests/aws/services/ec2/test_ec2.py @@ -11,7 +11,7 @@ random_vpc_id, ) -from localstack.constants import TAG_KEY_CUSTOM_ID +from localstack.constants import AWS_REGION_US_EAST_1, TAG_KEY_CUSTOM_ID from localstack.services.ec2.patches import SecurityGroupIdentifier, VpcIdentifier from localstack.testing.pytest import markers from localstack.utils.id_generator import localstack_id_manager @@ -986,8 +986,11 @@ def test_raise_create_volume_without_size(snapshot, aws_client): ] ) @markers.aws.validated -def test_describe_availability_zones_filter_with_zone_names(snapshot, aws_client): - availability_zones = aws_client.ec2.describe_availability_zones(ZoneNames=["us-east-1a"]) +def test_describe_availability_zones_filter_with_zone_names(snapshot, aws_client_factory): + snapshot.add_transformer(snapshot.transform.regex(AWS_REGION_US_EAST_1, "")) + + ec2_client = aws_client_factory(region_name="us-east-1").ec2 + availability_zones = ec2_client.describe_availability_zones(ZoneNames=["us-east-1a"]) snapshot.match("availability_zones", availability_zones) @@ -1001,8 +1004,11 @@ def test_describe_availability_zones_filter_with_zone_names(snapshot, aws_client ] ) @markers.aws.validated -def test_describe_availability_zones_filter_with_zone_ids(snapshot, aws_client): - availability_zones = aws_client.ec2.describe_availability_zones(ZoneIds=["use1-az1"]) +def test_describe_availability_zones_filter_with_zone_ids(snapshot, aws_client_factory): + snapshot.add_transformer(snapshot.transform.regex(AWS_REGION_US_EAST_1, "")) + + ec2_client = aws_client_factory(region_name="us-east-1").ec2 + availability_zones = ec2_client.describe_availability_zones(ZoneIds=["use1-az1"]) snapshot.match("availability_zones", availability_zones) @@ -1016,8 +1022,11 @@ def test_describe_availability_zones_filter_with_zone_ids(snapshot, aws_client): ] ) @markers.aws.validated -def test_describe_availability_zones_filters(snapshot, aws_client): - availability_zones = aws_client.ec2.describe_availability_zones( +def test_describe_availability_zones_filters(snapshot, aws_client_factory): + snapshot.add_transformer(snapshot.transform.regex(AWS_REGION_US_EAST_1, "")) + + ec2_client = aws_client_factory(region_name="us-east-1").ec2 + availability_zones = ec2_client.describe_availability_zones( Filters=[{"Name": "zone-name", "Values": ["us-east-1a"]}] ) snapshot.match("availability_zones", availability_zones) diff --git a/tests/aws/services/ec2/test_ec2.snapshot.json b/tests/aws/services/ec2/test_ec2.snapshot.json index a0e49176ceb28..01e095a058ef6 100644 --- a/tests/aws/services/ec2/test_ec2.snapshot.json +++ b/tests/aws/services/ec2/test_ec2.snapshot.json @@ -421,7 +421,7 @@ } }, "tests/aws/services/ec2/test_ec2.py::test_describe_availability_zones_filter_with_zone_names": { - "recorded-date": "26-05-2025, 13:36:03", + "recorded-date": "28-05-2025, 07:54:38", "recorded-content": { "availability_zones": { "AvailabilityZones": [ @@ -446,7 +446,7 @@ } }, "tests/aws/services/ec2/test_ec2.py::test_describe_availability_zones_filter_with_zone_ids": { - "recorded-date": "26-05-2025, 13:34:49", + "recorded-date": "28-05-2025, 07:57:01", "recorded-content": { "availability_zones": { "AvailabilityZones": [ @@ -471,7 +471,7 @@ } }, "tests/aws/services/ec2/test_ec2.py::test_describe_availability_zones_filters": { - "recorded-date": "26-05-2025, 13:48:29", + "recorded-date": "28-05-2025, 07:58:46", "recorded-content": { "availability_zones": { "AvailabilityZones": [ diff --git a/tests/aws/services/ec2/test_ec2.validation.json b/tests/aws/services/ec2/test_ec2.validation.json index d5febb36639f1..50dbe9b473747 100644 --- a/tests/aws/services/ec2/test_ec2.validation.json +++ b/tests/aws/services/ec2/test_ec2.validation.json @@ -18,13 +18,13 @@ "last_validated_date": "2024-06-07T21:28:25+00:00" }, "tests/aws/services/ec2/test_ec2.py::test_describe_availability_zones_filter_with_zone_ids": { - "last_validated_date": "2025-05-26T13:34:49+00:00" + "last_validated_date": "2025-05-28T07:57:01+00:00" }, "tests/aws/services/ec2/test_ec2.py::test_describe_availability_zones_filter_with_zone_names": { - "last_validated_date": "2025-05-26T13:36:03+00:00" + "last_validated_date": "2025-05-28T07:54:58+00:00" }, "tests/aws/services/ec2/test_ec2.py::test_describe_availability_zones_filters": { - "last_validated_date": "2025-05-26T13:48:29+00:00" + "last_validated_date": "2025-05-28T07:58:46+00:00" }, "tests/aws/services/ec2/test_ec2.py::test_raise_create_volume_without_size": { "last_validated_date": "2025-02-04T12:53:29+00:00" From 5eba01d8669962463c2f4a1fc68446a905b54e1d Mon Sep 17 00:00:00 2001 From: Anisa Oshafi Date: Wed, 28 May 2025 11:20:38 +0200 Subject: [PATCH 2/2] Reuse region import in aws client --- tests/aws/services/ec2/test_ec2.py | 6 +++--- tests/aws/services/ec2/test_ec2.snapshot.json | 6 +++--- tests/aws/services/ec2/test_ec2.validation.json | 6 +++--- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/tests/aws/services/ec2/test_ec2.py b/tests/aws/services/ec2/test_ec2.py index 0a8ee7f66135b..bc809e1edd022 100644 --- a/tests/aws/services/ec2/test_ec2.py +++ b/tests/aws/services/ec2/test_ec2.py @@ -989,7 +989,7 @@ def test_raise_create_volume_without_size(snapshot, aws_client): def test_describe_availability_zones_filter_with_zone_names(snapshot, aws_client_factory): snapshot.add_transformer(snapshot.transform.regex(AWS_REGION_US_EAST_1, "")) - ec2_client = aws_client_factory(region_name="us-east-1").ec2 + ec2_client = aws_client_factory(region_name=AWS_REGION_US_EAST_1).ec2 availability_zones = ec2_client.describe_availability_zones(ZoneNames=["us-east-1a"]) snapshot.match("availability_zones", availability_zones) @@ -1007,7 +1007,7 @@ def test_describe_availability_zones_filter_with_zone_names(snapshot, aws_client def test_describe_availability_zones_filter_with_zone_ids(snapshot, aws_client_factory): snapshot.add_transformer(snapshot.transform.regex(AWS_REGION_US_EAST_1, "")) - ec2_client = aws_client_factory(region_name="us-east-1").ec2 + ec2_client = aws_client_factory(region_name=AWS_REGION_US_EAST_1).ec2 availability_zones = ec2_client.describe_availability_zones(ZoneIds=["use1-az1"]) snapshot.match("availability_zones", availability_zones) @@ -1025,7 +1025,7 @@ def test_describe_availability_zones_filter_with_zone_ids(snapshot, aws_client_f def test_describe_availability_zones_filters(snapshot, aws_client_factory): snapshot.add_transformer(snapshot.transform.regex(AWS_REGION_US_EAST_1, "")) - ec2_client = aws_client_factory(region_name="us-east-1").ec2 + ec2_client = aws_client_factory(region_name=AWS_REGION_US_EAST_1).ec2 availability_zones = ec2_client.describe_availability_zones( Filters=[{"Name": "zone-name", "Values": ["us-east-1a"]}] ) diff --git a/tests/aws/services/ec2/test_ec2.snapshot.json b/tests/aws/services/ec2/test_ec2.snapshot.json index 01e095a058ef6..026c53fa57960 100644 --- a/tests/aws/services/ec2/test_ec2.snapshot.json +++ b/tests/aws/services/ec2/test_ec2.snapshot.json @@ -421,7 +421,7 @@ } }, "tests/aws/services/ec2/test_ec2.py::test_describe_availability_zones_filter_with_zone_names": { - "recorded-date": "28-05-2025, 07:54:38", + "recorded-date": "28-05-2025, 09:16:53", "recorded-content": { "availability_zones": { "AvailabilityZones": [ @@ -446,7 +446,7 @@ } }, "tests/aws/services/ec2/test_ec2.py::test_describe_availability_zones_filter_with_zone_ids": { - "recorded-date": "28-05-2025, 07:57:01", + "recorded-date": "28-05-2025, 09:17:24", "recorded-content": { "availability_zones": { "AvailabilityZones": [ @@ -471,7 +471,7 @@ } }, "tests/aws/services/ec2/test_ec2.py::test_describe_availability_zones_filters": { - "recorded-date": "28-05-2025, 07:58:46", + "recorded-date": "28-05-2025, 09:17:47", "recorded-content": { "availability_zones": { "AvailabilityZones": [ diff --git a/tests/aws/services/ec2/test_ec2.validation.json b/tests/aws/services/ec2/test_ec2.validation.json index 50dbe9b473747..c26b3e4033cc4 100644 --- a/tests/aws/services/ec2/test_ec2.validation.json +++ b/tests/aws/services/ec2/test_ec2.validation.json @@ -18,13 +18,13 @@ "last_validated_date": "2024-06-07T21:28:25+00:00" }, "tests/aws/services/ec2/test_ec2.py::test_describe_availability_zones_filter_with_zone_ids": { - "last_validated_date": "2025-05-28T07:57:01+00:00" + "last_validated_date": "2025-05-28T09:17:24+00:00" }, "tests/aws/services/ec2/test_ec2.py::test_describe_availability_zones_filter_with_zone_names": { - "last_validated_date": "2025-05-28T07:54:58+00:00" + "last_validated_date": "2025-05-28T09:16:53+00:00" }, "tests/aws/services/ec2/test_ec2.py::test_describe_availability_zones_filters": { - "last_validated_date": "2025-05-28T07:58:46+00:00" + "last_validated_date": "2025-05-28T09:17:56+00:00" }, "tests/aws/services/ec2/test_ec2.py::test_raise_create_volume_without_size": { "last_validated_date": "2025-02-04T12:53:29+00:00"