-
-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Include CFn tests in test selection #12518
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
2164675
to
a7b9f5a
Compare
LocalStack Community integration with Pro 2 files ±0 2 suites ±0 1h 53m 40s ⏱️ - 2m 43s Results for commit 0a67334. ± Comparison against base commit 5ad7f8e. This pull request removes 136 and adds 133 tests. Note that renamed tests count towards both.
This pull request removes 5 skipped tests and adds 5 skipped tests. Note that renamed tests count towards both.
♻️ This comment has been updated with latest results. |
3ee0658
to
10956fa
Compare
S3 Image Test Results (AMD64 / ARM64) 2 files 2 suites 9m 7s ⏱️ Results for commit 4aeada4. ♻️ This comment has been updated with latest results. |
0a67334
to
5432c3f
Compare
# Conflicts: # tests/aws/templates/opensearch_domain_alternative_types.yml diff --git c/tests/aws/services/cloudwatch/resources/test_cloudwatch.snapshot.json i/tests/aws/services/cloudwatch/resources/test_cloudwatch.snapshot.json new file mode 100644 index 000000000000..967da1cec049 --- /dev/null +++ i/tests/aws/services/cloudwatch/resources/test_cloudwatch.snapshot.json @@ -0,0 +1,115 @@ +{ + "tests/aws/services/cloudwatch/resources/test_cloudwatch.py::test_alarm_creation": { + "recorded-date": "11-04-2025, 12:11:07", + "recorded-content": { + "alarm_outputs": { + "AlarmArnFromAtt": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:<resource:1>", + "AlarmName": "<resource:1>" + } + } + }, + "tests/aws/services/cloudwatch/resources/test_cloudwatch.py::test_composite_alarm_creation": { + "recorded-date": "11-04-2025, 12:12:14", + "recorded-content": { + "composite_alarm": [ + { + "ActionsEnabled": true, + "AlarmActions": [ + "arn:<partition>:sns:<region>:111111111111:<alarm-action-name:1>" + ], + "AlarmArn": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:HighResourceUsage", + "AlarmConfigurationUpdatedTimestamp": "timestamp", + "AlarmDescription": "Indicates that the system resource usage is high while no known deployment is in progress", + "AlarmName": "HighResourceUsage", + "AlarmRule": "(ALARM(HighCPUUsage) OR ALARM(HighMemoryUsage))", + "InsufficientDataActions": [], + "OKActions": [], + "StateReason": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:HighResourceUsage was created and its alarm rule evaluates to OK", + "StateReasonData": { + "triggeringAlarms": [ + { + "arn": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:HighMemoryUsage", + "state": { + "value": "INSUFFICIENT_DATA", + "timestamp": "date" + } + }, + { + "arn": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:HighCPUUsage", + "state": { + "value": "INSUFFICIENT_DATA", + "timestamp": "date" + } + } + ] + }, + "StateUpdatedTimestamp": "timestamp", + "StateValue": "OK", + "StateTransitionedTimestamp": "timestamp" + } + ], + "metric_alarm": [ + { + "AlarmName": "HighMemoryUsage", + "AlarmArn": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:HighMemoryUsage", + "AlarmDescription": "Memory usage is high", + "AlarmConfigurationUpdatedTimestamp": "timestamp", + "ActionsEnabled": true, + "OKActions": [], + "AlarmActions": [], + "InsufficientDataActions": [], + "StateValue": "INSUFFICIENT_DATA", + "StateReason": "Unchecked: Initial alarm creation", + "StateUpdatedTimestamp": "timestamp", + "MetricName": "MemoryUsage", + "Namespace": "CustomNamespace", + "Statistic": "Average", + "Dimensions": [], + "Period": 60, + "EvaluationPeriods": 1, + "Threshold": 65.0, + "ComparisonOperator": "GreaterThanThreshold", + "TreatMissingData": "breaching", + "StateTransitionedTimestamp": "timestamp" + } + ] + } + }, + "tests/aws/services/cloudwatch/resources/test_cloudwatch.py::test_alarm_ext_statistic": { + "recorded-date": "11-04-2025, 12:12:29", + "recorded-content": { + "simple_alarm": [ + { + "AlarmName": "<alarm-name:1>", + "AlarmArn": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:<alarm-name:1>", + "AlarmDescription": "uses extended statistic", + "AlarmConfigurationUpdatedTimestamp": "timestamp", + "ActionsEnabled": true, + "OKActions": [], + "AlarmActions": [], + "InsufficientDataActions": [], + "StateValue": "INSUFFICIENT_DATA", + "StateReason": "Unchecked: Initial alarm creation", + "StateUpdatedTimestamp": "timestamp", + "MetricName": "Duration", + "Namespace": "<namespace:1>", + "ExtendedStatistic": "p99", + "Dimensions": [ + { + "Name": "FunctionName", + "Value": "my-function" + } + ], + "Period": 300, + "Unit": "Count", + "EvaluationPeriods": 3, + "DatapointsToAlarm": 3, + "Threshold": 10.0, + "ComparisonOperator": "GreaterThanOrEqualToThreshold", + "TreatMissingData": "ignore", + "StateTransitionedTimestamp": "timestamp" + } + ] + } + } +} diff --git c/tests/aws/services/cloudwatch/resources/test_cloudwatch.validation.json i/tests/aws/services/cloudwatch/resources/test_cloudwatch.validation.json new file mode 100644 index 000000000000..69fc7229f988 --- /dev/null +++ i/tests/aws/services/cloudwatch/resources/test_cloudwatch.validation.json @@ -0,0 +1,11 @@ +{ + "tests/aws/services/cloudwatch/resources/test_cloudwatch.py::test_alarm_creation": { + "last_validated_date": "2025-04-11T12:11:07+00:00" + }, + "tests/aws/services/cloudwatch/resources/test_cloudwatch.py::test_alarm_ext_statistic": { + "last_validated_date": "2025-04-11T12:12:29+00:00" + }, + "tests/aws/services/cloudwatch/resources/test_cloudwatch.py::test_composite_alarm_creation": { + "last_validated_date": "2025-04-11T12:12:14+00:00" + } +} diff --git c/tests/aws/services/dynamodb/resources/test_dynamodb.py i/tests/aws/services/dynamodb/resources/test_dynamodb.py index 8aa572c62bf0..43c0bb7ecc76 100644 --- c/tests/aws/services/dynamodb/resources/test_dynamodb.py +++ i/tests/aws/services/dynamodb/resources/test_dynamodb.py @@ -123,12 +123,13 @@ def test_billing_mode_as_conditional(deploy_cfn_template, snapshot, aws_client, "$..Table.Replicas", ] ) -def test_global_table(deploy_cfn_template, snapshot, aws_client): +def test_global_table(deploy_cfn_template, snapshot, aws_client, region_name): snapshot.add_transformer(snapshot.transform.dynamodb_api()) stack = deploy_cfn_template( template_path=os.path.join( os.path.dirname(__file__), "../../../templates/dynamodb_global_table.yml" ), + parameters={"ReplicaRegion": region_name}, ) snapshot.add_transformer(snapshot.transform.key_value("TableName", "table-name")) response = aws_client.dynamodb.describe_table(TableName=stack.outputs["TableName"]) diff --git c/tests/aws/services/dynamodb/resources/test_dynamodb.snapshot.json i/tests/aws/services/dynamodb/resources/test_dynamodb.snapshot.json new file mode 100644 index 000000000000..1bb2728747ac --- /dev/null +++ i/tests/aws/services/dynamodb/resources/test_dynamodb.snapshot.json @@ -0,0 +1,384 @@ +{ + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_default_name_for_table": { + "recorded-date": "11-04-2025, 12:15:43", + "recorded-content": { + "table_description": { + "Table": { + "AttributeDefinitions": [ + { + "AttributeName": "keyName", + "AttributeType": "S" + } + ], + "CreationDateTime": "datetime", + "DeletionProtectionEnabled": false, + "ItemCount": 0, + "KeySchema": [ + { + "AttributeName": "keyName", + "KeyType": "HASH" + } + ], + "ProvisionedThroughput": { + "NumberOfDecreasesToday": 0, + "ReadCapacityUnits": 5, + "WriteCapacityUnits": 5 + }, + "TableArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>", + "TableId": "<uuid:1>", + "TableName": "<table-name:1>", + "TableSizeBytes": 0, + "TableStatus": "ACTIVE", + "WarmThroughput": { + "ReadUnitsPerSecond": 5, + "Status": "ACTIVE", + "WriteUnitsPerSecond": 5 + } + }, + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + }, + "list_tags_of_resource": { + "Tags": [ + { + "Key": "TagKey1", + "Value": "TagValue1" + }, + { + "Key": "TagKey2", + "Value": "TagValue2" + } + ], + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_billing_mode_as_conditional[PROVISIONED]": { + "recorded-date": "11-04-2025, 12:16:18", + "recorded-content": { + "table_description": { + "Table": { + "AttributeDefinitions": [ + { + "AttributeName": "id", + "AttributeType": "S" + } + ], + "CreationDateTime": "datetime", + "DeletionProtectionEnabled": false, + "ItemCount": 0, + "KeySchema": [ + { + "AttributeName": "id", + "KeyType": "HASH" + } + ], + "LatestStreamArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>/stream/<latest-stream-label:1>", + "LatestStreamLabel": "<latest-stream-label:1>", + "ProvisionedThroughput": { + "NumberOfDecreasesToday": 0, + "ReadCapacityUnits": 5, + "WriteCapacityUnits": 5 + }, + "StreamSpecification": { + "StreamEnabled": true, + "StreamViewType": "NEW_AND_OLD_IMAGES" + }, + "TableArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>", + "TableId": "<uuid:1>", + "TableName": "<table-name:1>", + "TableSizeBytes": 0, + "TableStatus": "ACTIVE", + "WarmThroughput": { + "ReadUnitsPerSecond": 5, + "Status": "ACTIVE", + "WriteUnitsPerSecond": 5 + } + }, + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_billing_mode_as_conditional[PAY_PER_REQUEST]": { + "recorded-date": "11-04-2025, 12:16:53", + "recorded-content": { + "table_description": { + "Table": { + "AttributeDefinitions": [ + { + "AttributeName": "id", + "AttributeType": "S" + } + ], + "BillingModeSummary": { + "BillingMode": "PAY_PER_REQUEST", + "LastUpdateToPayPerRequestDateTime": "datetime" + }, + "CreationDateTime": "datetime", + "DeletionProtectionEnabled": false, + "ItemCount": 0, + "KeySchema": [ + { + "AttributeName": "id", + "KeyType": "HASH" + } + ], + "LatestStreamArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>/stream/<latest-stream-label:1>", + "LatestStreamLabel": "<latest-stream-label:1>", + "ProvisionedThroughput": { + "NumberOfDecreasesToday": 0, + "ReadCapacityUnits": 0, + "WriteCapacityUnits": 0 + }, + "StreamSpecification": { + "StreamEnabled": true, + "StreamViewType": "NEW_AND_OLD_IMAGES" + }, + "TableArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>", + "TableId": "<uuid:1>", + "TableName": "<table-name:1>", + "TableSizeBytes": 0, + "TableStatus": "ACTIVE", + "WarmThroughput": { + "ReadUnitsPerSecond": 12000, + "Status": "ACTIVE", + "WriteUnitsPerSecond": 4000 + } + }, + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_global_table": { + "recorded-date": "11-04-2025, 12:37:54", + "recorded-content": { + "table_description": { + "Table": { + "AttributeDefinitions": [ + { + "AttributeName": "keyName", + "AttributeType": "S" + } + ], + "BillingModeSummary": { + "BillingMode": "PAY_PER_REQUEST", + "LastUpdateToPayPerRequestDateTime": "datetime" + }, + "CreationDateTime": "datetime", + "DeletionProtectionEnabled": false, + "ItemCount": 0, + "KeySchema": [ + { + "AttributeName": "keyName", + "KeyType": "HASH" + } + ], + "ProvisionedThroughput": { + "NumberOfDecreasesToday": 0, + "ReadCapacityUnits": 0, + "WriteCapacityUnits": 0 + }, + "TableArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>", + "TableId": "<uuid:1>", + "TableName": "<table-name:1>", + "TableSizeBytes": 0, + "TableStatus": "ACTIVE", + "WarmThroughput": { + "ReadUnitsPerSecond": 12000, + "Status": "ACTIVE", + "WriteUnitsPerSecond": 4000 + } + }, + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_ttl_cdk": { + "recorded-date": "11-04-2025, 12:41:43", + "recorded-content": { + "table": { + "TimeToLiveDescription": { + "AttributeName": "expire_at", + "TimeToLiveStatus": "ENABLED" + }, + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_table_with_ttl_and_sse": { + "recorded-date": "11-04-2025, 12:42:04", + "recorded-content": { + "table_description": { + "Table": { + "AttributeDefinitions": [ + { + "AttributeName": "pk", + "AttributeType": "S" + }, + { + "AttributeName": "sk", + "AttributeType": "S" + } + ], + "CreationDateTime": "datetime", + "DeletionProtectionEnabled": false, + "ItemCount": 0, + "KeySchema": [ + { + "AttributeName": "pk", + "KeyType": "HASH" + }, + { + "AttributeName": "sk", + "KeyType": "RANGE" + } + ], + "ProvisionedThroughput": { + "NumberOfDecreasesToday": 0, + "ReadCapacityUnits": 1, + "WriteCapacityUnits": 1 + }, + "SSEDescription": { + "KMSMasterKeyArn": "<kms-arn:1>", + "SSEType": "KMS", + "Status": "ENABLED" + }, + "TableArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>", + "TableId": "<uuid:1>", + "TableName": "<table-name:1>", + "TableSizeBytes": 0, + "TableStatus": "ACTIVE", + "WarmThroughput": { + "ReadUnitsPerSecond": 1, + "Status": "ACTIVE", + "WriteUnitsPerSecond": 1 + } + }, + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_global_table_with_ttl_and_sse": { + "recorded-date": "11-04-2025, 12:42:49", + "recorded-content": { + "table_description": { + "Table": { + "AttributeDefinitions": [ + { + "AttributeName": "gsi1pk", + "AttributeType": "S" + }, + { + "AttributeName": "gsi1sk", + "AttributeType": "S" + }, + { + "AttributeName": "pk", + "AttributeType": "S" + }, + { + "AttributeName": "sk", + "AttributeType": "S" + } + ], + "BillingModeSummary": { + "BillingMode": "PAY_PER_REQUEST", + "LastUpdateToPayPerRequestDateTime": "datetime" + }, + "CreationDateTime": "datetime", + "DeletionProtectionEnabled": false, + "GlobalSecondaryIndexes": [ + { + "IndexArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>/index/GSI1", + "IndexName": "GSI1", + "IndexSizeBytes": 0, + "IndexStatus": "ACTIVE", + "ItemCount": 0, + "KeySchema": [ + { + "AttributeName": "gsi1pk", + "KeyType": "HASH" + }, + { + "AttributeName": "gsi1sk", + "KeyType": "RANGE" + } + ], + "Projection": { + "ProjectionType": "ALL" + }, + "ProvisionedThroughput": { + "NumberOfDecreasesToday": 0, + "ReadCapacityUnits": 0, + "WriteCapacityUnits": 0 + }, + "WarmThroughput": { + "ReadUnitsPerSecond": 12000, + "Status": "ACTIVE", + "WriteUnitsPerSecond": 4000 + } + } + ], + "ItemCount": 0, + "KeySchema": [ + { + "AttributeName": "pk", + "KeyType": "HASH" + }, + { + "AttributeName": "sk", + "KeyType": "RANGE" + } + ], + "ProvisionedThroughput": { + "NumberOfDecreasesToday": 0, + "ReadCapacityUnits": 0, + "WriteCapacityUnits": 0 + }, + "SSEDescription": { + "KMSMasterKeyArn": "<kms-arn:1>", + "SSEType": "KMS", + "Status": "ENABLED" + }, + "TableArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>", + "TableClassSummary": { + "TableClass": "STANDARD" + }, + "TableId": "<uuid:1>", + "TableName": "<table-name:1>", + "TableSizeBytes": 0, + "TableStatus": "ACTIVE", + "WarmThroughput": { + "ReadUnitsPerSecond": 12000, + "Status": "ACTIVE", + "WriteUnitsPerSecond": 4000 + } + }, + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + } +} diff --git c/tests/aws/services/dynamodb/resources/test_dynamodb.validation.json i/tests/aws/services/dynamodb/resources/test_dynamodb.validation.json new file mode 100644 index 000000000000..a29ab85e13d4 --- /dev/null +++ i/tests/aws/services/dynamodb/resources/test_dynamodb.validation.json @@ -0,0 +1,29 @@ +{ + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_billing_mode_as_conditional[PAY_PER_REQUEST]": { + "last_validated_date": "2025-04-11T12:16:53+00:00" + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_billing_mode_as_conditional[PROVISIONED]": { + "last_validated_date": "2025-04-11T12:16:18+00:00" + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_default_name_for_table": { + "last_validated_date": "2025-04-11T12:15:43+00:00" + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_deploy_stack_with_dynamodb_table": { + "last_validated_date": "2025-04-11T12:14:03+00:00" + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_global_table": { + "last_validated_date": "2025-04-11T12:37:54+00:00" + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_global_table_with_ttl_and_sse": { + "last_validated_date": "2025-04-11T12:42:49+00:00" + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_globalindex_read_write_provisioned_throughput_dynamodb_table": { + "last_validated_date": "2025-04-11T12:14:46+00:00" + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_table_with_ttl_and_sse": { + "last_validated_date": "2025-04-11T12:42:04+00:00" + }, + "tests/aws/services/dynamodb/resources/test_dynamodb.py::test_ttl_cdk": { + "last_validated_date": "2025-04-11T12:41:43+00:00" + } +} diff --git c/tests/aws/services/ec2/resources/test_ec2.snapshot.json i/tests/aws/services/ec2/resources/test_ec2.snapshot.json new file mode 100644 index 000000000000..5860c71ea028 --- /dev/null +++ i/tests/aws/services/ec2/resources/test_ec2.snapshot.json @@ -0,0 +1,303 @@ +{ + "tests/aws/services/ec2/resources/test_ec2.py::test_simple_route_table_creation_without_vpc": { + "recorded-date": "11-04-2025, 12:43:43", + "recorded-content": { + "tags": { + "Name": "Suspicious Route Table" + }, + "route_table": { + "Associations": [], + "OwnerId": "111111111111", + "PropagatingVgws": [], + "RouteTableId": "<vpc-id:2>", + "Routes": [ + { + "DestinationCidrBlock": "10.0.0.0/16", + "GatewayId": "local", + "Origin": "CreateRouteTable", + "State": "active" + } + ], + "VpcId": "<vpc-id:1>" + } + } + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_simple_route_table_creation": { + "recorded-date": "11-04-2025, 12:44:23", + "recorded-content": { + "tags": { + "Name": "Suspicious Route table" + }, + "route_table": { + "Associations": [], + "OwnerId": "111111111111", + "PropagatingVgws": [], + "RouteTableId": "<vpc-id:2>", + "Routes": [ + { + "DestinationCidrBlock": "10.0.0.0/16", + "GatewayId": "local", + "Origin": "CreateRouteTable", + "State": "active" + } + ], + "VpcId": "<vpc-id:1>" + } + } + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_cfn_with_multiple_route_table_associations": { + "recorded-date": "11-04-2025, 12:46:42", + "recorded-content": { + "route_table": { + "Associations": [ + { + "AssociationState": { + "State": "associated" + }, + "Main": false, + "RouteTableAssociationId": "<route-table-association-id:1>", + "RouteTableId": "<route-table-id:1>", + "SubnetId": "<subnet-id:1>" + }, + { + "AssociationState": { + "State": "associated" + }, + "Main": false, + "RouteTableAssociationId": "<route-table-association-id:2>", + "RouteTableId": "<route-table-id:1>", + "SubnetId": "<subnet-id:2>" + } + ], + "OwnerId": "111111111111", + "PropagatingVgws": [], + "RouteTableId": "<route-table-id:1>", + "Routes": [ + { + "DestinationCidrBlock": "100.0.0.0/20", + "GatewayId": "local", + "Origin": "CreateRouteTable", + "State": "active" + } + ], + "Tags": [ + { + "Key": "env", + "Value": "production" + }, + { + "Key": "aws:cloudformation:logical-id", + "Value": "RouteTable" + }, + { + "Key": "aws:cloudformation:stack-name", + "Value": "stack-0daec207" + }, + { + "Key": "aws:cloudformation:stack-id", + "Value": "arn:<partition>:cloudformation:<region>:111111111111:stack/stack-0daec207/f031e3b0-16d2-11f0-b66d-0aa58e870677" + } + ], + "VpcId": "<vpc-id:1>" + } + } + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_internet_gateway_ref_and_attr": { + "recorded-date": "11-04-2025, 12:47:30", + "recorded-content": { + "outputs": { + "IdAttachment": "<internet-gateway-ref:1>", + "RefAttachment": "<internet-gateway-ref:1>" + }, + "description": { + "DriftInformation": { + "StackResourceDriftStatus": "NOT_CHECKED" + }, + "LastUpdatedTimestamp": "<datetime>", + "LogicalResourceId": "Gateway", + "Metadata": {}, + "PhysicalResourceId": "<internet-gateway-ref:1>", + "ResourceStatus": "CREATE_COMPLETE", + "ResourceType": "AWS::EC2::InternetGateway", + "StackId": "arn:<partition>:cloudformation:<region>:111111111111:stack/<stack-name:1>/<resource:1>", + "StackName": "<stack-name:1>" + } + } + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_dhcp_options": { + "recorded-date": "11-04-2025, 12:47:51", + "recorded-content": { + "description": { + "DhcpConfigurations": [ + { + "Key": "domain-name", + "Values": [ + { + "Value": "example.com" + } + ] + }, + { + "Key": "domain-name-servers", + "Values": [ + { + "Value": "AmazonProvidedDNS" + } + ] + }, + { + "Key": "netbios-name-servers", + "Values": [ + { + "Value": "10.2.5.1" + } + ] + }, + { + "Key": "netbios-node-type", + "Values": [ + { + "Value": "2" + } + ] + }, + { + "Key": "ntp-servers", + "Values": [ + { + "Value": "10.2.5.1" + } + ] + } + ], + "DhcpOptionsId": "<dhcp-options-id:1>", + "OwnerId": "111111111111", + "Tags": [ + { + "Key": "aws:cloudformation:stack-id", + "Value": "arn:<partition>:cloudformation:<region>:111111111111:stack/stack-c8574f52/254932b0-16d3-11f0-bbb9-02c9293d2a15" + }, + { + "Key": "aws:cloudformation:stack-name", + "Value": "stack-c8574f52" + }, + { + "Key": "aws:cloudformation:logical-id", + "Value": "myDhcpOptions" + }, + { + "Key": "project", + "Value": "123" + } + ] + } + } + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_transit_gateway_attachment": { + "recorded-date": "11-04-2025, 12:52:34", + "recorded-content": { + "attachment": { + "Association": { + "State": "associated", + "TransitGatewayRouteTableId": "<transit-gateway-route-table-id:1>" + }, + "CreationTime": "<datetime>", + "ResourceId": "<resource-id:1>", + "ResourceOwnerId": "111111111111", + "ResourceType": "vpc", + "State": "available", + "Tags": [ + { + "Key": "Name", + "Value": "example-tag" + } + ], + "TransitGatewayAttachmentId": "<transit-gateway-attachment-id:1>", + "TransitGatewayId": "<transit-gateway-id:1>", + "TransitGatewayOwnerId": "111111111111" + }, + "gateway": { + "CreationTime": "<datetime>", + "Description": "TGW Route Integration Test", + "Options": { + "AmazonSideAsn": 65000, + "AssociationDefaultRouteTableId": "<transit-gateway-route-table-id:1>", + "AutoAcceptSharedAttachments": "disable", + "DefaultRouteTableAssociation": "enable", + "DefaultRouteTablePropagation": "enable", + "DnsSupport": "enable", + "MulticastSupport": "disable", + "PropagationDefaultRouteTableId": "<transit-gateway-route-table-id:1>", + "SecurityGroupReferencingSupport": "disable", + "VpnEcmpSupport": "enable" + }, + "OwnerId": "111111111111", + "State": "available", + "Tags": [ + { + "Key": "Application", + "Value": "arn:<partition>:cloudformation:<region>:111111111111:stack/stack-dc38ff33/3089c090-16d3-11f0-9212-0a8f5c4c7c8b" + } + ], + "TransitGatewayArn": "arn:<partition>:ec2:<region>:111111111111:transit-gateway/<transit-gateway-id:1>", + "TransitGatewayId": "<transit-gateway-id:1>" + } + } + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_vpc_with_route_table": { + "recorded-date": "11-04-2025, 12:53:14", + "recorded-content": { + "route_table": { + "RouteTables": [ + { + "Associations": [], + "OwnerId": "111111111111", + "PropagatingVgws": [], + "RouteTableId": "<route-table-id:1>", + "Routes": [ + { + "DestinationCidrBlock": "100.0.0.0/20", + "GatewayId": "local", + "Origin": "CreateRouteTable", + "State": "active" + } + ], + "Tags": { + "aws:cloudformation:logical-id": "RouteTable", + "aws:cloudformation:stack-id": "<stack_id>", + "aws:cloudformation:stack-name": "<stack_name>", + "env": "production" + }, + "VpcId": "<vpc-id:1>" + } + ], + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_ec2_security_group_id_with_vpc": { + "recorded-date": "11-04-2025, 12:53:44", + "recorded-content": { + "references": { + "SGWithVpcIdGroupId": "<with-vpcid-group-id>", + "SGWithVpcIdRef": "<with-vpcid-group-id>", + "SGWithoutVpcIdGroupId": "<without-vpcid-group-id>", + "SGWithoutVpcIdRef": "<without-vpcid-group-name>" + } + } + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_keypair_create_import": { + "recorded-date": "11-04-2025, 12:53:59", + "recorded-content": { + "outputs": { + "GeneratedKeyPairFingerprint": "<fingerprint>", + "GeneratedKeyPairName": "<generated-key-name>", + "ImportedKeyPairFingerprint": "4LmcYnyBOqlloHZ5TKAxfa8BgMK2wL6WeOOTvXVdhmw=", + "ImportedKeyPairName": "<imported-key-name>" + } + } + } +} diff --git c/tests/aws/services/ec2/resources/test_ec2.validation.json i/tests/aws/services/ec2/resources/test_ec2.validation.json new file mode 100644 index 000000000000..b0b60ff51972 --- /dev/null +++ i/tests/aws/services/ec2/resources/test_ec2.validation.json @@ -0,0 +1,35 @@ +{ + "tests/aws/services/ec2/resources/test_ec2.py::test_cfn_with_multiple_route_table_associations": { + "last_validated_date": "2025-04-11T12:46:42+00:00" + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_cfn_with_multiple_route_tables": { + "last_validated_date": "2025-04-11T12:45:59+00:00" + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_dhcp_options": { + "last_validated_date": "2025-04-11T12:47:51+00:00" + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_ec2_security_group_id_with_vpc": { + "last_validated_date": "2025-04-11T12:53:44+00:00" + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_internet_gateway_ref_and_attr": { + "last_validated_date": "2025-04-11T12:47:30+00:00" + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_keypair_create_import": { + "last_validated_date": "2025-04-11T12:53:59+00:00" + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_simple_route_table_creation": { + "last_validated_date": "2025-04-11T12:44:23+00:00" + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_simple_route_table_creation_without_vpc": { + "last_validated_date": "2025-04-11T12:43:43+00:00" + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_transit_gateway_attachment": { + "last_validated_date": "2025-04-11T12:52:34+00:00" + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_vpc_creates_default_sg": { + "last_validated_date": "2025-04-11T12:45:01+00:00" + }, + "tests/aws/services/ec2/resources/test_ec2.py::test_vpc_with_route_table": { + "last_validated_date": "2025-04-11T12:53:14+00:00" + } +} diff --git c/tests/aws/services/es/resources/test_elasticsearch.snapshot.json i/tests/aws/services/es/resources/test_elasticsearch.snapshot.json new file mode 100644 index 000000000000..f07ef9ab1b7b --- /dev/null +++ i/tests/aws/services/es/resources/test_elasticsearch.snapshot.json @@ -0,0 +1,321 @@ +{ + "tests/aws/services/es/resources/test_elasticsearch.py::test_cfn_handle_elasticsearch_domain": { + "recorded-date": "11-04-2025, 13:26:11", + "recorded-content": { + "domain": { + "DomainStatus": { + "ARN": "arn:<partition>:es:<region>:111111111111:domain/<domain-name:1>", + "AccessPolicies": "", + "AdvancedOptions": { + "override_main_response_version": "false", + "rest.action.multi.allow_explicit_index": "true" + }, + "AdvancedSecurityOptions": { + "AnonymousAuthEnabled": false, + "Enabled": false, + "InternalUserDatabaseEnabled": false + }, + "AutoTuneOptions": { + "State": "ENABLED" + }, + "ChangeProgressDetails": { + "ChangeId": "<uuid:1>", + "ConfigChangeStatus": "ApplyingChanges", + "InitiatedBy": "CUSTOMER", + "LastUpdatedTime": "<datetime>", + "StartTime": "<datetime>" + }, + "CognitoOptions": { + "Enabled": false + }, + "Created": true, + "Deleted": false, + "DomainEndpointOptions": { + "CustomEndpointEnabled": false, + "EnforceHTTPS": false, + "TLSSecurityPolicy": "<t-l-s-security-policy:1>" + }, + "DomainId": "111111111111/<domain-name:1>", + "DomainName": "<domain-name:1>", + "DomainProcessingStatus": "Creating", + "EBSOptions": { + "EBSEnabled": true, + "Iops": 0, + "VolumeSize": 20, + "VolumeType": "gp2" + }, + "ElasticsearchClusterConfig": { + "ColdStorageOptions": { + "Enabled": false + }, + "DedicatedMasterCount": 3, + "DedicatedMasterEnabled": true, + "DedicatedMasterType": "m5.large.elasticsearch", + "InstanceCount": 2, + "InstanceType": "m5.large.elasticsearch", + "WarmEnabled": false, + "ZoneAwarenessConfig": { + "AvailabilityZoneCount": 2 + }, + "ZoneAwarenessEnabled": true + }, + "ElasticsearchVersion": "7.10", + "EncryptionAtRestOptions": { + "Enabled": false + }, + "Endpoint": "search-<domain-name:1>-zeyfj6devtz4d3bvfl2yam7co4.<region>.es.amazonaws.com", + "ModifyingProperties": [ + { + "ActiveValue": "", + "Name": "AIMLOptions.NaturalLanguageQueryGenerationOptions", + "PendingValue": { + "CurrentState": "NOT_ENABLED", + "DesiredState": "DISABLED" + }, + "ValueType": "STRINGIFIED_JSON" + }, + { + "ActiveValue": "", + "Name": "AdvancedOptions", + "PendingValue": { + "override_main_response_version": "false", + "rest.action.multi.allow_explicit_index": "true" + }, + "ValueType": "STRINGIFIED_JSON" + }, + { + "ActiveValue": "", + "Name": "AdvancedSecurityOptions.AnonymousAuthDisableDate", + "PendingValue": "false", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "AdvancedSecurityOptions.AnonymousAuthEnabled", + "PendingValue": "false", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "AdvancedSecurityOptions.InternalUserDatabaseEnabled", + "PendingValue": "false", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "AdvancedSecurityOptions.JWTOptions", + "PendingValue": "false", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "AdvancedSecurityOptions.MasterUserOptions", + "PendingValue": "false", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "AdvancedSecurityOptions.SAMLOptions", + "PendingValue": "false", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "ElasticsearchClusterConfig.ColdStorageOptions", + "PendingValue": { + "Enabled": false + }, + "ValueType": "STRINGIFIED_JSON" + }, + { + "ActiveValue": "", + "Name": "ElasticsearchClusterConfig.DedicatedMasterCount", + "PendingValue": "3", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "ElasticsearchClusterConfig.DedicatedMasterEnabled", + "PendingValue": "true", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "ElasticsearchClusterConfig.DedicatedMasterType", + "PendingValue": "m5.large.elasticsearch", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "ElasticsearchClusterConfig.InstanceCount", + "PendingValue": "2", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "ElasticsearchClusterConfig.InstanceType", + "PendingValue": "m5.large.elasticsearch", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "ElasticsearchClusterConfig.MultiAZWithStandbyEnabled", + "PendingValue": "false", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "ElasticsearchClusterConfig.WarmCount", + "PendingValue": "", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "ElasticsearchClusterConfig.WarmEnabled", + "PendingValue": "false", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "ElasticsearchClusterConfig.WarmStorage", + "PendingValue": "", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "ElasticsearchClusterConfig.WarmType", + "PendingValue": "", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "ElasticsearchClusterConfig.ZoneAwarenessEnabled", + "PendingValue": "true", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "ElasticsearchVersion", + "PendingValue": "7.10", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "IPAddressType", + "PendingValue": "ipv4", + "ValueType": "PLAIN_TEXT" + }, + { + "ActiveValue": "", + "Name": "TAGS", + "PendingValue": { + "k1": "v1", + "k2": "v2" + }, + "ValueType": "STRINGIFIED_JSON" + }, + { + "ActiveValue": "", + "Name": "DomainEndpointOptions", + "PendingValue": { + "CustomEndpointEnabled": false, + "EnforceHTTPS": false, + "TLSSecurityPolicy": "<t-l-s-security-policy:1>" + }, + "ValueType": "STRINGIFIED_JSON" + }, + { + "ActiveValue": "", + "Name": "EBSOptions", + "PendingValue": { + "EBSEnabled": true, + "Iops": 0, + "VolumeSize": 20, + "VolumeType": "gp2" + }, + "ValueType": "STRINGIFIED_JSON" + }, + { + "ActiveValue": "", + "Name": "EncryptionAtRestOptions", + "PendingValue": { + "Enabled": false + }, + "ValueType": "STRINGIFIED_JSON" + }, + { + "ActiveValue": "", + "Name": "NodeToNodeEncryptionOptions", + "PendingValue": { + "Enabled": false + }, + "ValueType": "STRINGIFIED_JSON" + }, + { + "ActiveValue": "", + "Name": "OffPeakWindowOptions", + "PendingValue": { + "Enabled": true, + "OffPeakWindow": { + "WindowStartTime": { + "Hours": 20, + "Minutes": 0 + } + } + }, + "ValueType": "STRINGIFIED_JSON" + }, + { + "ActiveValue": "", + "Name": "SnapshotOptions", + "PendingValue": { + "AutomatedSnapshotStartHour": 0 + }, + "ValueType": "STRINGIFIED_JSON" + }, + { + "ActiveValue": "", + "Name": "SoftwareUpdateOptions", + "PendingValue": { + "AutoSoftwareUpdateEnabled": false + }, + "ValueType": "STRINGIFIED_JSON" + } + ], + "NodeToNodeEncryptionOptions": { + "Enabled": false + }, + "Processing": false, + "ServiceSoftwareOptions": { + "AutomatedUpdateDate": "<datetime>", + "Cancellable": false, + "CurrentVersion": "<current-version:1>", + "Description": "<description:1>", + "NewVersion": "", + "OptionalDeployment": true, + "UpdateAvailable": false, + "UpdateStatus": "COMPLETED" + }, + "SnapshotOptions": { + "AutomatedSnapshotStartHour": 0 + }, + "UpgradeProcessing": false + }, + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + }, + "tags": [ + { + "Key": "k1", + "Value": "v1" + }, + { + "Key": "k2", + "Value": "v2" + } + ] + } + } +} diff --git c/tests/aws/services/es/resources/test_elasticsearch.validation.json i/tests/aws/services/es/resources/test_elasticsearch.validation.json new file mode 100644 index 000000000000..e4addb3cb5bd --- /dev/null +++ i/tests/aws/services/es/resources/test_elasticsearch.validation.json @@ -0,0 +1,5 @@ +{ + "tests/aws/services/es/resources/test_elasticsearch.py::test_cfn_handle_elasticsearch_domain": { + "last_validated_date": "2025-04-11T13:26:11+00:00" + } +} diff --git c/tests/aws/services/events/resources/test_events.snapshot.json i/tests/aws/services/events/resources/test_events.snapshot.json new file mode 100644 index 000000000000..66001b7719cc --- /dev/null +++ i/tests/aws/services/events/resources/test_events.snapshot.json @@ -0,0 +1,70 @@ +{ + "tests/aws/services/events/resources/test_events.py::test_event_rule_creation_without_target": { + "recorded-date": "11-04-2025, 13:44:58", + "recorded-content": { + "describe_rule": { + "Arn": "arn:<partition>:events:<region>:111111111111:rule/event-rule-name", + "CreatedBy": "111111111111", + "EventBusName": "default", + "Name": "event-rule-name", + "ScheduleExpression": "cron(0 1 * * ? *)", + "State": "ENABLED", + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + }, + "tests/aws/services/events/resources/test_events.py::test_rule_properties": { + "recorded-date": "11-04-2025, 13:46:46", + "recorded-content": { + "outputs": { + "RuleWithNameArn": "arn:<partition>:events:<region>:111111111111:rule/<event-bus-name>/<custom-rule-name>", + "RuleWithNameRef": "<event-bus-name>|<custom-rule-name>", + "RuleWithoutBusArn": "arn:<partition>:events:<region>:111111111111:rule/<without-bus-id>", + "RuleWithoutBusRef": "<without-bus-id>", + "RuleWithoutNameArn": "arn:<partition>:events:<region>:111111111111:rule/<event-bus-name>/<rule-id>", + "RuleWithoutNameRef": "<event-bus-name>|<rule-id>" + } + } + }, + "tests/aws/services/events/resources/test_events.py::test_rule_pattern_transformation": { + "recorded-date": "11-04-2025, 13:48:40", + "recorded-content": { + "rule": { + "Arn": "arn:<partition>:events:<region>:111111111111:rule/<name:1>", + "CreatedBy": "111111111111", + "EventBusName": "default", + "EventPattern": { + "detail-type": [ + "Object Created" + ], + "source": [ + "aws.s3" + ], + "detail": { + "bucket": { + "name": [ + "test-s3-bucket" + ] + }, + "object": { + "key": [ + { + "suffix": "/test.json" + } + ] + } + } + }, + "Name": "<name:1>", + "State": "ENABLED", + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + } +} diff --git c/tests/aws/services/events/resources/test_events.validation.json i/tests/aws/services/events/resources/test_events.validation.json new file mode 100644 index 000000000000..0006fbb2fbce --- /dev/null +++ i/tests/aws/services/events/resources/test_events.validation.json @@ -0,0 +1,26 @@ +{ + "tests/aws/services/events/resources/test_events.py::test_cfn_event_api_destination_resource": { + "last_validated_date": "2025-04-11T13:41:35+00:00" + }, + "tests/aws/services/events/resources/test_events.py::test_cfn_event_bus_resource": { + "last_validated_date": "2025-04-11T13:46:03+00:00" + }, + "tests/aws/services/events/resources/test_events.py::test_event_rule_creation_without_target": { + "last_validated_date": "2025-04-11T13:44:58+00:00" + }, + "tests/aws/services/events/resources/test_events.py::test_event_rule_to_logs": { + "last_validated_date": "2025-04-11T13:43:43+00:00" + }, + "tests/aws/services/events/resources/test_events.py::test_eventbus_policies": { + "last_validated_date": "2025-04-11T13:41:58+00:00" + }, + "tests/aws/services/events/resources/test_events.py::test_eventbus_policy_statement": { + "last_validated_date": "2025-04-11T13:42:17+00:00" + }, + "tests/aws/services/events/resources/test_events.py::test_rule_pattern_transformation": { + "last_validated_date": "2025-04-11T13:48:40+00:00" + }, + "tests/aws/services/events/resources/test_events.py::test_rule_properties": { + "last_validated_date": "2025-04-11T13:46:46+00:00" + } +} diff --git c/tests/aws/services/firehose/resources/test_firehose.snapshot.json i/tests/aws/services/firehose/resources/test_firehose.snapshot.json new file mode 100644 index 000000000000..ebacb6668b82 --- /dev/null +++ i/tests/aws/services/firehose/resources/test_firehose.snapshot.json @@ -0,0 +1,99 @@ +{ + "tests/aws/services/firehose/resources/test_firehose.py::test_firehose_stack_with_kinesis_as_source": { + "recorded-date": "11-04-2025, 13:50:16", + "recorded-content": { + "outputs": { + "deliveryStreamRef": "<resource:1>" + }, + "delivery_stream": { + "DeliveryStreamDescription": { + "CreateTimestamp": "<datetime>", + "DeliveryStreamARN": "arn:<partition>:firehose:<region>:111111111111:deliverystream/<resource:1>", + "DeliveryStreamName": "<resource:1>", + "DeliveryStreamStatus": "ACTIVE", + "DeliveryStreamType": "KinesisStreamAsSource", + "Destinations": [ + { + "DestinationId": "destinationId-000000000001", + "ExtendedS3DestinationDescription": { + "BucketARN": "arn:<partition>:s3:::<resource:2>", + "BufferingHints": { + "IntervalInSeconds": 60, + "SizeInMBs": 64 + }, + "CloudWatchLoggingOptions": { + "Enabled": false + }, + "CompressionFormat": "UNCOMPRESSED", + "DataFormatConversionConfiguration": { + "Enabled": false + }, + "DynamicPartitioningConfiguration": { + "Enabled": true, + "RetryOptions": { + "DurationInSeconds": 300 + } + }, + "EncryptionConfiguration": { + "NoEncryptionConfig": "NoEncryption" + }, + "ErrorOutputPrefix": "firehoseTest-errors/!{firehose:error-output-type}/", + "Prefix": "firehoseTest/!{partitionKeyFromQuery:s3Prefix}", + "ProcessingConfiguration": { + "Enabled": true, + "Processors": [ + { + "Parameters": [ + { + "ParameterName": "MetadataExtractionQuery", + "ParameterValue": "{s3Prefix: .tableName}" + }, + { + "ParameterName": "JsonParsingEngine", + "ParameterValue": "JQ-1.6" + } + ], + "Type": "MetadataExtraction" + } + ] + }, + "RoleARN": "arn:<partition>:iam::111111111111:role/<resource:3>", + "S3BackupMode": "Disabled" + }, + "S3DestinationDescription": { + "BucketARN": "arn:<partition>:s3:::<resource:2>", + "BufferingHints": { + "IntervalInSeconds": 60, + "SizeInMBs": 64 + }, + "CloudWatchLoggingOptions": { + "Enabled": false + }, + "CompressionFormat": "UNCOMPRESSED", + "EncryptionConfiguration": { + "NoEncryptionConfig": "NoEncryption" + }, + "ErrorOutputPrefix": "firehoseTest-errors/!{firehose:error-output-type}/", + "Prefix": "firehoseTest/!{partitionKeyFromQuery:s3Prefix}", + "RoleARN": "arn:<partition>:iam::111111111111:role/<resource:3>" + } + } + ], + "HasMoreDestinations": false, + "Source": { + "KinesisStreamSourceDescription": { + "DeliveryStartTimestamp": "<datetime>", + "KinesisStreamARN": "arn:<partition>:kinesis:<region>:111111111111:stream/<resource:4>", + "RoleARN": "arn:<partition>:iam::111111111111:role/<resource:3>" + } + }, + "VersionId": "1" + }, + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + } +} diff --git c/tests/aws/services/firehose/resources/test_firehose.validation.json i/tests/aws/services/firehose/resources/test_firehose.validation.json new file mode 100644 index 000000000000..89cf631d4379 --- /dev/null +++ i/tests/aws/services/firehose/resources/test_firehose.validation.json @@ -0,0 +1,5 @@ +{ + "tests/aws/services/firehose/resources/test_firehose.py::test_firehose_stack_with_kinesis_as_source": { + "last_validated_date": "2025-04-11T13:50:16+00:00" + } +} diff --git c/tests/aws/services/kinesis/resources/test_kinesis.snapshot.json i/tests/aws/services/kinesis/resources/test_kinesis.snapshot.json new file mode 100644 index 000000000000..d51f95105d0b --- /dev/null +++ i/tests/aws/services/kinesis/resources/test_kinesis.snapshot.json @@ -0,0 +1,287 @@ +{ + "tests/aws/services/kinesis/resources/test_kinesis.py::test_stream_creation": { + "recorded-date": "11-04-2025, 13:51:24", + "recorded-content": { + "stack_output": { + "StreamArnFromAtt": "arn:<partition>:kinesis:<region>:111111111111:stream/<resource:1>", + "StreamNameFromRef": "<resource:1>" + }, + "resource_description": { + "StackResources": [ + { + "DriftInformation": { + "StackResourceDriftStatus": "NOT_CHECKED" + }, + "LogicalResourceId": "TestStream", + "PhysicalResourceId": "<resource:1>", + "ResourceStatus": "CREATE_COMPLETE", + "ResourceType": "AWS::Kinesis::Stream", + "StackId": "arn:<partition>:cloudformation:<region>:111111111111:stack/<stack-name:1>/<resource:2>", + "StackName": "<stack-name:1>", + "Timestamp": "timestamp" + } + ], + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + }, + "stream_description": { + "StreamDescription": { + "EncryptionType": "NONE", + "EnhancedMonitoring": [ + { + "ShardLevelMetrics": [] + } + ], + "HasMoreShards": false, + "RetentionPeriodHours": 24, + "Shards": [ + { + "HashKeyRange": { + "EndingHashKey": "<ending-hash-key:1>", + "StartingHashKey": "starting_hash" + }, + "SequenceNumberRange": { + "StartingSequenceNumber": "<starting_sequence_number:1>" + }, + "ShardId": "shard-id" + } + ], + "StreamARN": "arn:<partition>:kinesis:<region>:111111111111:stream/<resource:1>", + "StreamCreationTimestamp": "timestamp", + "StreamModeDetails": { + "StreamMode": "PROVISIONED" + }, + "StreamName": "<resource:1>", + "StreamStatus": "ACTIVE" + }, + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + }, + "tests/aws/services/kinesis/resources/test_kinesis.py::test_default_parameters_kinesis": { + "recorded-date": "11-04-2025, 13:51:47", + "recorded-content": { + "describe_stream": { + "StreamDescription": { + "EncryptionType": "NONE", + "EnhancedMonitoring": [ + { + "ShardLevelMetrics": [] + } + ], + "HasMoreShards": false, + "RetentionPeriodHours": 24, + "Shards": [ + { + "HashKeyRange": { + "EndingHashKey": "ending_hash", + "StartingHashKey": "starting_hash" + }, + "SequenceNumberRange": { + "StartingSequenceNumber": "<starting_sequence_number:1>" + }, + "ShardId": "<shard_id:1>" + } + ], + "StreamARN": "arn:<partition>:kinesis:<region>:111111111111:stream/<stream-name:1>", + "StreamCreationTimestamp": "timestamp", + "StreamModeDetails": { + "StreamMode": "PROVISIONED" + }, + "StreamName": "<stream-name:1>", + "StreamStatus": "ACTIVE" + }, + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + }, + "tests/aws/services/kinesis/resources/test_kinesis.py::test_cfn_handle_kinesis_firehose_resources": { + "recorded-date": "11-04-2025, 13:53:36", + "recorded-content": {} + }, + "tests/aws/services/kinesis/resources/test_kinesis.py::test_describe_template": { + "recorded-date": "11-04-2025, 13:53:38", + "recorded-content": { + "get_template_summary_by_url": { + "Capabilities": [ + "CAPABILITY_NAMED_IAM" + ], + "CapabilitiesReason": "The following resource(s) require capabilities: [AWS::IAM::Role]", + "Parameters": [ + { + "NoEcho": false, + "ParameterConstraints": {}, + "ParameterKey": "KinesisRoleName", + "ParameterType": "String" + }, + { + "NoEcho": false, + "ParameterConstraints": {}, + "ParameterKey": "DeliveryStreamName", + "ParameterType": "String" + }, + { + "NoEcho": false, + "ParameterConstraints": {}, + "ParameterKey": "KinesisStreamName", + "ParameterType": "String" + } + ], + "ResourceIdentifierSummaries": [ + { + "LogicalResourceIds": [ + "MyBucket" + ], + "ResourceIdentifiers": [ + "BucketName" + ], + "ResourceType": "AWS::S3::Bucket" + }, + { + "LogicalResourceIds": [ + "MyRole" + ], + "ResourceIdentifiers": [ + "RoleName" + ], + "ResourceType": "AWS::IAM::Role" + }, + { + "LogicalResourceIds": [ + "KinesisStream" + ], + "ResourceIdentifiers": [ + "Name" + ], + "ResourceType": "AWS::Kinesis::Stream" + }, + { + "LogicalResourceIds": [ + "DeliveryStream" + ], + "ResourceIdentifiers": [ + "DeliveryStreamName" + ], + "ResourceType": "AWS::KinesisFirehose::DeliveryStream" + } + ], + "ResourceTypes": [ + "AWS::Kinesis::Stream", + "AWS::IAM::Role", + "AWS::S3::Bucket", + "AWS::KinesisFirehose::DeliveryStream" + ], + "Version": "2010-09-09", + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + }, + "get_template_summary_by_body": { + "Capabilities": [ + "CAPABILITY_NAMED_IAM" + ], + "CapabilitiesReason": "The following resource(s) require capabilities: [AWS::IAM::Role]", + "Parameters": [ + { + "NoEcho": false, + "ParameterConstraints": {}, + "ParameterKey": "KinesisRoleName", + "ParameterType": "String" + }, + { + "NoEcho": false, + "ParameterConstraints": {}, + "ParameterKey": "DeliveryStreamName", + "ParameterType": "String" + }, + { + "NoEcho": false, + "ParameterConstraints": {}, + "ParameterKey": "KinesisStreamName", + "ParameterType": "String" + } + ], + "ResourceIdentifierSummaries": [ + { + "LogicalResourceIds": [ + "MyBucket" + ], + "ResourceIdentifiers": [ + "BucketName" + ], + "ResourceType": "AWS::S3::Bucket" + }, + { + "LogicalResourceIds": [ + "MyRole" + ], + "ResourceIdentifiers": [ + "RoleName" + ], + "ResourceType": "AWS::IAM::Role" + }, + { + "LogicalResourceIds": [ + "KinesisStream" + ], + "ResourceIdentifiers": [ + "Name" + ], + "ResourceType": "AWS::Kinesis::Stream" + }, + { + "LogicalResourceIds": [ + "DeliveryStream" + ], + "ResourceIdentifiers": [ + "DeliveryStreamName" + ], + "ResourceType": "AWS::KinesisFirehose::DeliveryStream" + } + ], + "ResourceTypes": [ + "AWS::Kinesis::Stream", + "AWS::IAM::Role", + "AWS::S3::Bucket", + "AWS::KinesisFirehose::DeliveryStream" + ], + "Version": "2010-09-09", + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + }, + "tests/aws/services/kinesis/resources/test_kinesis.py::test_dynamodb_stream_response_with_cf": { + "recorded-date": "11-04-2025, 13:54:36", + "recorded-content": { + "describe_kinesis_streaming_destination": { + "KinesisDataStreamDestinations": [ + { + "DestinationStatus": "ACTIVE", + "StreamArn": "arn:<partition>:kinesis:<region>:111111111111:stream/EventStream" + } + ], + "TableName": "<table-name:1>", + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + }, + "tests/aws/services/kinesis/resources/test_kinesis.py::test_kinesis_stream_consumer_creations": { + "recorded-date": "11-04-2025, 13:55:24", + "recorded-content": {} + } +} diff --git c/tests/aws/services/kinesis/resources/test_kinesis.validation.json i/tests/aws/services/kinesis/resources/test_kinesis.validation.json new file mode 100644 index 000000000000..9ffaa3e4a9c7 --- /dev/null +++ i/tests/aws/services/kinesis/resources/test_kinesis.validation.json @@ -0,0 +1,20 @@ +{ + "tests/aws/services/kinesis/resources/test_kinesis.py::test_cfn_handle_kinesis_firehose_resources": { + "last_validated_date": "2025-04-11T13:53:36+00:00" + }, + "tests/aws/services/kinesis/resources/test_kinesis.py::test_default_parameters_kinesis": { + "last_validated_date": "2025-04-11T13:51:39+00:00" + }, + "tests/aws/services/kinesis/resources/test_kinesis.py::test_describe_template": { + "last_validated_date": "2025-04-11T13:53:38+00:00" + }, + "tests/aws/services/kinesis/resources/test_kinesis.py::test_dynamodb_stream_response_with_cf": { + "last_validated_date": "2025-04-11T13:54:15+00:00" + }, + "tests/aws/services/kinesis/resources/test_kinesis.py::test_kinesis_stream_consumer_creations": { + "last_validated_date": "2025-04-11T13:55:03+00:00" + }, + "tests/aws/services/kinesis/resources/test_kinesis.py::test_stream_creation": { + "last_validated_date": "2025-04-11T13:51:16+00:00" + } +} diff --git c/tests/aws/services/kms/resources/test_kms.snapshot.json i/tests/aws/services/kms/resources/test_kms.snapshot.json new file mode 100644 index 000000000000..35b2b1942143 --- /dev/null +++ i/tests/aws/services/kms/resources/test_kms.snapshot.json @@ -0,0 +1,11 @@ +{ + "tests/aws/services/kms/resources/test_kms.py::test_cfn_with_kms_resources": { + "recorded-date": "11-04-2025, 13:58:56", + "recorded-content": { + "stack-outputs": { + "KeyAlias": "<key-alias:1>", + "KeyArn": "arn:<partition>:kms:<region>:111111111111:key/<resource:1>" + } + } + } +} diff --git c/tests/aws/services/kms/resources/test_kms.validation.json i/tests/aws/services/kms/resources/test_kms.validation.json new file mode 100644 index 000000000000..b0c14417616e --- /dev/null +++ i/tests/aws/services/kms/resources/test_kms.validation.json @@ -0,0 +1,11 @@ +{ + "tests/aws/services/kms/resources/test_kms.py::test_cfn_with_kms_resources": { + "last_validated_date": "2025-04-11T13:58:56+00:00" + }, + "tests/aws/services/kms/resources/test_kms.py::test_deploy_stack_with_kms": { + "last_validated_date": "2025-04-11T13:59:40+00:00" + }, + "tests/aws/services/kms/resources/test_kms.py::test_kms_key_disabled": { + "last_validated_date": "2025-04-11T13:55:49+00:00" + } +} diff --git c/tests/aws/services/lambda_/resources/test_lambda.snapshot.json i/tests/aws/services/lambda_/resources/test_lambda.snapshot.json new file mode 100644 index 000000000000..c43a947df05e --- /dev/null +++ i/tests/aws/services/lambda_/resources/test_lambda.snapshot.json @@ -0,0 +1,1670 @@ +{ + "tests/aws/services/lambda_/resources/test_lambda.py::test_lam…
diff --git c/tests/aws/services/cloudformation/resources/test_apigateway.snapshot.json i/tests/aws/services/cloudformation/resources/test_apigateway.snapshot.json deleted file mode 100644 index e14201655265..000000000000 --- c/tests/aws/services/cloudformation/resources/test_apigateway.snapshot.json +++ /dev/null @@ -1,795 +0,0 @@ -{ - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_cfn_deploy_apigateway_integration": { - "recorded-date": "15-07-2025, 19:28:45", - "recorded-content": { - "rest_api": { - "apiKeySource": "HEADER", - "createdDate": "datetime", - "disableExecuteApiEndpoint": false, - "endpointConfiguration": { - "ipAddressType": "ipv4", - "types": [ - "EDGE" - ] - }, - "id": "<id:1>", - "name": "<name:1>", - "rootResourceId": "<root-resource-id:1>", - "tags": { - "aws:cloudformation:logical-id": "<name:1>", - "aws:cloudformation:stack-id": "arn:<partition>:cloudformation:<region>:111111111111:stack/stack-name/<resource:1>", - "aws:cloudformation:stack-name": "stack-name" - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "method": { - "apiKeyRequired": false, - "authorizationType": "NONE", - "httpMethod": "GET", - "methodIntegration": { - "cacheKeyParameters": [], - "cacheNamespace": "<cache-namespace:1>", - "connectionType": "INTERNET", - "httpMethod": "GET", - "integrationResponses": { - "200": { - "responseParameters": { - "method.response.header.Access-Control-Allow-Headers": "'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token,X-Amz-User-Agent,X-Amzn-Trace-Id'", - "method.response.header.Access-Control-Allow-Methods": "'OPTIONS,GET,POST'", - "method.response.header.Access-Control-Allow-Origin": "'*'" - }, - "statusCode": "200" - } - }, - "passthroughBehavior": "WHEN_NO_MATCH", - "timeoutInMillis": 29000, - "type": "HTTP_PROXY", - "uri": "http://www.example.com" - }, - "methodResponses": { - "200": { - "responseParameters": { - "method.response.header.Access-Control-Allow-Headers": true, - "method.response.header.Access-Control-Allow-Methods": true, - "method.response.header.Access-Control-Allow-Origin": true - }, - "statusCode": "200" - } - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_api_gateway_with_policy_as_dict": { - "recorded-date": "15-07-2025, 19:30:54", - "recorded-content": { - "rest-api": { - "apiKeySource": "HEADER", - "createdDate": "datetime", - "disableExecuteApiEndpoint": false, - "endpointConfiguration": { - "ipAddressType": "ipv4", - "types": [ - "EDGE" - ] - }, - "id": "<id:1>", - "name": "<name:1>", - "policy": { - "Statement": [ - { - "Action": "*", - "Effect": "Allow", - "Principal": { - "AWS": "*" - }, - "Resource": "*", - "Sid": "AllowInvokeAPI" - } - ], - "Version": "2012-10-17" - }, - "rootResourceId": "<root-resource-id:1>", - "tags": { - "aws:cloudformation:logical-id": "MyApi", - "aws:cloudformation:stack-id": "arn:<partition>:cloudformation:<region>:111111111111:stack/stack-name/<resource:1>", - "aws:cloudformation:stack-name": "stack-name" - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_cfn_deploy_apigateway_from_s3_swagger": { - "recorded-date": "15-07-2025, 20:30:26", - "recorded-content": { - "rest-api": { - "apiKeySource": "HEADER", - "binaryMediaTypes": [ - "application/pdf", - "image/gif", - "image/jpg", - "image/png" - ], - "createdDate": "datetime", - "disableExecuteApiEndpoint": false, - "endpointConfiguration": { - "ipAddressType": "ipv4", - "types": [ - "REGIONAL" - ] - }, - "id": "<id:1>", - "name": "<name:1>", - "rootResourceId": "<id:2>", - "tags": { - "aws:cloudformation:logical-id": "ApiGatewayRestApi", - "aws:cloudformation:stack-id": "arn:<partition>:cloudformation:<region>:111111111111:stack/stack-name/<resource:1>", - "aws:cloudformation:stack-name": "stack-name" - }, - "version": "1.0.0", - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "resources": { - "items": [ - { - "id": "<id:2>", - "path": "/" - }, - { - "id": "<id:3>", - "parentId": "<id:2>", - "path": "/pets", - "pathPart": "pets", - "resourceMethods": { - "GET": {} - } - }, - { - "id": "<id:4>", - "parentId": "<id:3>", - "path": "/pets/{petId}", - "pathPart": "{petId}", - "resourceMethods": { - "GET": {} - } - } - ], - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "get-stage": { - "cacheClusterEnabled": false, - "cacheClusterStatus": "NOT_AVAILABLE", - "createdDate": "datetime", - "deploymentId": "<deployment-id:1>", - "description": "Test Stage 123", - "lastUpdatedDate": "datetime", - "methodSettings": { - "*/*": { - "cacheDataEncrypted": false, - "cacheTtlInSeconds": 300, - "cachingEnabled": false, - "dataTraceEnabled": true, - "loggingLevel": "ERROR", - "metricsEnabled": true, - "requireAuthorizationForCacheControl": true, - "throttlingBurstLimit": 5000, - "throttlingRateLimit": 10000.0, - "unauthorizedCacheControlHeaderStrategy": "SUCCEED_WITH_RESPONSE_HEADER" - } - }, - "stageName": "local", - "tags": { - "aws:cloudformation:logical-id": "ApiGWStage", - "aws:cloudformation:stack-id": "arn:<partition>:cloudformation:<region>:111111111111:stack/stack-name/<resource:1>", - "aws:cloudformation:stack-name": "stack-name" - }, - "tracingEnabled": true, - "variables": { - "TestCasing": "myvar", - "testCasingTwo": "myvar2", - "testlowcasing": "myvar3" - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_cfn_deploy_apigateway_models": { - "recorded-date": "21-06-2024, 00:09:05", - "recorded-content": { - "get-resources": { - "items": [ - { - "id": "<id:1>", - "path": "/" - }, - { - "id": "<id:2>", - "parentId": "<id:1>", - "path": "/validated", - "pathPart": "validated", - "resourceMethods": { - "ANY": {} - } - } - ], - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "get-models": { - "items": [ - { - "contentType": "application/json", - "description": "This is a default empty schema model", - "id": "<id:3>", - "name": "<name:1>", - "schema": { - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "<name:1> Schema", - "type": "object" - } - }, - { - "contentType": "application/json", - "description": "This is a default error schema model", - "id": "<id:4>", - "name": "<name:2>", - "schema": { - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "<name:2> Schema", - "type": "object", - "properties": { - "message": { - "type": "string" - } - } - } - }, - { - "contentType": "application/json", - "id": "<id:5>", - "name": "<name:3>", - "schema": { - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "<name:3>", - "type": "object", - "properties": { - "integer_field": { - "type": "number" - }, - "string_field": { - "type": "string" - } - }, - "required": [ - "string_field", - "integer_field" - ] - } - } - ], - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "get-request-validators": { - "items": [ - { - "id": "<id:6>", - "name": "<name:4>", - "validateRequestBody": true, - "validateRequestParameters": false - } - ], - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "get-method-any": { - "apiKeyRequired": false, - "authorizationType": "NONE", - "httpMethod": "ANY", - "methodIntegration": { - "cacheKeyParameters": [], - "cacheNamespace": "<id:2>", - "integrationResponses": { - "200": { - "statusCode": "200" - } - }, - "passthroughBehavior": "NEVER", - "requestTemplates": { - "application/json": { - "statusCode": 200 - } - }, - "timeoutInMillis": 29000, - "type": "MOCK" - }, - "methodResponses": { - "200": { - "statusCode": "200" - } - }, - "requestModels": { - "application/json": "<name:3>" - }, - "requestValidatorId": "<id:6>", - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_cfn_with_apigateway_resources": { - "recorded-date": "20-06-2024, 23:54:26", - "recorded-content": { - "get-method-post": { - "apiKeyRequired": false, - "authorizationType": "NONE", - "httpMethod": "POST", - "methodIntegration": { - "cacheKeyParameters": [], - "cacheNamespace": "<cache-namespace:1>", - "integrationResponses": { - "202": { - "responseTemplates": { - "application/json": { - "operation": "celeste_account_create", - "data": { - "key": "123e4567-e89b-12d3-a456-426614174000", - "secret": "123e4567-e89b-12d3-a456-426614174000" - } - } - }, - "selectionPattern": "2\\d{2}", - "statusCode": "202" - }, - "404": { - "responseTemplates": { - "application/json": { - "message": "Not Found" - } - }, - "selectionPattern": "404", - "statusCode": "404" - }, - "500": { - "responseTemplates": { - "application/json": { - "message": "Unknown <name:2>" - } - }, - "selectionPattern": "5\\d{2}", - "statusCode": "500" - } - }, - "passthroughBehavior": "WHEN_NO_TEMPLATES", - "requestTemplates": { - "application/json": "<name:3>" - }, - "timeoutInMillis": 29000, - "type": "MOCK" - }, - "methodResponses": { - "202": { - "responseModels": { - "application/json": "<name:4>" - }, - "statusCode": "202" - }, - "500": { - "responseModels": { - "application/json": "<name:4>" - }, - "statusCode": "500" - } - }, - "operationName": "create_account", - "requestParameters": { - "method.request.path.account": true - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "get-models": { - "items": [ - { - "contentType": "application/json", - "description": "This is a default empty schema model", - "id": "<id:1>", - "name": "<name:1>", - "schema": { - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "<name:1> Schema", - "type": "object" - } - }, - { - "contentType": "application/json", - "description": "This is a default error schema model", - "id": "<id:2>", - "name": "<name:2>", - "schema": { - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "<name:2> Schema", - "type": "object", - "properties": { - "message": { - "type": "string" - } - } - } - }, - { - "contentType": "application/json", - "id": "<id:3>", - "name": "<name:3>", - "schema": { - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "AccountCreate", - "type": "object", - "properties": { - "field": { - "type": "string" - }, - "email": { - "format": "email", - "type": "string" - } - } - } - }, - { - "contentType": "application/json", - "id": "<id:4>", - "name": "<name:4>", - "schema": {} - } - ], - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_rest_api_serverless_ref_resolving": { - "recorded-date": "06-07-2023, 21:01:08", - "recorded-content": { - "get-resources": { - "items": [ - { - "id": "<id:1>", - "path": "/", - "resourceMethods": { - "GET": {}, - "OPTIONS": {} - } - } - ], - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "get-authorizers": { - "items": [ - { - "authType": "custom", - "authorizerUri": "<authorizer-uri:1>", - "id": "<id:2>", - "identitySource": "method.request.header.Authorization", - "name": "<name:1>", - "type": "TOKEN" - } - ], - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "get-method-GET": { - "apiKeyRequired": false, - "authorizationType": "NONE", - "httpMethod": "GET", - "methodIntegration": { - "cacheKeyParameters": [], - "cacheNamespace": "<cache-namespace:1>", - "httpMethod": "POST", - "passthroughBehavior": "WHEN_NO_MATCH", - "timeoutInMillis": 29000, - "type": "AWS_PROXY", - "uri": "<uri:1>" - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "get-method-OPTIONS": { - "apiKeyRequired": false, - "authorizationType": "NONE", - "httpMethod": "OPTIONS", - "methodIntegration": { - "cacheKeyParameters": [], - "cacheNamespace": "<cache-namespace:1>", - "integrationResponses": { - "200": { - "responseParameters": { - "method.response.header.Access-Control-Allow-Credentials": "'true'", - "method.response.header.Access-Control-Allow-Headers": "'Content-Type,Authorization,x-test-header'", - "method.response.header.Access-Control-Allow-Methods": "'OPTIONS,POST,GET,PUT'", - "method.response.header.Access-Control-Allow-Origin": "'http://localhost:8000'" - }, - "responseTemplates": { - "application/json": {} - }, - "statusCode": "200" - } - }, - "passthroughBehavior": "WHEN_NO_MATCH", - "requestTemplates": { - "application/json": { - "statusCode": 200 - } - }, - "timeoutInMillis": 29000, - "type": "MOCK" - }, - "methodResponses": { - "200": { - "responseParameters": { - "method.response.header.Access-Control-Allow-Credentials": false, - "method.response.header.Access-Control-Allow-Headers": false, - "method.response.header.Access-Control-Allow-Methods": false, - "method.response.header.Access-Control-Allow-Origin": false - }, - "statusCode": "200" - } - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_update_usage_plan": { - "recorded-date": "13-09-2024, 09:57:21", - "recorded-content": { - "usage-plan": { - "apiStages": [ - { - "apiId": "<api-id:1>", - "stage": "<stage:1>" - } - ], - "id": "<id:1>", - "name": "<name:1>", - "quota": { - "limit": 5000, - "offset": 0, - "period": "MONTH" - }, - "tags": { - "aws:cloudformation:logical-id": "UsagePlan", - "aws:cloudformation:stack-id": "arn:<partition>:cloudformation:<region>:111111111111:stack/<aws:cloudformation:stack-name:1>/<resource:1>", - "aws:cloudformation:stack-name": "<aws:cloudformation:stack-name:1>", - "test": "value1", - "test2": "hardcoded" - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "updated-usage-plan": { - "apiStages": [ - { - "apiId": "<api-id:1>", - "stage": "<stage:1>" - } - ], - "id": "<id:1>", - "name": "<name:1>", - "quota": { - "limit": 7000, - "offset": 0, - "period": "MONTH" - }, - "tags": { - "aws:cloudformation:logical-id": "UsagePlan", - "aws:cloudformation:stack-id": "arn:<partition>:cloudformation:<region>:111111111111:stack/<aws:cloudformation:stack-name:1>/<resource:1>", - "aws:cloudformation:stack-name": "<aws:cloudformation:stack-name:1>", - "test": "value-updated", - "test2": "hardcoded" - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_update_apigateway_stage": { - "recorded-date": "07-11-2024, 05:35:20", - "recorded-content": { - "created-stage": { - "cacheClusterEnabled": false, - "cacheClusterStatus": "NOT_AVAILABLE", - "createdDate": "datetime", - "deploymentId": "<deployment-id:1>", - "lastUpdatedDate": "datetime", - "methodSettings": {}, - "stageName": "dev", - "tags": { - "aws:cloudformation:logical-id": "Stage", - "aws:cloudformation:stack-id": "arn:<partition>:cloudformation:<region>:111111111111:stack/<aws:cloudformation:stack-name:1>/<resource:1>", - "aws:cloudformation:stack-name": "<aws:cloudformation:stack-name:1>" - }, - "tracingEnabled": false, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "updated-stage": { - "cacheClusterEnabled": false, - "cacheClusterStatus": "NOT_AVAILABLE", - "createdDate": "datetime", - "deploymentId": "<deployment-id:1>", - "lastUpdatedDate": "datetime", - "methodSettings": {}, - "stageName": "dev", - "tags": { - "aws:cloudformation:logical-id": "Stage", - "aws:cloudformation:stack-id": "arn:<partition>:cloudformation:<region>:111111111111:stack/<aws:cloudformation:stack-name:1>/<resource:1>", - "aws:cloudformation:stack-name": "<aws:cloudformation:stack-name:1>" - }, - "tracingEnabled": false, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_cfn_apigateway_swagger_import": { - "recorded-date": "05-05-2025, 14:23:13", - "recorded-content": { - "imported-api": { - "apiKeySource": "HEADER", - "binaryMediaTypes": [ - "*/*" - ], - "createdDate": "datetime", - "disableExecuteApiEndpoint": false, - "endpointConfiguration": { - "ipAddressType": "ipv4", - "types": [ - "EDGE" - ] - }, - "id": "<id:1>", - "name": "<name:1>", - "rootResourceId": "<root-resource-id:1>", - "tags": { - "aws:cloudformation:logical-id": "Api", - "aws:cloudformation:stack-id": "arn:<partition>:cloudformation:<region>:111111111111:stack/<aws:cloudformation:stack-name:1>/<resource:1>", - "aws:cloudformation:stack-name": "<aws:cloudformation:stack-name:1>" - }, - "version": "1.0" - } - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_cfn_apigateway_rest_api": { - "recorded-date": "05-05-2025, 14:50:14", - "recorded-content": { - "rest-api": { - "apiKeySource": "HEADER", - "binaryMediaTypes": [ - "image/jpg", - "image/png" - ], - "createdDate": "datetime", - "disableExecuteApiEndpoint": false, - "endpointConfiguration": { - "ipAddressType": "ipv4", - "types": [ - "EDGE" - ] - }, - "id": "<id:1>", - "name": "DemoApi_dev", - "rootResourceId": "<root-resource-id:1>", - "tags": { - "aws:cloudformation:logical-id": "<aws:cloudformation:logical-id:1>", - "aws:cloudformation:stack-id": "arn:<partition>:cloudformation:<region>:111111111111:stack/<aws:cloudformation:stack-name:1>/<resource:1>", - "aws:cloudformation:stack-name": "<aws:cloudformation:stack-name:1>" - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_apigateway_deployment_canary_settings": { - "recorded-date": "23-07-2025, 23:07:05", - "recorded-content": { - "get-stages": { - "item": [ - { - "cacheClusterEnabled": false, - "cacheClusterStatus": "NOT_AVAILABLE", - "canarySettings": { - "deploymentId": "<deployment-id:1>", - "percentTraffic": 50.0, - "stageVariableOverrides": { - "lambdaAlias": "Dev" - }, - "useStageCache": false - }, - "createdDate": "datetime", - "deploymentId": "<deployment-id:2>", - "lastUpdatedDate": "datetime", - "methodSettings": {}, - "stageName": "prod", - "tags": { - "aws:cloudformation:logical-id": "Stage", - "aws:cloudformation:stack-id": "arn:<partition>:cloudformation:<region>:111111111111:stack/<aws:cloudformation:stack-name:1>/<resource:1>", - "aws:cloudformation:stack-name": "<aws:cloudformation:stack-name:1>" - }, - "tracingEnabled": false, - "variables": { - "lambdaAlias": "Prod" - } - } - ], - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "get-deployments": { - "items": [ - { - "createdDate": "datetime", - "description": "basic deployment", - "id": "<deployment-id:2>" - }, - { - "createdDate": "datetime", - "description": "canary description", - "id": "<deployment-id:1>" - } - ], - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - } -} diff --git c/tests/aws/services/cloudformation/resources/test_apigateway.validation.json i/tests/aws/services/cloudformation/resources/test_apigateway.validation.json deleted file mode 100644 index 4008e85bfca4..000000000000 --- c/tests/aws/services/cloudformation/resources/test_apigateway.validation.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "tests/aws/services/cloudformation/resources/test_apigateway.py::TestServerlessApigwLambda::test_serverless_like_deployment_with_update": { - "last_validated_date": "2024-02-19T08:55:12+00:00" - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_api_gateway_with_policy_as_dict": { - "last_validated_date": "2025-07-15T19:30:59+00:00", - "durations_in_seconds": { - "setup": 0.47, - "call": 11.81, - "teardown": 4.71, - "total": 16.99 - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_apigateway_deployment_canary_settings": { - "last_validated_date": "2025-07-23T23:07:16+00:00", - "durations_in_seconds": { - "setup": 0.44, - "call": 22.5, - "teardown": 11.11, - "total": 34.05 - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_cfn_apigateway_rest_api": { - "last_validated_date": "2025-05-05T14:50:14+00:00" - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_cfn_apigateway_swagger_import": { - "last_validated_date": "2025-05-05T14:23:13+00:00" - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_cfn_deploy_apigateway_from_s3_swagger": { - "last_validated_date": "2025-07-15T20:30:33+00:00", - "durations_in_seconds": { - "setup": 1.02, - "call": 18.79, - "teardown": 8.1, - "total": 27.91 - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_cfn_deploy_apigateway_integration": { - "last_validated_date": "2025-07-15T19:28:58+00:00", - "durations_in_seconds": { - "setup": 0.46, - "call": 26.77, - "teardown": 13.21, - "total": 40.44 - } - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_cfn_deploy_apigateway_models": { - "last_validated_date": "2024-06-21T00:09:05+00:00" - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_cfn_with_apigateway_resources": { - "last_validated_date": "2024-06-20T23:54:26+00:00" - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_rest_api_serverless_ref_resolving": { - "last_validated_date": "2023-07-06T19:01:08+00:00" - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_update_apigateway_stage": { - "last_validated_date": "2024-11-07T05:35:20+00:00" - }, - "tests/aws/services/cloudformation/resources/test_apigateway.py::test_update_usage_plan": { - "last_validated_date": "2024-09-13T09:57:21+00:00" - } -} diff --git c/tests/aws/services/cloudformation/resources/test_cloudwatch.snapshot.json i/tests/aws/services/cloudformation/resources/test_cloudwatch.snapshot.json deleted file mode 100644 index 8a0c497877d0..000000000000 --- c/tests/aws/services/cloudformation/resources/test_cloudwatch.snapshot.json +++ /dev/null @@ -1,119 +0,0 @@ -{ - "tests/aws/services/cloudformation/resources/test_cloudwatch.py::test_alarm_creation": { - "recorded-date": "25-09-2023, 10:28:42", - "recorded-content": { - "alarm_outputs": { - "AlarmArnFromAtt": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:<resource:1>", - "AlarmName": "<resource:1>" - } - } - }, - "tests/aws/services/cloudformation/resources/test_cloudwatch.py::test_composite_alarm_creation": { - "recorded-date": "16-07-2024, 10:41:22", - "recorded-content": { - "composite_alarm": [ - { - "ActionsEnabled": true, - "AlarmActions": [ - "arn:<partition>:sns:<region>:111111111111:<alarm-action-name:1>" - ], - "AlarmArn": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:HighResourceUsage", - "AlarmConfigurationUpdatedTimestamp": "timestamp", - "AlarmDescription": "Indicates that the system resource usage is high while no known deployment is in progress", - "AlarmName": "HighResourceUsage", - "AlarmRule": "(ALARM(HighCPUUsage) OR ALARM(HighMemoryUsage))", - "InsufficientDataActions": [], - "OKActions": [], - "StateReason": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:HighResourceUsage was created and its alarm rule evaluates to OK", - "StateReasonData": { - "triggeringAlarms": [ - { - "arn": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:HighCPUUsage", - "state": { - "value": "INSUFFICIENT_DATA", - "timestamp": "date" - } - }, - { - "arn": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:HighMemoryUsage", - "state": { - "value": "INSUFFICIENT_DATA", - "timestamp": "date" - } - } - ] - }, - "StateUpdatedTimestamp": "timestamp", - "StateValue": "OK", - "StateTransitionedTimestamp": "timestamp" - } - ], - "metric_alarm": [ - { - "AlarmName": "HighMemoryUsage", - "AlarmArn": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:HighMemoryUsage", - "AlarmDescription": "Memory usage is high", - "AlarmConfigurationUpdatedTimestamp": "timestamp", - "ActionsEnabled": true, - "OKActions": [], - "AlarmActions": [], - "InsufficientDataActions": [], - "StateValue": "INSUFFICIENT_DATA", - "StateReason": "Unchecked: Initial alarm creation", - "StateUpdatedTimestamp": "timestamp", - "MetricName": "MemoryUsage", - "Namespace": "CustomNamespace", - "Statistic": "Average", - "Dimensions": [], - "Period": 60, - "EvaluationPeriods": 1, - "Threshold": 65.0, - "ComparisonOperator": "GreaterThanThreshold", - "TreatMissingData": "breaching", - "StateTransitionedTimestamp": "timestamp" - } - ] - } - }, - "tests/aws/services/cloudformation/resources/test_cloudwatch.py::test_alarm_no_statistic": { - "recorded-date": "27-11-2023, 10:08:09", - "recorded-content": {} - }, - "tests/aws/services/cloudformation/resources/test_cloudwatch.py::test_alarm_ext_statistic": { - "recorded-date": "27-11-2023, 10:09:46", - "recorded-content": { - "simple_alarm": [ - { - "AlarmName": "<alarm-name:1>", - "AlarmArn": "arn:<partition>:cloudwatch:<region>:111111111111:alarm:<alarm-name:1>", - "AlarmDescription": "uses extended statistic", - "AlarmConfigurationUpdatedTimestamp": "timestamp", - "ActionsEnabled": true, - "OKActions": [], - "AlarmActions": [], - "InsufficientDataActions": [], - "StateValue": "INSUFFICIENT_DATA", - "StateReason": "Unchecked: Initial alarm creation", - "StateUpdatedTimestamp": "timestamp", - "MetricName": "Duration", - "Namespace": "<namespace:1>", - "ExtendedStatistic": "p99", - "Dimensions": [ - { - "Name": "FunctionName", - "Value": "my-function" - } - ], - "Period": 300, - "Unit": "Count", - "EvaluationPeriods": 3, - "DatapointsToAlarm": 3, - "Threshold": 10.0, - "ComparisonOperator": "GreaterThanOrEqualToThreshold", - "TreatMissingData": "ignore", - "StateTransitionedTimestamp": "timestamp" - } - ] - } - } -} diff --git c/tests/aws/services/cloudformation/resources/test_cloudwatch.validation.json i/tests/aws/services/cloudformation/resources/test_cloudwatch.validation.json deleted file mode 100644 index 73801e4f3c74..000000000000 --- c/tests/aws/services/cloudformation/resources/test_cloudwatch.validation.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "tests/aws/services/cloudformation/resources/test_cloudwatch.py::test_alarm_creation": { - "last_validated_date": "2023-09-25T08:28:42+00:00" - }, - "tests/aws/services/cloudformation/resources/test_cloudwatch.py::test_alarm_ext_statistic": { - "last_validated_date": "2023-11-27T09:09:46+00:00" - }, - "tests/aws/services/cloudformation/resources/test_cloudwatch.py::test_composite_alarm_creation": { - "last_validated_date": "2024-07-16T10:43:30+00:00" - } -} diff --git c/tests/aws/services/cloudformation/resources/test_dynamodb.snapshot.json i/tests/aws/services/cloudformation/resources/test_dynamodb.snapshot.json deleted file mode 100644 index 3f6efc6628fb..000000000000 --- c/tests/aws/services/cloudformation/resources/test_dynamodb.snapshot.json +++ /dev/null @@ -1,349 +0,0 @@ -{ - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_default_name_for_table": { - "recorded-date": "28-08-2023, 12:34:19", - "recorded-content": { - "table_description": { - "Table": { - "AttributeDefinitions": [ - { - "AttributeName": "keyName", - "AttributeType": "S" - } - ], - "CreationDateTime": "datetime", - "DeletionProtectionEnabled": false, - "ItemCount": 0, - "KeySchema": [ - { - "AttributeName": "keyName", - "KeyType": "HASH" - } - ], - "ProvisionedThroughput": { - "NumberOfDecreasesToday": 0, - "ReadCapacityUnits": 5, - "WriteCapacityUnits": 5 - }, - "TableArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>", - "TableId": "<uuid:1>", - "TableName": "<table-name:1>", - "TableSizeBytes": 0, - "TableStatus": "ACTIVE" - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - }, - "list_tags_of_resource": { - "Tags": [ - { - "Key": "TagKey1", - "Value": "TagValue1" - }, - { - "Key": "TagKey2", - "Value": "TagValue2" - } - ], - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_billing_mode_as_conditional[PROVISIONED]": { - "recorded-date": "28-08-2023, 12:34:41", - "recorded-content": { - "table_description": { - "Table": { - "AttributeDefinitions": [ - { - "AttributeName": "id", - "AttributeType": "S" - } - ], - "CreationDateTime": "datetime", - "DeletionProtectionEnabled": false, - "ItemCount": 0, - "KeySchema": [ - { - "AttributeName": "id", - "KeyType": "HASH" - } - ], - "LatestStreamArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>/stream/<latest-stream-label:1>", - "LatestStreamLabel": "<latest-stream-label:1>", - "ProvisionedThroughput": { - "NumberOfDecreasesToday": 0, - "ReadCapacityUnits": 5, - "WriteCapacityUnits": 5 - }, - "StreamSpecification": { - "StreamEnabled": true, - "StreamViewType": "NEW_AND_OLD_IMAGES" - }, - "TableArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>", - "TableId": "<uuid:1>", - "TableName": "<table-name:1>", - "TableSizeBytes": 0, - "TableStatus": "ACTIVE" - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_billing_mode_as_conditional[PAY_PER_REQUEST]": { - "recorded-date": "28-08-2023, 12:35:02", - "recorded-content": { - "table_description": { - "Table": { - "AttributeDefinitions": [ - { - "AttributeName": "id", - "AttributeType": "S" - } - ], - "BillingModeSummary": { - "BillingMode": "PAY_PER_REQUEST", - "LastUpdateToPayPerRequestDateTime": "datetime" - }, - "CreationDateTime": "datetime", - "DeletionProtectionEnabled": false, - "ItemCount": 0, - "KeySchema": [ - { - "AttributeName": "id", - "KeyType": "HASH" - } - ], - "LatestStreamArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>/stream/<latest-stream-label:1>", - "LatestStreamLabel": "<latest-stream-label:1>", - "ProvisionedThroughput": { - "NumberOfDecreasesToday": 0, - "ReadCapacityUnits": 0, - "WriteCapacityUnits": 0 - }, - "StreamSpecification": { - "StreamEnabled": true, - "StreamViewType": "NEW_AND_OLD_IMAGES" - }, - "TableArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>", - "TableId": "<uuid:1>", - "TableName": "<table-name:1>", - "TableSizeBytes": 0, - "TableStatus": "ACTIVE" - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_global_table": { - "recorded-date": "01-12-2023, 12:54:13", - "recorded-content": { - "table_description": { - "Table": { - "AttributeDefinitions": [ - { - "AttributeName": "keyName", - "AttributeType": "S" - } - ], - "BillingModeSummary": { - "BillingMode": "PAY_PER_REQUEST", - "LastUpdateToPayPerRequestDateTime": "datetime" - }, - "CreationDateTime": "datetime", - "DeletionProtectionEnabled": false, - "ItemCount": 0, - "KeySchema": [ - { - "AttributeName": "keyName", - "KeyType": "HASH" - } - ], - "ProvisionedThroughput": { - "NumberOfDecreasesToday": 0, - "ReadCapacityUnits": 0, - "WriteCapacityUnits": 0 - }, - "TableArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>", - "TableId": "<uuid:1>", - "TableName": "<table-name:1>", - "TableSizeBytes": 0, - "TableStatus": "ACTIVE" - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_ttl_cdk": { - "recorded-date": "14-02-2024, 13:29:07", - "recorded-content": { - "table": { - "TimeToLiveDescription": { - "AttributeName": "expire_at", - "TimeToLiveStatus": "ENABLED" - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_table_with_ttl_and_sse": { - "recorded-date": "12-03-2024, 15:42:18", - "recorded-content": { - "table_description": { - "Table": { - "AttributeDefinitions": [ - { - "AttributeName": "pk", - "AttributeType": "S" - }, - { - "AttributeName": "sk", - "AttributeType": "S" - } - ], - "CreationDateTime": "datetime", - "DeletionProtectionEnabled": false, - "ItemCount": 0, - "KeySchema": [ - { - "AttributeName": "pk", - "KeyType": "HASH" - }, - { - "AttributeName": "sk", - "KeyType": "RANGE" - } - ], - "ProvisionedThroughput": { - "NumberOfDecreasesToday": 0, - "ReadCapacityUnits": 1, - "WriteCapacityUnits": 1 - }, - "SSEDescription": { - "KMSMasterKeyArn": "<kms-arn:1>", - "SSEType": "KMS", - "Status": "ENABLED" - }, - "TableArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>", - "TableId": "<uuid:1>", - "TableName": "<table-name:1>", - "TableSizeBytes": 0, - "TableStatus": "ACTIVE" - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_global_table_with_ttl_and_sse": { - "recorded-date": "12-03-2024, 15:44:36", - "recorded-content": { - "table_description": { - "Table": { - "AttributeDefinitions": [ - { - "AttributeName": "gsi1pk", - "AttributeType": "S" - }, - { - "AttributeName": "gsi1sk", - "AttributeType": "S" - }, - { - "AttributeName": "pk", - "AttributeType": "S" - }, - { - "AttributeName": "sk", - "AttributeType": "S" - } - ], - "BillingModeSummary": { - "BillingMode": "PAY_PER_REQUEST", - "LastUpdateToPayPerRequestDateTime": "datetime" - }, - "CreationDateTime": "datetime", - "DeletionProtectionEnabled": false, - "GlobalSecondaryIndexes": [ - { - "IndexArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>/index/GSI1", - "IndexName": "GSI1", - "IndexSizeBytes": 0, - "IndexStatus": "ACTIVE", - "ItemCount": 0, - "KeySchema": [ - { - "AttributeName": "gsi1pk", - "KeyType": "HASH" - }, - { - "AttributeName": "gsi1sk", - "KeyType": "RANGE" - } - ], - "Projection": { - "ProjectionType": "ALL" - }, - "ProvisionedThroughput": { - "NumberOfDecreasesToday": 0, - "ReadCapacityUnits": 0, - "WriteCapacityUnits": 0 - } - } - ], - "ItemCount": 0, - "KeySchema": [ - { - "AttributeName": "pk", - "KeyType": "HASH" - }, - { - "AttributeName": "sk", - "KeyType": "RANGE" - } - ], - "ProvisionedThroughput": { - "NumberOfDecreasesToday": 0, - "ReadCapacityUnits": 0, - "WriteCapacityUnits": 0 - }, - "SSEDescription": { - "KMSMasterKeyArn": "<kms-arn:1>", - "SSEType": "KMS", - "Status": "ENABLED" - }, - "TableArn": "arn:<partition>:dynamodb:<region>:111111111111:table/<table-name:1>", - "TableClassSummary": { - "TableClass": "STANDARD" - }, - "TableId": "<uuid:1>", - "TableName": "<table-name:1>", - "TableSizeBytes": 0, - "TableStatus": "ACTIVE" - }, - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - } -} diff --git c/tests/aws/services/cloudformation/resources/test_dynamodb.validation.json i/tests/aws/services/cloudformation/resources/test_dynamodb.validation.json deleted file mode 100644 index fc40777d4d84..000000000000 --- c/tests/aws/services/cloudformation/resources/test_dynamodb.validation.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_billing_mode_as_conditional[PAY_PER_REQUEST]": { - "last_validated_date": "2023-08-28T10:35:02+00:00" - }, - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_billing_mode_as_conditional[PROVISIONED]": { - "last_validated_date": "2023-08-28T10:34:41+00:00" - }, - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_default_name_for_table": { - "last_validated_date": "2023-08-28T10:34:19+00:00" - }, - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_global_table": { - "last_validated_date": "2023-12-01T11:54:13+00:00" - }, - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_global_table_with_ttl_and_sse": { - "last_validated_date": "2024-03-12T15:44:36+00:00" - }, - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_table_with_ttl_and_sse": { - "last_validated_date": "2024-03-12T15:42:18+00:00" - }, - "tests/aws/services/cloudformation/resources/test_dynamodb.py::test_ttl_cdk": { - "last_validated_date": "2024-02-14T13:29:07+00:00" - } -} diff --git c/tests/aws/services/cloudformation/resources/test_ec2.snapshot.json i/tests/aws/services/cloudformation/resources/test_ec2.snapshot.json deleted file mode 100644 index bbdc8564773b..000000000000 --- c/tests/aws/services/cloudformation/resources/test_ec2.snapshot.json +++ /dev/null @@ -1,310 +0,0 @@ -{ - "tests/aws/services/cloudformation/resources/test_ec2.py::test_internet_gateway_ref_and_attr": { - "recorded-date": "13-02-2023, 17:13:41", - "recorded-content": { - "outputs": { - "IdAttachment": "<internet-gateway-ref:1>", - "RefAttachment": "<internet-gateway-ref:1>" - }, - "description": { - "DriftInformation": { - "StackResourceDriftStatus": "NOT_CHECKED" - }, - "LastUpdatedTimestamp": "timestamp", - "LogicalResourceId": "Gateway", - "Metadata": {}, - "PhysicalResourceId": "<internet-gateway-ref:1>", - "ResourceStatus": "CREATE_COMPLETE", - "ResourceType": "AWS::EC2::InternetGateway", - "StackId": "arn:<partition>:cloudformation:<region>:111111111111:stack/<stack-name:1>/<resource:1>", - "StackName": "<stack-name:1>" - } - } - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_dhcp_options": { - "recorded-date": "19-10-2023, 14:51:28", - "recorded-content": { - "description": { - "DhcpConfigurations": [ - { - "Key": "domain-name", - "Values": [ - { - "Value": "example.com" - } - ] - }, - { - "Key": "domain-name-servers", - "Values": [ - { - "Value": "AmazonProvidedDNS" - } - ] - }, - { - "Key": "netbios-name-servers", - "Values": [ - { - "Value": "10.2.5.1" - } - ] - }, - { - "Key": "netbios-node-type", - "Values": [ - { - "Value": "2" - } - ] - }, - { - "Key": "ntp-servers", - "Values": [ - { - "Value": "10.2.5.1" - } - ] - } - ], - "DhcpOptionsId": "<dhcp-options-id:1>", - "OwnerId": "111111111111", - "Tags": [ - { - "Key": "project", - "Value": "123" - }, - { - "Key": "aws:cloudformation:logical-id", - "Value": "myDhcpOptions" - }, - { - "Key": "aws:cloudformation:stack-name", - "Value": "stack-698b113f" - }, - { - "Key": "aws:cloudformation:stack-id", - "Value": "arn:<partition>:cloudformation:<region>:111111111111:stack/stack-698b113f/d892a0f0-6eb8-11ee-ab19-0a5372e03565" - } - ] - } - } - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_transit_gateway_attachment": { - "recorded-date": "08-04-2025, 10:51:02", - "recorded-content": { - "attachment": { - "Association": { - "State": "associated", - "TransitGatewayRouteTableId": "<transit-gateway-route-table-id:1>" - }, - "CreationTime": "datetime", - "ResourceId": "<resource-id:1>", - "ResourceOwnerId": "111111111111", - "ResourceType": "vpc", - "State": "available", - "Tags": [ - { - "Key": "Name", - "Value": "example-tag" - } - ], - "TransitGatewayAttachmentId": "<transit-gateway-attachment-id:1>", - "TransitGatewayId": "<transit-gateway-id:1>", - "TransitGatewayOwnerId": "111111111111" - }, - "gateway": { - "CreationTime": "datetime", - "Description": "TGW Route Integration Test", - "Options": { - "AmazonSideAsn": 65000, - "AssociationDefaultRouteTableId": "<transit-gateway-route-table-id:1>", - "AutoAcceptSharedAttachments": "disable", - "DefaultRouteTableAssociation": "enable", - "DefaultRouteTablePropagation": "enable", - "DnsSupport": "enable", - "MulticastSupport": "disable", - "PropagationDefaultRouteTableId": "<transit-gateway-route-table-id:1>", - "SecurityGroupReferencingSupport": "disable", - "VpnEcmpSupport": "enable" - }, - "OwnerId": "111111111111", - "State": "available", - "Tags": [ - { - "Key": "Application", - "Value": "arn:<partition>:cloudformation:<region>:111111111111:stack/stack-31597705/521e4e40-ecce-11ee-806c-0affc1ff51e7" - } - ], - "TransitGatewayArn": "arn:<partition>:ec2:<region>:111111111111:transit-gateway/<transit-gateway-id:1>", - "TransitGatewayId": "<transit-gateway-id:1>" - } - } - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_vpc_with_route_table": { - "recorded-date": "19-06-2024, 16:48:31", - "recorded-content": { - "route_table": { - "RouteTables": [ - { - "Associations": [], - "OwnerId": "111111111111", - "PropagatingVgws": [], - "RouteTableId": "<route-table-id:1>", - "Routes": [ - { - "DestinationCidrBlock": "100.0.0.0/20", - "GatewayId": "local", - "Origin": "CreateRouteTable", - "State": "active" - } - ], - "Tags": { - "aws:cloudformation:logical-id": "RouteTable", - "aws:cloudformation:stack-id": "<stack_id>", - "aws:cloudformation:stack-name": "<stack_name>", - "env": "production" - }, - "VpcId": "<vpc-id:1>" - } - ], - "ResponseMetadata": { - "HTTPHeaders": {}, - "HTTPStatusCode": 200 - } - } - } - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_simple_route_table_creation_without_vpc": { - "recorded-date": "01-07-2024, 20:10:52", - "recorded-content": { - "tags": { - "Name": "Suspicious Route Table" - }, - "route_table": { - "Associations": [], - "OwnerId": "111111111111", - "PropagatingVgws": [], - "RouteTableId": "<vpc-id:2>", - "Routes": [ - { - "DestinationCidrBlock": "10.0.0.0/16", - "GatewayId": "local", - "Origin": "CreateRouteTable", - "State": "active" - } - ], - "VpcId": "<vpc-id:1>" - } - } - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_simple_route_table_creation": { - "recorded-date": "01-07-2024, 20:13:48", - "recorded-content": { - "tags": { - "Name": "Suspicious Route table" - }, - "route_table": { - "Associations": [], - "OwnerId": "111111111111", - "PropagatingVgws": [], - "RouteTableId": "<vpc-id:2>", - "Routes": [ - { - "DestinationCidrBlock": "10.0.0.0/16", - "GatewayId": "local", - "Origin": "CreateRouteTable", - "State": "active" - } - ], - "VpcId": "<vpc-id:1>" - } - } - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_cfn_with_multiple_route_table_associations": { - "recorded-date": "02-07-2024, 15:29:41", - "recorded-content": { - "route_table": { - "Associations": [ - { - "AssociationState": { - "State": "associated" - }, - "Main": false, - "RouteTableAssociationId": "<route-table-association-id:1>", - "RouteTableId": "<route-table-id:1>", - "SubnetId": "<subnet-id:1>" - }, - { - "AssociationState": { - "State": "associated" - }, - "Main": false, - "RouteTableAssociationId": "<route-table-association-id:2>", - "RouteTableId": "<route-table-id:1>", - "SubnetId": "<subnet-id:2>" - } - ], - "OwnerId": "111111111111", - "PropagatingVgws": [], - "RouteTableId": "<route-table-id:1>", - "Routes": [ - { - "DestinationCidrBlock": "100.0.0.0/20", - "GatewayId": "local", - "Origin": "CreateRouteTable", - "State": "active" - } - ], - "Tags": [ - { - "Key": "aws:cloudformation:stack-id", - "Value": "arn:<partition>:cloudformation:<region>:111111111111:stack/stack-2264231d/d12f4090-3887-11ef-ba9f-0e78e2279133" - }, - { - "Key": "aws:cloudformation:logical-id", - "Value": "RouteTable" - }, - { - "Key": "aws:cloudformation:stack-name", - "Value": "stack-2264231d" - }, - { - "Key": "env", - "Value": "production" - } - ], - "VpcId": "<vpc-id:1>" - } - } - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_ec2_security_group_id_with_vpc": { - "recorded-date": "19-07-2024, 15:53:16", - "recorded-content": { - "references": { - "SGWithVpcIdGroupId": "<with-vpcid-group-id>", - "SGWithVpcIdRef": "<with-vpcid-group-id>", - "SGWithoutVpcIdGroupId": "<without-vpcid-group-id>", - "SGWithoutVpcIdRef": "<without-vpcid-group-name>" - } - } - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_keypair_create_import": { - "recorded-date": "12-08-2024, 21:51:36", - "recorded-content": { - "outputs": { - "GeneratedKeyPairFingerprint": "<fingerprint>", - "GeneratedKeyPairName": "<generated-key-name>", - "ImportedKeyPairFingerprint": "4LmcYnyBOqlloHZ5TKAxfa8BgMK2wL6WeOOTvXVdhmw=", - "ImportedKeyPairName": "<imported-key-name>" - } - } - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_vpc_gateway_attachment": { - "recorded-date": "18-07-2025, 20:52:38", - "recorded-content": { - "attachment-1-ref": "IGW|<vpc-id>", - "attachment-2-ref": "VGW|<vpc-id>" - } - } -} diff --git c/tests/aws/services/cloudformation/resources/test_ec2.validation.json i/tests/aws/services/cloudformation/resources/test_ec2.validation.json deleted file mode 100644 index f02183886320..000000000000 --- c/tests/aws/services/cloudformation/resources/test_ec2.validation.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "tests/aws/services/cloudformation/resources/test_ec2.py::test_cfn_update_ec2_instance_type": { - "last_validated_date": "2024-06-19T19:56:42+00:00" - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_cfn_with_multiple_route_table_associations": { - "last_validated_date": "2024-07-02T15:29:41+00:00" - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_dhcp_options": { - "last_validated_date": "2023-10-19T12:51:28+00:00" - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_ec2_security_group_id_with_vpc": { - "last_validated_date": "2024-07-19T15:53:16+00:00" - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_internet_gateway_ref_and_attr": { - "last_validated_date": "2023-02-13T16:13:41+00:00" - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_keypair_create_import": { - "last_validated_date": "2024-08-12T21:51:36+00:00" - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_simple_route_table_creation": { - "last_validated_date": "2024-07-01T20:13:48+00:00" - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_simple_route_table_creation_without_vpc": { - "last_validated_date": "2024-07-01T20:10:52+00:00" - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_transit_gateway_attachment": { - "last_validated_date": "2025-04-08T10:51:02+00:00" - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_vpc_creates_default_sg": { - "last_validated_date": "2024-04-01T11:21:54+00:00" - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_vpc_gateway_attachment": { - "last_validated_date": "2025-07-18T20:50:13+00:00", - "durations_in_seconds": { - "setup": 1.21, - "call": 24.77, - "teardown": 6.47, - "total": 32.45 - } - }, - "tests/aws/services/cloudformation/resources/test_ec2.py::test_vpc_with_route_table": { - "last_validated_date": "2024-06-19T16:48:31+00:00" - } -} diff --git c/tests/aws/services/cloudformation/resources/test_elasticsearch.snapshot.json i/tests/aws/services/cloudformation/resources/test_elasticsearch.snapshot.json deleted file mode 100644 index 68c60ae22ea8..000000000000 --- c/tests/aws/services/cloudformation/resources/test_elasticsearch.snapshot.json +++ /dev/null @@ -1,312 +0,0 @@ -{ - "tests/aws/services/cloudformation/resources/test_elasticsearch.py::test_cfn_handle_elasticsearch_domain": { - "recorded-date": "02-07-2024, 17:30:21", - "recorded-content": { - "domain": { - "DomainStatus": { - "ARN": "arn:<partition>:es:<region>:111111111111:domain/<domain-name:1>", - "AccessPolicies": "", - "AdvancedOptions": { - "override_main_response_version": "false", - "rest.action.multi.allow_explicit_index": "true" - }, - "AdvancedSecurityOptions": { - "AnonymousAuthEnabled": false, - "Enabled": false, - "InternalUserDatabaseEnabled": false - }, - "AutoTuneOptions": { - "State": "ENABLED" - }, - "ChangeProgressDetails": { - "ChangeId": "<uuid:1>", - "ConfigChangeStatus": "ApplyingChanges", - "InitiatedBy": "CUSTOMER", - "LastUpdatedTime": "datetime", - "StartTime": "datetime" - }, - "CognitoOptions": { - "Enabled": false - }, - "Created": true, - "Deleted": false, - "DomainEndpointOptions": { - "CustomEndpointEnabled": false, - "EnforceHTTPS": false, - "TLSSecurityPolicy": "<t-l-s-security-policy:1>" - }, - "DomainId": "111111111111/<domain-name:1>", - "DomainName": "<domain-name:1>", - "DomainProcessingStatus": "Creating", - "EBSOptions": { - "EBSEnabled": true, - "Iops": 0, - "VolumeSize": 20, - "VolumeType": "gp2" - }, - "ElasticsearchClusterConfig": { - "ColdStorageOptions": { - "Enabled": false - }, - "DedicatedMasterCount": 3, - "DedicatedMasterEnabled": true, - "DedicatedMasterType": "m3.medium.elasticsearch", - "InstanceCount": 2, - "InstanceType": "m3.medium.elasticsearch", - "WarmEnabled": false, - "ZoneAwarenessConfig": { - "AvailabilityZoneCount": 2 - }, - "ZoneAwarenessEnabled": true - }, - "ElasticsearchVersion": "7.10", - "EncryptionAtRestOptions": { - "Enabled": false - }, - "Endpoint": "search-<domain-name:1>-4kyrgtn4a3gwrja6k4o7nvcrha.<region>.es.amazonaws.com", - "ModifyingProperties": [ - { - "ActiveValue": "", - "Name": "AdvancedOptions", - "PendingValue": { - "override_main_response_version": "false", - "rest.action.multi.allow_explicit_index": "true" - }, - "ValueType": "STRINGIFIED_JSON" - }, - { - "ActiveValue": "", - "Name": "AdvancedSecurityOptions.AnonymousAuthDisableDate", - "PendingValue": "false", - "ValueType": "PLAIN_TEXT" - }, - { - "ActiveValue": "", - "Name": "AdvancedSecurityOptions.AnonymousAuthEnabled", - "PendingValue": "false", - "ValueType": "PLAIN_TEXT" - }, - { - "ActiveValue": "", - "Name": "AdvancedSecurityOptions.InternalUserDatabaseEnabled", - "PendingValue": "false", - "ValueType": "PLAIN_TEXT" - }, - { - "ActiveValue": "", - "Name": "AdvancedSecurityOptions.JWTOptions", - "PendingValue": "false", - "ValueType": "PLAIN_TEXT" - }, - { - "ActiveValue": "", - "Name": "AdvancedSecurityOptions.MasterUserOptions", - "PendingValue": "false", - "ValueType": "PLAIN_TEXT" - }, - { - "ActiveValue": "", - "Name": "AdvancedSecurityOptions.SAMLOptions", - "PendingValue": "false", - "ValueType": "PLAIN_TEXT" - }, - { - "ActiveValue": "", - "Name": "ElasticsearchClusterConfig.ColdStorageOptions", - "PendingValue": { - "Enabled": false - }, - "ValueType": "STRINGIFIED_JSON" - }, - { - "ActiveValue": "", - "Name": "ElasticsearchClusterConfig.DedicatedMasterCount", - "PendingValue": "3", - "ValueType": "PLAIN_TEXT" - }, - { - "ActiveValue": "", - "Name": "ElasticsearchClusterConfig.DedicatedMasterEnabled", - …
This is so we have some concrete commits to manually test with
This reverts commit 03eac10.
diff --git c/tests/aws/services/apigateway/resources/test_apigateway.py i/tests/aws/services/apigateway/resources/test_apigateway.py index 199909d..8c304cf 100644 --- c/tests/aws/services/apigateway/resources/test_apigateway.py +++ i/tests/aws/services/apigateway/resources/test_apigateway.py @@ -306,6 +306,7 @@ def test_cfn_deploy_apigateway_models(deploy_cfn_template, snapshot, aws_client) @markers.aws.validated +@markers.snapshot.skip_snapshot_verify(paths=["$..endpointConfiguration.ipAddressType"]) def test_cfn_deploy_apigateway_integration(deploy_cfn_template, snapshot, aws_client): snapshot.add_transformer(snapshot.transform.key_value("cacheNamespace")) @@ -340,6 +341,7 @@ def test_cfn_deploy_apigateway_integration(deploy_cfn_template, snapshot, aws_cl # TODO: missing from LS response "$.get-stage.methodSettings", "$.get-stage.tags", + "$..endpointConfiguration.ipAddressType", ] ) def test_cfn_deploy_apigateway_from_s3_swagger( @@ -538,6 +540,7 @@ def test_update_apigateway_stage(deploy_cfn_template, snapshot, aws_client): @markers.aws.validated +@markers.snapshot.skip_snapshot_verify(paths=["$..endpointConfiguration.ipAddressType"]) def test_api_gateway_with_policy_as_dict(deploy_cfn_template, snapshot, aws_client): template = """ Parameters: diff --git c/tests/aws/services/cloudformation/resources/test_sam.snapshot.json i/tests/aws/services/cloudformation/resources/test_sam.snapshot.json new file mode 100644 index 000000000000..a32c542 --- /dev/null +++ i/tests/aws/services/cloudformation/resources/test_sam.snapshot.json @@ -0,0 +1,106 @@ +{ + "tests/aws/services/cloudformation/resources/test_sam.py::test_sam_policies": { + "recorded-date": "11-07-2023, 18:08:53", + "recorded-content": { + "list_attached_role_policies": { + "AttachedPolicies": [ + { + "PolicyArn": "arn:<partition>:iam::aws:policy/service-role/<policy-name:1>", + "PolicyName": "<policy-name:1>" + }, + { + "PolicyArn": "arn:<partition>:iam::aws:policy/<policy-name:2>", + "PolicyName": "<policy-name:2>" + } + ], + "IsTruncated": false, + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + }, + "tests/aws/services/cloudformation/resources/test_sam.py::test_cfn_handle_serverless_api_resource": { + "recorded-date": "20-06-2024, 20:16:01", + "recorded-content": { + "get_rest_api": { + "apiKeySource": "HEADER", + "createdDate": "datetime", + "disableExecuteApiEndpoint": false, + "endpointConfiguration": { + "types": [ + "EDGE" + ] + }, + "id": "<id:1>", + "name": "<name:1>", + "rootResourceId": "<root-resource-id:1>", + "tags": { + "aws:cloudformation:logical-id": "Api", + "aws:cloudformation:stack-id": "arn:<partition>:cloudformation:<region>:111111111111:stack/<name:1>/<resource:1>", + "aws:cloudformation:stack-name": "<name:1>" + }, + "version": "1.0", + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + }, + "get_function": { + "Code": { + "Location": "<location>", + "RepositoryType": "S3" + }, + "Configuration": { + "Architectures": [ + "x86_64" + ], + "CodeSha256": "+xvKfGS3ENINs/yK7dLJgId2fDM+vv9OP03rJ9mLflU=", + "CodeSize": "<code-size>", + "Description": "", + "EphemeralStorage": { + "Size": 512 + }, + "FunctionArn": "arn:<partition>:lambda:<region>:111111111111:function:<function-name:1>", + "FunctionName": "<function-name:1>", + "Handler": "index.handler", + "LastModified": "date", + "LastUpdateStatus": "Successful", + "LoggingConfig": { + "LogFormat": "Text", + "LogGroup": "/aws/lambda/<function-name:1>" + }, + "MemorySize": 128, + "PackageType": "Zip", + "RevisionId": "<uuid:1>", + "Role": "arn:<partition>:iam::111111111111:role/<resource:2>", + "Runtime": "python3.11", + "RuntimeVersionConfig": { + "RuntimeVersionArn": "arn:<partition>:lambda:<region>::runtime:<resource:3>" + }, + "SnapStart": { + "ApplyOn": "None", + "OptimizationStatus": "Off" + }, + "State": "Active", + "Timeout": 3, + "TracingConfig": { + "Mode": "PassThrough" + }, + "Version": "$LATEST" + }, + "Tags": { + "aws:cloudformation:logical-id": "Lambda", + "aws:cloudformation:stack-id": "arn:<partition>:cloudformation:<region>:111111111111:stack/<name:1>/<resource:1>", + "aws:cloudformation:stack-name": "<name:1>", + "lambda:createdBy": "SAM" + }, + "ResponseMetadata": { + "HTTPHeaders": {}, + "HTTPStatusCode": 200 + } + } + } + } +} diff --git c/tests/aws/services/cloudwatch/resources/test_cloudwatch.py i/tests/aws/services/cloudwatch/resources/test_cloudwatch.py index f445f13..e957270 100644 --- c/tests/aws/services/cloudwatch/resources/test_cloudwatch.py +++ i/tests/aws/services/cloudwatch/resources/test_cloudwatch.py @@ -48,6 +48,8 @@ def test_alarm_creation(deploy_cfn_template, snapshot): "$..StateReason", "$..StateReasonData", "$..StateValue", + # only for v1 + "$..StateTransitionedTimestamp", ] ) def test_composite_alarm_creation(aws_client, deploy_cfn_template, snapshot): @@ -94,6 +96,12 @@ def test_composite_alarm_creation(aws_client, deploy_cfn_template, snapshot): @markers.aws.validated +@markers.snapshot.skip_snapshot_verify( + paths=[ + # only for v1 + "$..StateTransitionedTimestamp", + ] +) def test_alarm_ext_statistic(aws_client, deploy_cfn_template, snapshot): snapshot.add_transformer(snapshot.transform.cloudwatch_api()) stack = deploy_cfn_template( diff --git c/tests/aws/services/dynamodb/resources/test_dynamodb.py i/tests/aws/services/dynamodb/resources/test_dynamodb.py index 43c0bb7..d6876e3 100644 --- c/tests/aws/services/dynamodb/resources/test_dynamodb.py +++ i/tests/aws/services/dynamodb/resources/test_dynamodb.py @@ -69,6 +69,7 @@ def test_globalindex_read_write_provisioned_throughput_dynamodb_table( "$..Table.ProvisionedThroughput.LastIncreaseDateTime", "$..Table.Replicas", "$..Table.DeletionProtectionEnabled", + "$..Table.WarmThroughput", ] ) def test_default_name_for_table(deploy_cfn_template, snapshot, aws_client): @@ -94,6 +95,7 @@ def test_default_name_for_table(deploy_cfn_template, snapshot, aws_client): "$..Table.ProvisionedThroughput.LastIncreaseDateTime", "$..Table.Replicas", "$..Table.DeletionProtectionEnabled", + "$..Table.WarmThroughput", ] ) @pytest.mark.parametrize("billing_mode", ["PROVISIONED", "PAY_PER_REQUEST"]) @@ -121,6 +123,7 @@ def test_billing_mode_as_conditional(deploy_cfn_template, snapshot, aws_client, "$..Table.ProvisionedThroughput.LastDecreaseDateTime", "$..Table.ProvisionedThroughput.LastIncreaseDateTime", "$..Table.Replicas", + "$..Table.WarmThroughput", ] ) def test_global_table(deploy_cfn_template, snapshot, aws_client, region_name): diff --git c/tests/aws/services/es/resources/test_elasticsearch.py i/tests/aws/services/es/resources/test_elasticsearch.py index e88424f..6cadf02 100644 --- c/tests/aws/services/es/resources/test_elasticsearch.py +++ i/tests/aws/services/es/resources/test_elasticsearch.py @@ -17,6 +17,8 @@ from localstack.utils.strings import short_uid "$..DomainStatus.ElasticsearchClusterConfig.InstanceCount", "$..DomainStatus.ElasticsearchClusterConfig.ZoneAwarenessConfig", "$..DomainStatus.ElasticsearchClusterConfig.ZoneAwarenessEnabled", + "$..DomainStatus.ElasticsearchClusterConfig.DedicatedMasterType", + "$..DomainStatus.ElasticsearchClusterConfig.InstanceType", "$..DomainStatus.Endpoint", "$..DomainStatus.ModifyingProperties", "$..DomainStatus.Processing", diff --git c/tests/aws/services/lambda_/resources/test_lambda.py i/tests/aws/services/lambda_/resources/test_lambda.py index f404897..265fc5f 100644 --- c/tests/aws/services/lambda_/resources/test_lambda.py +++ i/tests/aws/services/lambda_/resources/test_lambda.py @@ -656,6 +656,7 @@ class TestCfnLambdaIntegrations: "$..CodeSize", "$..Configuration.Layers", "$..Tags", # missing cloudformation automatic resource tags for the lambda function + "$..RevisionId", ] ) @markers.aws.validated @@ -890,6 +891,7 @@ class TestCfnLambdaIntegrations: "$..Table.Replicas", # stream result "$..StreamDescription.CreationRequestDateTime", + "$..Table.WarmThroughput", ] ) @markers.aws.validated diff --git c/tests/aws/services/opensearch/resources/test_opensearch.py i/tests/aws/services/opensearch/resources/test_opensearch.py index 152e574..bc57887 100644 --- c/tests/aws/services/opensearch/resources/test_opensearch.py +++ i/tests/aws/services/opensearch/resources/test_opensearch.py @@ -70,6 +70,14 @@ def test_domain(deploy_cfn_template, aws_client, snapshot): "$..DomainStatus.OffPeakWindowOptions", "$..DomainStatus.ServiceSoftwareOptions.CurrentVersion", "$..DomainStatus.SoftwareUpdateOptions", + "$..DomainStatus.AIMLOptions", + "$..DomainStatus.ClusterConfig.DedicatedMasterType", + "$..DomainStatus.ClusterConfig.InstanceType", + "$..DomainStatus.DomainEndpointOptions.TLSSecurityPolicy", + "$..DomainStatus.DomainProcessingStatus", + "$..DomainStatus.IPAddressType", + "$..DomainStatus.IdentityCenterOptions", + "$..DomainStatus.ModifyingProperties", ] ) def test_domain_with_alternative_types(deploy_cfn_template, aws_client, snapshot): diff --git c/tests/aws/services/s3/resources/test_s3.py i/tests/aws/services/s3/resources/test_s3.py index a237479..88be10f 100644 --- c/tests/aws/services/s3/resources/test_s3.py +++ i/tests/aws/services/s3/resources/test_s3.py @@ -86,6 +86,7 @@ def test_website_configuration(deploy_cfn_template, snapshot, aws_client): @markers.aws.validated +@markers.snapshot.skip_snapshot_verify(paths=["$..CORSRules..MaxAgeSeconds"]) def test_cors_configuration(deploy_cfn_template, snapshot, aws_client): snapshot.add_transformer(snapshot.transform.cloudformation_api()) snapshot.add_transformer(snapshot.transform.s3_api()) diff --git c/tests/aws/services/sns/resources/test_sns.py i/tests/aws/services/sns/resources/test_sns.py index 340804f..8bc36ef 100644 --- c/tests/aws/services/sns/resources/test_sns.py +++ i/tests/aws/services/sns/resources/test_sns.py @@ -105,6 +105,7 @@ def test_deploy_stack_with_sns_topic(deploy_cfn_template, aws_client): @markers.aws.validated +@markers.snapshot.skip_snapshot_verify(paths=["$..Attributes.SubscriptionPrincipal"]) def test_update_subscription(snapshot, deploy_cfn_template, aws_client, sqs_queue, sns_topic): topic_arn = sns_topic["Attributes"]["TopicArn"] queue_url = sqs_queue
5432c3f
to
01a3f3f
Compare
Test Results (amd64) - Integration, Bootstrap 5 files 5 suites 2h 20m 34s ⏱️ For more details on these failures, see this check. Results for commit 4aeada4. |
Motivation
TBD
Changes