pvbouwel
9ed613e197
Better DDB expressions support2: ExpressionTree
...
Part of structured approach for UpdateExpressions:
1) Expression gets parsed into a tokenlist (tokenized)
2) Tokenlist get transformed to expression tree (AST) -> This commit
3) The AST gets validated (full semantic correctness)
4) AST gets processed to perform the update
This commit uses the tokenlist to build an expression tree. This tree is not
yet used. Still it allows to raise additional Validation Exceptions which
previously were missed silently therefore it allows tests to catch these type of
ValidationException. For that reason DDB UpdateExpressions will be parsed
already. It also makes sure we won't break existing tests.
One of the existing tests had to be changed in order to still pass:
- test_dynamodb_table_with_range_key.test_update_item_with_expression
This test passed in a numeric literal which is not supported by DynamoDB
and with the current tokenization it would get the same error as in AWS
DynamoDB.
2020-04-18 09:19:03 +01:00
pvbouwel
7ea419dd54
Better DDB expressions support1: TokenizationDDB
...
Currently the mock for DynamoDB has adhoc code to implement
its updateExpression functionality. This series will
transform the logic such that Update Expressions are processed
as follows:
1) Expression gets parsed into a tokenlist (tokenized) -> This commit
2) Tokenlist get transformed to expression tree (AST)
3) The AST gets validated (full semantic correctness)
4) AST gets processed to perform the update
This alows for a more realistic mocking. It will throw exceptions much
more aggressively avoiding situations where a test passes against the
mock but fails with an exception when running against AWS.
Introduction of step 3 also allows to have the update expression as an
atomic unit of work. So updates at the start of the expression cannot
be performed if there is an error further down the expression.
This specific commit will tokenize expressions but the tokenlist is not
yet used. It is purely to keep clear boundaries. It does do a minor
refactoring of the exceptions to allow more re-use and to ease testing.
This series of changes is to aid providing a long-term solution for
https://github.com/spulec/moto/issues/2806 .
2020-04-18 09:16:23 +01:00
Mike Grima
bdeeeb701a
Merge pull request #2880 from bblommers/bugfix/2877
...
EC2 - Ensure NCI always has a Subnet
2020-04-16 15:02:45 -07:00
Hugo Lopes Tavares
4dc46a697d
Bugfix: Allow stop_db_instance for compatible engines
...
From the RDS documentation:
You can stop and start a DB instance whether it is configured for a single Availability Zone or for Multi-AZ, for database engines that support Multi-AZ deployments. You can't stop an Amazon RDS for SQL Server DB instance in a Multi-AZ configuration.
https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_StopInstance.html#USER_StopInstance.Limitations
2020-04-16 15:14:37 -04:00
Erik Hovland
88494c58f9
Add a test for assume_role_with_saml.
...
Add a test with SAML assertion to test the assume_role_with_saml method
in the STSBackend.
2020-04-16 11:47:30 -07:00
Tim
92bbc3fbac
Adds initial support for secretsmanager update_secret
...
The support in this patch is preliminary and may or may not be feature complete.
It provides the basic support for update_secret so that future work can build
on it as needed.
2020-04-16 08:20:43 -07:00
Bert Blommers
870b34ba76
Spacing
2020-04-16 07:09:50 +01:00
Bert Blommers
47d80621f9
Merge branch 'master' into feature/dynamodb_item_limit
2020-04-16 07:07:59 +01:00
Bert Blommers
a6902e8713
Update tests/test_dynamodb2/test_dynamodb.py
...
Co-Authored-By: Guilherme Martins Crocetti <gmcrocetti@gmail.com>
2020-04-15 07:26:09 +01:00
Bert Blommers
532480a3b5
Merge pull request #2888 from usmangani1/lstack#1991
...
Added implementation for create-model,get-models,get-model in api gat…
2020-04-14 10:34:39 +01:00
Bert Blommers
69f963a3c2
Linting
2020-04-14 08:06:00 +01:00
Bert Blommers
d0c60ecaac
Merge pull request #2891 from DenverJ/enhancement/autoscaling-standby-terminate
...
Implement enter_standby, exit_standby and terminate_instance_in_auto_scaling_group
2020-04-14 08:01:50 +01:00
Bert Blommers
c2b4c397f2
DDB test - Fix KeySchema, and set BillingMode for easier online testing
2020-04-14 07:53:15 +01:00
Bert Blommers
b63a6f1336
Merge pull request #2884 from usmangani1/2263_Issue
...
Adding missing Param zoneId in the ec2 describe-availability-zone
2020-04-14 07:12:51 +01:00
DenverJ
d745dfd3d2
Implement enter_standby, exit_standby and terminate_instance_in_auto_scaling_group
2020-04-13 10:54:13 +10:00
usmankb
79e63e3bcf
Added implementation for create-model,get-models,get-model in api gateway
2020-04-12 17:49:22 +05:30
Bert Blommers
755a08e137
Merge pull request #2887 from DenverJ/enhancement/fix-describe-autoscaling-instances-filter
...
Add instance-id filter to describe_auto_scaling_instances
2020-04-12 11:09:31 +01:00
DenverJ
965046aa39
Fix formatting
2020-04-12 17:08:40 +10:00
DenverJ
593e5dc86a
Add instance-id filter to describe_auto_scaling_instances
2020-04-12 13:44:16 +10:00
usmankb
7a9cdd4fd2
Adding missing Param zoneId in the describe-availability-zone
2020-04-11 08:37:00 +05:30
Bert Blommers
48288d8bb1
Merge pull request #2878 from usmangani1/2187_Issue
...
Adding functionalities aws apigateway create domain name,get domain names,get domain name
2020-04-09 08:58:05 +01:00
Bert Blommers
1654280e43
Linting
2020-04-09 08:12:44 +01:00
usmankb
8542309fc9
conflicts
2020-04-08 22:00:48 +05:30
usmankb
af57cfc7ec
Added more tests and coverage
2020-04-08 21:54:26 +05:30
Bert Blommers
414fcf7bbd
Fix AvailibilityZones in CF tests
2020-04-08 15:14:39 +01:00
Bert Blommers
8475804a8b
Simplify tests
2020-04-08 14:02:35 +01:00
Bert Blommers
5c7e0b56af
#2877 - Ensure NetworkInterfaces are assigned to the default Subnet
2020-04-08 13:53:53 +01:00
Bert Blommers
8237fdaff0
Linting
2020-04-08 11:06:30 +01:00
Bert Blommers
54f51fc7c1
DynamoDB - TransactWriteItems implementation
2020-04-08 10:49:58 +01:00
Bert Blommers
3b9717d5b1
Merge pull request #2876 from tmwong2003/tmwong2003/ecs-run-task-support-default-cluster
...
Changed mock_ecs to support ecs.run_task calls with a default cluster
2020-04-08 07:53:27 +01:00
Theodore Wong
0163eb6a9d
Changed mock_ecs to support ecs.run_task calls with a default cluster
2020-04-07 15:32:44 -07:00
usmankb
856c07de63
aws apigateway create,get domain names
2020-04-08 03:18:42 +05:30
Bert Blommers
aae49493c4
Linting
2020-04-07 08:52:37 +01:00
usmankb
81ca5c3ab0
Implemented describe_instance_credit_specifications function in ec2 #2150 localstack
2020-04-06 21:25:59 +05:30
jess
49fd7988ab
make black happy
2020-04-06 19:55:54 +10:00
jess
4c2460ddfd
fix whitespace changes
2020-04-06 18:45:23 +10:00
jess
b6e73776d5
alter testcase to trigger issue #2868
2020-04-06 18:41:46 +10:00
Bert Blommers
280db9df6c
#2800 - CognitoIdentity - Fix format of Identity ID
2020-04-04 14:09:38 +01:00
mickeypash
a6864f483d
Use Python 2 format
2020-04-03 14:17:55 +01:00
Bert Blommers
9ab02e17d5
#883 - Lambda - Add test to verify remove_permission functinonality
2020-04-03 10:30:05 +01:00
mickeypash
d3367b8a90
Black formatting
2020-04-03 02:27:46 +01:00
mickeypash
76b9cbe16d
Fix test
2020-04-03 02:14:14 +01:00
mickeypash
231b100057
Add test scaffold. Currently broken
2020-04-03 01:58:14 +01:00
Guilherme Martins Crocetti
503eeb51ae
style with black
2020-04-01 22:48:40 -03:00
Guilherme Martins Crocetti
c25f6a72da
refactor put_rule test
2020-04-01 22:14:51 -03:00
Guilherme Martins Crocetti
c15ca133b8
add support for Fn::GetAtt in event's cloudformation
2020-04-01 22:14:51 -03:00
Guilherme Martins Crocetti
af08d71310
add support for RetentionInDays for LogGroup
2020-04-01 22:14:41 -03:00
Bert Blommers
8dbfd43c5c
Use TaggingService for S3 - Cleanup
2020-04-01 15:35:25 +01:00
Bert Blommers
f7ad4cbc09
Use TaggingService for S3 Objects
2020-03-31 12:04:04 +01:00
Mike Grima
0c191ac33b
Raise errors on tagging buckets with aws:*
...
Cannot tag S3 buckets with reserved tag key space `aws:`
2020-03-30 17:27:06 -07:00
Bert Blommers
7d524eaec9
Elastic Beanstalk - Rename and Add Implementation Coverage
2020-03-30 14:08:22 +01:00
Bert Blommers
888e0c31a0
Linting
2020-03-30 13:42:00 +01:00
Bert Blommers
3ece2dabff
Merge remote-tracking branch 'nielslaukens/feature/mock_eb' into feature/mock_eb
2020-03-30 13:38:56 +01:00
Andrea Amorosi
349b381390
Fixed dynamodb2 put_item ValidationException
2020-03-28 17:59:42 +00:00
Bert Blommers
fb0de99e81
#2239 - Initial implementation of CW.get_metric_data
2020-03-28 13:41:17 +00:00
Constantino Schillebeeckx
bb8d418054
fix: stepfunction stop_execution
...
Fixes #2846
Calling stop_execution on a stepfunction should set the status to `ABORTED` not `SUCCEEDED`.
2020-03-27 15:35:50 -05:00
Bert Blommers
04f488da62
#2388 - CloudFormation - CreateChangeSet does not create resources, as per spec
2020-03-24 10:22:08 +00:00
Bert Blommers
11526ced18
#2810 - EC2 - Explicitly set ebs_optimized to False if not specified
2020-03-24 09:24:38 +00:00
Guilherme Martins Crocetti
788b8fb6e1
Add tests for Events::Rule integration with cf
2020-03-23 22:17:02 -03:00
Bert Blommers
c3865532f9
#2711 - Register default S3 metrics in CloudWatch
2020-03-23 15:53:39 +00:00
Guilherme Martins Crocetti
98a17dfc46
Add test for boto3 integration
2020-03-22 18:03:42 -03:00
Guilherme Martins Crocetti
a1f664d2bb
Change put_rule (and it's response) and fix tests_events/
2020-03-22 17:33:44 -03:00
Guilherme Martins Crocetti
7318523b50
Add cloudformation support for EventBridge
2020-03-22 16:56:58 -03:00
gruebel
23dfecc845
Fix missing MessageAttributes when using RawMessageDelivery
2020-03-21 19:25:25 +01:00
Bert Blommers
e82e1e3f39
DynamoDB - Add 1MB item size check
2020-03-21 12:20:09 +00:00
Bert Blommers
5b596c8a78
#2699 - EC2 - Add Volumes using CloudFormation
2020-03-20 15:17:55 +00:00
Bert Blommers
b1da99aeda
#2797 - DynamoDB - Allow case insensitive AND in KeyConditionExpression
2020-03-20 12:29:04 +00:00
Steve Pulec
94f85902bc
Merge pull request #2821 from bblommers/feature/2255
...
CloudFormation - Add Support for FN:Transform and AWS:Include
2020-03-19 19:40:46 -05:00
Steve Pulec
0903f6a4a2
Merge pull request #2820 from bblommers/bug/2264
...
SES - Parse email address on verification
2020-03-19 19:39:45 -05:00
Steve Pulec
14b2811157
Merge pull request #2819 from bblommers/dynamodb_global_index_ordering
...
Dynamodb - Global index ordering
2020-03-19 19:39:09 -05:00
Steve Pulec
b0ea0aa162
Merge pull request #2818 from bblommers/cloudformation_stack_creation_time
...
Cloudformation - Stack creation time
2020-03-19 19:38:46 -05:00
Steve Pulec
78f5541953
Merge pull request #2817 from bblommers/dynamodb_add_index_status
...
DynamoDB - Add status to Global Indexes
2020-03-19 19:37:49 -05:00
Bert Blommers
cbf0397953
#2255 - CF - Implement FN::Transform and AWS::Include
2020-03-18 13:02:07 +00:00
Bert Blommers
f0cab68208
#2264 - SES - Ensure verify_email_address works with display names
2020-03-18 11:46:44 +00:00
Bert Blommers
71bf314a0f
Merge pull request #2799 from ImFlog/fix_dynamodb_updated_new
...
Fix UPDATED_NEW return values differences
2020-03-18 08:21:01 +00:00
Bert Blommers
aead80c392
Add missing region
2020-03-17 17:11:35 +00:00
Bert Blommers
67c7fce85e
#2760 - DynamoDB - Ensure proper ordering for Numeric sort keys
2020-03-17 16:28:49 +00:00
Bert Blommers
3fab3f572f
#2773 - CloudFormation - Set CreationDate
2020-03-17 16:09:42 +00:00
Bert Blommers
b7da6b9481
#2813 - DynamoDB - Add Global Index Status
2020-03-17 15:41:50 +00:00
Tim Gatzemeier
6e490a9190
make linter happy
2020-03-16 21:58:50 +01:00
Tim Gatzemeier
50974aa9b2
add test cases to ensure actions enabled is correctly returned
2020-03-16 21:45:29 +01:00
Tim Gatzemeier
9d3ee116d3
add test case for actions_enabled field
2020-03-16 20:14:41 +01:00
Steve Pulec
6a887e52cc
Merge pull request #2808 from bblommers/feature/2201
...
Batch - various fixes
2020-03-15 16:45:57 -05:00
Steve Pulec
77b1cc2321
Merge pull request #2809 from bblommers/feature/dynamodb-transact-get-items
...
Feature - DynamoDB: transact_get_items
2020-03-15 16:45:03 -05:00
Steve Pulec
e81063aa99
Merge pull request #2802 from bblommers/bugfix/cloudformation-iam-role-name
...
Cloudformation - Set IAM role name
2020-03-15 16:43:31 -05:00
Steve Pulec
091b6cdef4
Merge pull request #2801 from bblommers/bugfix/cloudwatch_timestamp
...
Cloudwatch - Fix timestamp format
2020-03-15 16:43:03 -05:00
Steve Pulec
6b97a4ab96
Merge pull request #2796 from bblommers/feature/1054
...
DynamoDB - Improve error handling for put_item without keys
2020-03-15 16:41:59 -05:00
Steve Pulec
4cf24701c5
Merge pull request #2795 from bblommers/feature/657
...
S3 - Verify content type is set/returned as appropriate
2020-03-15 16:41:14 -05:00
Steve Pulec
dfe0047077
Merge pull request #2792 from bblommers/bugfix/718
...
EC2 - Allow filtering by multiple tags
2020-03-15 16:40:33 -05:00
ImFlog
7f6c6660aa
Add some new update_new tests
2020-03-13 09:37:50 +01:00
Bert Blommers
71d3941daf
Linting
2020-03-12 14:26:23 +00:00
Bert Blommers
caebe222d7
DynamoDB - Transact_get_items - Remove error condition
2020-03-12 14:24:53 +00:00
Tomoya Iwata
b74625db0c
add support for dynamodb transact_get_items
2020-03-12 14:15:13 +00:00
Bert Blommers
1b031aeeb0
Linting
2020-03-12 14:07:34 +00:00
Bert Blommers
bb5a54ca4b
Batch - Fix tests
2020-03-12 13:37:46 +00:00
mzgierski
ad5314ad06
Enable the test that AWS-Batch describe_jobs fails at.
2020-03-12 12:27:22 +00:00
Brent Driskill
e3e4b741d8
SSM: Fix the formatting associated with label_parameter_version/get_parameter_history updates
2020-03-11 11:57:04 -04:00
Brent Driskill
5705695495
SSM: Added support for label_parameter_version and getting labels on get_parameter_history
2020-03-11 10:43:18 -04:00
Bert Blommers
9163f04292
Linting
2020-03-11 13:19:40 +00:00
Luis Pollo
20364b177a
Fix IAM role name when parsed from CloudFormation JSON.
2020-03-11 13:17:35 +00:00