Skip to content

Commit 310bcbc

Browse files
committed
test(lambda/esm): Make ESM cleanup idempotent
1 parent 3e99d09 commit 310bcbc

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

tests/aws/services/lambda_/test_lambda_api.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
from localstack.utils.files import load_file
6060
from localstack.utils.functions import call_safe
6161
from localstack.utils.strings import long_uid, short_uid, to_str
62-
from localstack.utils.sync import ShortCircuitWaitException, wait_until
62+
from localstack.utils.sync import ShortCircuitWaitException, once_func, wait_until
6363
from localstack.utils.testutil import create_lambda_archive
6464
from tests.aws.services.lambda_.test_lambda import (
6565
TEST_LAMBDA_NODEJS,
@@ -5583,7 +5583,11 @@ def test_event_source_mapping_lifecycle_delete_function(
55835583
)
55845584

55855585
uuid = create_response["UUID"]
5586-
cleanups.append(lambda: aws_client.lambda_.delete_event_source_mapping(UUID=uuid))
5586+
5587+
# Since we expect the ESM to be deleted as a part of lifecycle testing,
5588+
# ensure that this deletion only happens once.
5589+
delete_esm_once = once_func(aws_client.lambda_.delete_event_source_mapping)
5590+
cleanups.append(lambda: delete_esm_once(UUID=uuid))
55875591
snapshot.match("create_response", create_response)
55885592

55895593
# the stream might not be active immediately(!)
@@ -5605,7 +5609,7 @@ def _assert_function_deleted():
56055609
get_response_post_delete = aws_client.lambda_.get_event_source_mapping(UUID=uuid)
56065610
snapshot.match("get_response_post_delete", get_response_post_delete)
56075611
#
5608-
delete_response = aws_client.lambda_.delete_event_source_mapping(UUID=uuid)
5612+
delete_response = delete_esm_once(UUID=uuid)
56095613
snapshot.match("delete_response", delete_response)
56105614

56115615
@markers.snapshot.skip_snapshot_verify(

0 commit comments

Comments
 (0)