add assert to catch odd numbers in operator/value parsing

This commit is contained in:
Peter Gorniak 2017-06-02 13:19:45 -07:00
parent d4a31e5e50
commit 5eb866146a

View File

@ -112,6 +112,7 @@ class Item(object):
def update(self, update_expression, expression_attribute_names, expression_attribute_values):
parts = [p for p in re.split(r'\b(SET|REMOVE|ADD|DELETE)\b', update_expression) if p]
assert len(parts) % 2 == 0, "Mismatched operators and values in update expression: '{}'".format(update_expression)
for action, valstr in zip(parts[:-1:2], parts[1::2]):
values = valstr.split(',')
for value in values: