Commit Graph

38 Commits

Author SHA1 Message Date
Bert Blommers
7acdfe4feb
Introduce Pylint to check for duplicate test method names (#3684) 2021-08-21 16:33:15 +01:00
pvbouwel
e6b51a28ee Enable AST Validation
This commit puts AST validation on the execution path. This means updates get
validated prior to being executed. There were quite a few tests that were not
working against Amazon DDB. These tests I considered broken and as such this
commit adapts them such that they pass against Amazon DDB.

test_update_item_on_map()
=> One of the SET actions would try to set a nested element by specifying the nesting on the path
   rather than by putting a map as a value for a non-existent key. This got changed.

test_item_size_is_under_400KB
=> Used the keyword "item" which DDB doesn't like. Change to cont in order to keep the same sizings.
=> Secondly the size error messages differs a bit depending whether it is part of the update or part
   of a put_item. For an update it should be:
   Item size to update has exceeded the maximum allowed size
   otherwise it is
   Item size has exceeded the maximum allowed size'

test_remove_top_level_attribute
=> Used a keyword item.  Use ExpressionAttributeNames

test_update_item_double_nested_remove
=> Used keywords name & first. Migrated to non-deprecated API and use ExpressionAttributeNames

test_update_item_set &
test_boto3_update_item_conditions_pass &
test_boto3_update_item_conditions_pass_because_expect_not_exists &
test_boto3_update_item_conditions_pass_because_expect_not_exists_by_compare_to_null &
test_boto3_update_item_conditions_pass_because_expect_exists_by_compare_to_not_null &
test_boto3_update_item_conditions_fail &
test_boto3_update_item_conditions_fail_because_expect_not_exists &
test_boto3_update_item_conditions_fail_because_expect_not_exists_by_compare_to_null
=> Were broken tests which had string literal instead of value placeholder
2020-04-19 16:58:46 +01:00
Asher Foa
96e5b1993d Run black on moto & test directories. 2019-10-31 10:36:05 -07:00
Ber Zoidberg
6717cba286 test name fix 2019-06-12 08:12:15 -07:00
Ber Zoidberg
997556f7bb improve test coverage 2019-06-12 08:06:37 -07:00
Ber Zoidberg
26ae13b715 Fix copypasta error in comment 2019-06-11 22:41:56 -07:00
Ber Zoidberg
96c2506fd4 Fix DynamoDB UpdateExpression support for REMOVE on nested maps 2019-06-11 22:38:15 -07:00
cm-iwata
9bf8fd3417 fix #2011 (#2012)
add support for Scan method using LSI or GSI
2019-05-21 17:45:30 +01:00
Gary Donovan
0b15bb13b6 Make EQ conditions work reliably in DynamoDB.
The AWS API represents a set object as a list of values. Internally
moto also represents a set as a list. This means that when we do value
comparisons, the order of the values can cause a set equality test to
fail.
2019-01-10 21:39:12 +11:00
Gary Donovan
802402bdba Tweak comparison to treat NULL/NOT_NULL correctly. (#1709)
The AWS documentation says that a ComparisonOperator of NULL means
the attribute should not exist, whereas NOT_NULL means that the
attribute should exist. It explicitly says that an attribute with a
value of NULL is considered to exist, which contradicts our previous
implementation. This affects both put_item and get_item in dynamodb2.

https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Condition.html
2018-07-13 10:11:10 +01:00
Terry Cain
5c02085d3a Fixed testcases after nonglobaling dynamo 2017-10-29 16:25:17 +00:00
Greg Sterin
be07fbda52 Support Expected in dynamoDB updateItem 2017-06-09 17:34:29 -07:00
Steve Pulec
15b811901b Merge pull request #925 from JackDanger/idempotent-dynamodb2-deletes
Idempotent Dynamodb2 deletes
2017-05-10 22:07:12 -04:00
Steve Pulec
0adebeed24 Merge #913. 2017-05-10 21:58:42 -04:00
Jack Danger Canty
8e3d46fb05 Deleting from an unknown table raises error
If the table exists then we deletes are idempotent
2017-05-08 17:25:59 -10:00
Steve Pulec
f37bad0e00 Lints. 2017-02-23 21:37:43 -05:00
Steve Pulec
fde721bed7 Testing new version of decorator. 2017-02-15 22:35:45 -05:00
Georges Chaudy
6b74487b31 fix: dynamodb2 conditions 2016-09-23 16:14:17 +01:00
Victor Blaga
cb36a8b10f Fix dynamodb_v2 update_item tests
Update expression has the wrong syntax. Something like :bar denotes a
placeholder which has to be filled by supplying an additional
ExpressionAttributeNames
2016-06-21 17:46:37 +02:00
Steve Pulec
6803444d61 Fix Dynamodb table key name. Closes #524. 2016-05-05 22:14:23 -04:00
Brian Cavagnolo
6bab725b36 add dynamodb pagination 2016-03-01 15:00:23 -08:00
Steve Pulec
9596772546 Merge pull request #510 from pcraciunoiu/feature/dynamodb-add-value
Add value and UPDATE fixes
2016-01-17 15:40:07 -05:00
Paul Craciunoiu
4e9f4bfbbf Fix for ReturnValues. 2016-01-15 11:53:45 -07:00
Ian Auld
dd6cc305cd Updated more tests. 2016-01-14 14:51:47 -08:00
Steve Pulec
8d41d0019b Add basic support for AttributeUpdates in Dynamo update_item. Closes #449. 2015-11-07 16:45:24 -05:00
Steve Pulec
e4408152d1 Add KeyConditionExpression to dynamo. 2015-08-01 19:32:33 -04:00
Steve Pulec
c9db7765df Fix dynamo item not found. 2015-07-13 10:33:36 -04:00
Alan Jaffe
898d200110 Add tests for ConditionalCheckFailedException 2015-07-08 11:55:12 -04:00
Steve Pulec
82f19952dd Add Dynamodb2 global indexes. Closes #329. 2015-03-14 15:02:43 -04:00
Steve Pulec
e66916d5f1 Start to add basic support for dynamodb2 item updating. Closes #16. 2014-11-29 22:03:29 -05:00
Steve Pulec
06a635aeaa Remove dynamodb Py3 boto restrictions since we only test newer boto now. 2014-11-27 08:03:47 -05:00
David Baumgold
eedb4c4b73 Support Python 3 using six 2014-08-28 10:57:43 -04:00
David Baumgold
4201e6b430 from __future__ import unicode_literals 2014-08-27 11:33:55 -04:00
Steve Pulec
63799f3af8 Restrict tests to new version since we have change the behavior. 2014-07-22 21:53:54 -04:00
Steve Pulec
12d61ede41 Updating dynamodb2 tests for newer boto. 2014-07-22 21:47:56 -04:00
Sorin
6277f72c07 add try catch for missing package in old boto versions 2014-01-07 12:59:36 +02:00
Sorin
b31c3ab8a5 use requires_boto_gte instead of removing the earlier versions 2014-01-07 10:56:51 +02:00
creyer
48cfd19fe6 dynamodb v2 no indexes 2013-12-10 11:51:54 +02:00