This repository was archived by the owner on Mar 15, 2026. It is now read-only.
Add mock for context to test timeout#119
Closed
kmbenitez wants to merge 3 commits into
Closed
Conversation
Collaborator
|
Whoops, now I see this one. When I went looking for it yesterday I couldn't seem to find it but apparently I was just blind. Thus why I recreated the changes on my own branch. In any case, you did it the right way; I really should have just merged this one rather than doing what I did. But it got there anyway. Apologies for the confusion. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
My Lambda function relies on the context object's ability to report the remaining time so that it can perform recovery operations before timeout.
I created a context mock objects with all the properties that are given in the documentation [https://docs.aws.amazon.com/lambda/latest/dg/python-context-object.html]. Most of these are set to None, but can be built upon later. The get_remaining_time_in_millis function is defined, and uses the instantiation time of the context object as the start of its timer, and the value provided in the config to set the timeout (default timeout is 3 seconds, as per Lambda specs).
This does not address the problem of actually stopping the execution of the Lambda after the specified timeout. The context will just return 0 if too much time has passed.