def setUp(self): self.event = { "resource": "/", "httpMethod": "POST", "headers": None, "queryStringParameters": None, "pathParameters": None, "stageVariables": None, "requestContext": { "accountId": "1234123542134", "resourceId": "erd49w", "stage": "test-invoke-stage", "requestId": "test-invoke-request", "identity": { "cognitoIdentityPoolId": None, "accountId": "23424534543", "cognitoIdentityId": None, "caller": "asdfasdfasfdasfdas", "apiKey": "asdfasdfasdfas", "sourceIp": "127.0.0.1", "accessKey": "asdfasdfasdfasfd", "cognitoAuthenticationType": None, "cognitoAuthenticationProvider": None, "userArn": "arn:aws:iam::123214323", "userAgent": "Apache-HttpClient/4.5.x (Java/1.8.0_102)", "user": "******", }, "resourcePath": "/test", "httpMethod": "POST", "apiId": "90o718c6bk", }, "body": None, "isBase64Encoded": False, } self.context = {"foo": "bar"} self.lambda_handler = create_lambda_handler() self.lambda_handler_application_load_balancer = create_lambda_handler( application_load_balancer=True )
def test_exception_in_handler_should_be_reraised(self): json_body = {} self.event["body"] = json.dumps(json_body) self.event["httpMethod"] = "GET" self.event["resource"] = "/foo/bar" def divide_by_zero(_): return 1 / 0 self.lambda_handler = create_lambda_handler(error_handler=None) self.lambda_handler.handle("get", path="/foo/bar")(divide_by_zero) with self.assertRaises(ZeroDivisionError): self.lambda_handler(self.event, self.context)
import sys from lambdarest import create_lambda_handler from timestamp import get_reverse_timestamp from leaderboard_exceptions import UserNotFoundException, InvalidRequestException, AccessDeniedException from leaderboard_scripts import lua_script_get_around, lua_script_get_my_rank, lua_script_put_score, lua_script_delete_score ADMIN_SECRET_TOKEN = os.environ.get('ADMIN_SECRET_TOKEN') DEFAULT_FETCH_COUNT = int(os.environ.get('DEFAULT_FETCH_COUNT')) MAX_FETCH_COUNT = int(os.environ.get('MAX_FETCH_COUNT')) redis_client = redis.StrictRedis(host=os.environ.get('REDIS_HOST'), port=os.environ.get('REDIS_PORT'), charset="utf-8", decode_responses=True) lambda_handler = create_lambda_handler(error_handler=None) def leaderboard_str(service_id: str, leader_board_id: str): return f'{service_id}:leaderboard:{leader_board_id}' def leaderboard_timestamp_str(service_id: str, leader_board_id: str): return f'{service_id}:leaderboard:{leader_board_id}:timestamp' def user_properties_key_str(service_id: str, user_id: str): return f'{service_id}:user:{user_id}:properties' @lambda_handler.handle(