Files
saladeaula.digital/enrollments-events/tests/events/test_enroll.py

34 lines
987 B
Python

import app.events.enroll as app
from aws_lambda_powertools.utilities.typing import LambdaContext
from layercake.dynamodb import DynamoDBPersistenceLayer, KeyPair
def test_enroll(
seeds,
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
lambda_context: LambdaContext,
):
order_id = 'cpYSbBcie2NDbZhDKCxCih'
event = {
'detail': {
'new_image': {
'id': order_id,
'sk': 'generated_items',
}
}
}
assert app.lambda_handler(event, lambda_context) # type: ignore
# Parent knows the child
order_entity = dynamodb_persistence_layer.collection.get_item(
KeyPair(order_id, 'LINKED_ENTITIES#ORDER#CHILD')
)
assert order_entity
# Child knows the parent
enrollment_entity = dynamodb_persistence_layer.collection.get_item(
KeyPair(order_entity['enrollment_id'], 'LINKED_ENTITIES#ORDER#PARENT'),
)
assert enrollment_entity['order_id'] == order_id