From 5a3b5cab29aec9219e1d01c3143de41ee472955d Mon Sep 17 00:00:00 2001 From: vadym-serdiuk Date: Wed, 28 Nov 2018 17:33:22 +0200 Subject: [PATCH] Strip parenthesis in the KeyConditionExpression The "bloop" package uses parenthesis in the KeyConditionExpression, so query method returns nothing due to the wrong parsing of the parameters. --- moto/dynamodb2/responses.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/moto/dynamodb2/responses.py b/moto/dynamodb2/responses.py index e2f1ef1cc..aeddb76bf 100644 --- a/moto/dynamodb2/responses.py +++ b/moto/dynamodb2/responses.py @@ -311,7 +311,7 @@ class DynamoHandler(BaseResponse): def query(self): name = self.body['TableName'] # {u'KeyConditionExpression': u'#n0 = :v0', u'ExpressionAttributeValues': {u':v0': {u'S': u'johndoe'}}, u'ExpressionAttributeNames': {u'#n0': u'username'}} - key_condition_expression = self.body.get('KeyConditionExpression') + key_condition_expression = self.body.get('KeyConditionExpression').strip('()') projection_expression = self.body.get('ProjectionExpression') expression_attribute_names = self.body.get('ExpressionAttributeNames', {}) filter_expression = self.body.get('FilterExpression')