remove deduplication as default

This commit is contained in:
2025-10-17 16:17:07 -03:00
parent 94d00ba203
commit f7babaca9f
15 changed files with 114 additions and 58 deletions

View File

@@ -45,7 +45,7 @@ def test_append_cert(
)
r = dynamodb_persistence_layer.collection.get_items(
TransactKey('CERT#REPORTING#ORG#1e2eaf0e-e319-49eb-ab33-1ddec156dc94')
TransactKey('CERT_REPORTING#ORG#1e2eaf0e-e319-49eb-ab33-1ddec156dc94')
+ SortKey(
sk=report_sk,
rename_key='report_email',
@@ -61,3 +61,31 @@ def test_append_cert(
assert 'course' in r['enrollment']
assert 'ttl' in r['report_email']
def test_report_exists(
seeds,
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
lambda_context: LambdaContext,
):
event = {
'detail': {
'new_image': {
'id': 'e45019d8-be7a-4a82-9b37-12a01f0127bb',
'sk': '0',
'course': {
'id': '431',
'name': 'How to Sing Better',
},
'cert_expires_at': '2025-07-02T00:00:00-03:06',
'user': {
'id': '1234',
'name': 'Tobias Summit',
},
'org_id': '00237409-9384-4692-9be5-b4443a41e1c4',
'created_at': '2025-01-01T00:00:00-03:06',
'completed_at': '2025-01-10T00:00:00-03:06',
}
}
}
assert app.lambda_handler(event, lambda_context) # type: ignore

View File

@@ -12,7 +12,7 @@ def test_send_report_email(
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
lambda_context: LambdaContext,
):
pk = 'CERT#REPORTING#ORG#00237409-9384-4692-9be5-b4443a41e1c4'
pk = 'CERT_REPORTING#ORG#00237409-9384-4692-9be5-b4443a41e1c4'
event = {
'detail': {
'old_image': {

View File

@@ -1,6 +1,6 @@
import app.events.enroll as app
from aws_lambda_powertools.utilities.typing import LambdaContext
from layercake.dynamodb import DynamoDBPersistenceLayer, KeyPair
from layercake.dynamodb import DynamoDBPersistenceLayer, KeyPair, PartitionKey
def test_enroll(
@@ -30,3 +30,6 @@ def test_enroll(
KeyPair(enrollment_id, f'LINKED_ENTITIES#PARENT#ORDER#{order_id}'),
)
assert enrollment
r = dynamodb_persistence_layer.collection.query(PartitionKey(enrollment['id']))
assert not any(x['sk'] == 'METADATA#DEDUPLICATION_WINDOW' for x in r['items'])

View File

@@ -3,7 +3,7 @@ from aws_lambda_powertools.utilities.typing import LambdaContext
from layercake.dynamodb import DynamoDBPersistenceLayer, KeyPair
def test_reenroll(
def test_reenroll_custom_dedup_window(
seeds,
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
lambda_context: LambdaContext,
@@ -46,3 +46,8 @@ def test_reenroll(
)
)
assert child
dedup_window = dynamodb_persistence_layer.collection.get_item(
KeyPair(child_id, 'METADATA#DEDUPLICATION_WINDOW')
)
assert dedup_window

View File

@@ -38,8 +38,8 @@
{"id": "294e9864-8284-4287-b153-927b15d90900", "sk": "tenant", "org_id": "123", "name": "EDUSEG", "create_date": "2025-09-12T17:11:00.556907-03:00"}
// Certificate reporting
{"id": "CERT#REPORTING#ORG#00237409-9384-4692-9be5-b4443a41e1c4", "sk": "MONTH#2025-06", "status": "PENDING"}
{"id": "CERT#REPORTING#ORG#00237409-9384-4692-9be5-b4443a41e1c4", "sk": "MONTH#2025-07#ENROLLMENT#ba4d48e6-3671-4060-988a-d6cf97dd0ea4", "completed_at": "2025-01-10T00:00:00-03:06", "enrolled_at": "2025-01-01T00:00:00-03:06", "expires_at": "2026-02-10T20:14:42.880991", "course": {"name": "How to Sing Better", "id": "431"}, "created_at": "2025-10-11T23:39:12.194344-03:00", "user": {"name": "Tobias Summit", "id": "1234"}, "enrollment_id": "e45019d8-be7a-4a82-9b37-12a01f0127bb"}
{"id": "CERT_REPORTING#ORG#00237409-9384-4692-9be5-b4443a41e1c4", "sk": "MONTH#2025-06", "status": "PENDING"}
{"id": "CERT_REPORTING#ORG#00237409-9384-4692-9be5-b4443a41e1c4", "sk": "MONTH#2025-07#ENROLLMENT#ba4d48e6-3671-4060-988a-d6cf97dd0ea4", "completed_at": "2025-01-10T00:00:00-03:06", "enrolled_at": "2025-01-01T00:00:00-03:06", "expires_at": "2026-02-10T20:14:42.880991", "course": {"name": "How to Sing Better", "id": "431"}, "created_at": "2025-10-11T23:39:12.194344-03:00", "user": {"name": "Tobias Summit", "id": "1234"}, "enrollment_id": "e45019d8-be7a-4a82-9b37-12a01f0127bb"}
// Org
{"id": "1e2eaf0e-e319-49eb-ab33-1ddec156dc94", "sk": "0", "name": "pytest"}