add delete_item

This commit is contained in:
2025-03-21 10:20:17 -03:00
parent 3fbc560f2c
commit 1e874bf106
2 changed files with 36 additions and 1 deletions

View File

@@ -491,7 +491,10 @@ class DynamoDBCollection:
return data or default
def put_item(
self, key: KeyPair, ttl: int | datetime | None = None, **kwargs: Any
self,
key: KeyPair,
ttl: int | datetime | None = None,
**kwargs: Any,
) -> bool:
now_ = now(self.tz)
@@ -514,3 +517,20 @@ class DynamoDBCollection:
return self.persistence_layer.put_item(
item=key | {'create_date': now_} | kwargs
)
def delete_item(
self,
key: KeyPair,
*,
cond_expr: str | None = None,
expr_attr_names: dict | None = None,
expr_attr_values: dict | None = None,
) -> bool:
return self.persistence_layer.delete_item(
key=key,
cond_expr=cond_expr,
expr_attr_names=expr_attr_names,
expr_attr_values=expr_attr_values,
)
def get_items(self): ...

View File

@@ -121,3 +121,18 @@ def test_collection_put_item(
assert 'name' in data
assert 'ttl' in data
assert 'ttl_date' in data
def test_collection_delete_item(
dynamodb_seeds,
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
):
collect = DynamoDBCollection(dynamodb_persistence_layer)
# This item was added from seeds
assert collect.delete_item(
key=KeyPair(
'5OxmMjL-ujoR5IMGegQz',
Key('sergio@somsbeta.com.br', prefix='emails'),
)
)