From 215681611394466cf5ff1b8b56b369209316d24b Mon Sep 17 00:00:00 2001 From: Bruno Souza Date: Mon, 7 Nov 2022 17:09:25 -0300 Subject: [PATCH 01/11] docs: fix example for tests in api_gateway Signed-off-by: Bruno Souza --- docs/core/event_handler/api_gateway.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/core/event_handler/api_gateway.md b/docs/core/event_handler/api_gateway.md index ec6116403e3..b95c45e409d 100644 --- a/docs/core/event_handler/api_gateway.md +++ b/docs/core/event_handler/api_gateway.md @@ -562,7 +562,7 @@ your development, building, deployment tooling need to accommodate the distinct ## Testing your code -You can test your routes by passing a proxy event request where `path` and `httpMethod`. +You can test your routes by passing a proxy event request with required params. === "assert_http_response.py" From 0778dcb502c31399a0110e7b56918b71e008fa95 Mon Sep 17 00:00:00 2001 From: Bruno Souza Date: Mon, 7 Nov 2022 17:10:38 -0300 Subject: [PATCH 02/11] docs: fix example for tests in api_gateway Signed-off-by: Bruno Souza --- .../event_handler_rest/src/assert_http_response.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/examples/event_handler_rest/src/assert_http_response.py b/examples/event_handler_rest/src/assert_http_response.py index 95d56599288..8271d4ad354 100644 --- a/examples/event_handler_rest/src/assert_http_response.py +++ b/examples/event_handler_rest/src/assert_http_response.py @@ -18,9 +18,13 @@ class LambdaContext: def test_lambda_handler(lambda_context): minimal_event = { - "path": "/todos", - "httpMethod": "GET", - "requestContext": {"requestId": "227b78aa-779d-47d4-a48e-ce62120393b8"}, # correlation ID + "rawPath": "/todos", + "requestContext": { + "http": { + "method": "GET", + }, + "stage": "$default", + }, } ret = assert_http_response_module.lambda_handler(minimal_event, lambda_context) From f6d2afab9f7be91de1a44657b30c804f220738dc Mon Sep 17 00:00:00 2001 From: heitorlessa Date: Tue, 8 Nov 2022 17:42:30 +0100 Subject: [PATCH 03/11] docs(apigateway): split testing section per resolver for accurracy --- docs/core/event_handler/api_gateway.md | 32 +++++++++++++----- .../src/assert_http_api_resolver_response.py | 33 +++++++++++++++++++ .../src/assert_http_api_response_module.py | 27 +++++++++++++++ .../src/assert_http_response.py | 10 ++---- 4 files changed, 87 insertions(+), 15 deletions(-) create mode 100644 examples/event_handler_rest/src/assert_http_api_resolver_response.py create mode 100644 examples/event_handler_rest/src/assert_http_api_response_module.py diff --git a/docs/core/event_handler/api_gateway.md b/docs/core/event_handler/api_gateway.md index b95c45e409d..41f236d329f 100644 --- a/docs/core/event_handler/api_gateway.md +++ b/docs/core/event_handler/api_gateway.md @@ -564,17 +564,33 @@ your development, building, deployment tooling need to accommodate the distinct You can test your routes by passing a proxy event request with required params. -=== "assert_http_response.py" +=== "APIGatewayRestResolver" - ```python hl_lines="21-24" - --8<-- "examples/event_handler_rest/src/assert_http_response.py" - ``` + === "assert_http_response.py" -=== "assert_http_response_module.py" + ```python hl_lines="21-24" + --8<-- "examples/event_handler_rest/src/assert_http_response.py" + ``` - ```python - --8<-- "examples/event_handler_rest/src/assert_http_response_module.py" - ``` + === "assert_http_response_module.py" + + ```python + --8<-- "examples/event_handler_rest/src/assert_http_response_module.py" + ``` + +=== "APIGatewayHttpResolver" + + === "assert_http_api_resolver_http_response.py" + + ```python hl_lines="21-29" + --8<-- "examples/event_handler_rest/src/assert_http_api_resolver_response.py" + ``` + + === "assert_http_api_response_module.py" + + ```python + --8<-- "examples/event_handler_rest/src/assert_http_api_response_module.py" + ``` ## FAQ diff --git a/examples/event_handler_rest/src/assert_http_api_resolver_response.py b/examples/event_handler_rest/src/assert_http_api_resolver_response.py new file mode 100644 index 00000000000..439c0575e29 --- /dev/null +++ b/examples/event_handler_rest/src/assert_http_api_resolver_response.py @@ -0,0 +1,33 @@ +from dataclasses import dataclass + +import assert_http_response_module +import pytest + + +@pytest.fixture +def lambda_context(): + @dataclass + class LambdaContext: + function_name: str = "test" + memory_limit_in_mb: int = 128 + invoked_function_arn: str = "arn:aws:lambda:eu-west-1:123456789012:function:test" + aws_request_id: str = "da658bd3-2d6f-4e7b-8ec2-937234644fdc" + + return LambdaContext() + + +def test_lambda_handler(lambda_context): + minimal_event = { + "rawPath": "/todos", + "requestContext": { + "requestContext": {"requestId": "227b78aa-779d-47d4-a48e-ce62120393b8"}, # correlation ID + "http": { + "method": "GET", + }, + "stage": "$default", + }, + } + + ret = assert_http_response_module.lambda_handler(minimal_event, lambda_context) + assert ret["statusCode"] == 200 + assert ret["body"] != "" diff --git a/examples/event_handler_rest/src/assert_http_api_response_module.py b/examples/event_handler_rest/src/assert_http_api_response_module.py new file mode 100644 index 00000000000..852212272bb --- /dev/null +++ b/examples/event_handler_rest/src/assert_http_api_response_module.py @@ -0,0 +1,27 @@ +import requests +from requests import Response + +from aws_lambda_powertools import Logger, Tracer +from aws_lambda_powertools.event_handler import APIGatewayHttpResolver +from aws_lambda_powertools.logging import correlation_paths +from aws_lambda_powertools.utilities.typing import LambdaContext + +tracer = Tracer() +logger = Logger() +app = APIGatewayHttpResolver() + + +@app.get("/todos") +@tracer.capture_method +def get_todos(): + todos: Response = requests.get("https://jsonplaceholder.typicode.com/todos") + todos.raise_for_status() + + return {"todos": todos.json()[:10]} + + +# You can continue to use other utilities just as before +@logger.inject_lambda_context(correlation_id_path=correlation_paths.API_GATEWAY_HTTP) +@tracer.capture_lambda_handler +def lambda_handler(event: dict, context: LambdaContext) -> dict: + return app.resolve(event, context) diff --git a/examples/event_handler_rest/src/assert_http_response.py b/examples/event_handler_rest/src/assert_http_response.py index 8271d4ad354..95d56599288 100644 --- a/examples/event_handler_rest/src/assert_http_response.py +++ b/examples/event_handler_rest/src/assert_http_response.py @@ -18,13 +18,9 @@ class LambdaContext: def test_lambda_handler(lambda_context): minimal_event = { - "rawPath": "/todos", - "requestContext": { - "http": { - "method": "GET", - }, - "stage": "$default", - }, + "path": "/todos", + "httpMethod": "GET", + "requestContext": {"requestId": "227b78aa-779d-47d4-a48e-ce62120393b8"}, # correlation ID } ret = assert_http_response_module.lambda_handler(minimal_event, lambda_context) From 21b5584958389d6c81c2166e1f88a734279463ed Mon Sep 17 00:00:00 2001 From: heitorlessa Date: Tue, 8 Nov 2022 17:51:09 +0100 Subject: [PATCH 04/11] docs(apigateway): add ALB to testing section --- docs/core/event_handler/api_gateway.md | 14 ++++++++++ .../src/assert_alb_api_resolver_response.py | 28 +++++++++++++++++++ .../src/assert_alb_api_response_module.py | 27 ++++++++++++++++++ 3 files changed, 69 insertions(+) create mode 100644 examples/event_handler_rest/src/assert_alb_api_resolver_response.py create mode 100644 examples/event_handler_rest/src/assert_alb_api_response_module.py diff --git a/docs/core/event_handler/api_gateway.md b/docs/core/event_handler/api_gateway.md index 41f236d329f..f6d263d93b5 100644 --- a/docs/core/event_handler/api_gateway.md +++ b/docs/core/event_handler/api_gateway.md @@ -592,6 +592,20 @@ You can test your routes by passing a proxy event request with required params. --8<-- "examples/event_handler_rest/src/assert_http_api_response_module.py" ``` +=== "ALBResolver" + + === "assert_alb_api_resolver_http_response.py" + + ```python hl_lines="21-24" + --8<-- "examples/event_handler_rest/src/assert_alb_api_resolver_response.py" + ``` + + === "assert_alb_api_response_module.py" + + ```python + --8<-- "examples/event_handler_rest/src/assert_alb_api_response_module.py" + ``` + ## FAQ **What's the difference between this utility and frameworks like Chalice?** diff --git a/examples/event_handler_rest/src/assert_alb_api_resolver_response.py b/examples/event_handler_rest/src/assert_alb_api_resolver_response.py new file mode 100644 index 00000000000..c91d22641d9 --- /dev/null +++ b/examples/event_handler_rest/src/assert_alb_api_resolver_response.py @@ -0,0 +1,28 @@ +from dataclasses import dataclass + +import assert_http_response_module +import pytest + + +@pytest.fixture +def lambda_context(): + @dataclass + class LambdaContext: + function_name: str = "test" + memory_limit_in_mb: int = 128 + invoked_function_arn: str = "arn:aws:lambda:eu-west-1:123456789012:function:test" + aws_request_id: str = "da658bd3-2d6f-4e7b-8ec2-937234644fdc" + + return LambdaContext() + + +def test_lambda_handler(lambda_context): + minimal_event = { + "path": "/todos", + "httpMethod": "GET", + "headers": {"x-amzn-trace-id": "b25827e5-0e30-4d52-85a8-4df449ee4c5a"}, + } + + ret = assert_http_response_module.lambda_handler(minimal_event, lambda_context) + assert ret["statusCode"] == 200 + assert ret["body"] != "" diff --git a/examples/event_handler_rest/src/assert_alb_api_response_module.py b/examples/event_handler_rest/src/assert_alb_api_response_module.py new file mode 100644 index 00000000000..828787179d6 --- /dev/null +++ b/examples/event_handler_rest/src/assert_alb_api_response_module.py @@ -0,0 +1,27 @@ +import requests +from requests import Response + +from aws_lambda_powertools import Logger, Tracer +from aws_lambda_powertools.event_handler import ALBResolver +from aws_lambda_powertools.logging import correlation_paths +from aws_lambda_powertools.utilities.typing import LambdaContext + +tracer = Tracer() +logger = Logger() +app = ALBResolver() + + +@app.get("/todos") +@tracer.capture_method +def get_todos(): + todos: Response = requests.get("https://jsonplaceholder.typicode.com/todos") + todos.raise_for_status() + + return {"todos": todos.json()[:10]} + + +# You can continue to use other utilities just as before +@logger.inject_lambda_context(correlation_id_path=correlation_paths.APPLICATION_LOAD_BALANCER) +@tracer.capture_lambda_handler +def lambda_handler(event: dict, context: LambdaContext) -> dict: + return app.resolve(event, context) From 5f23de440a6955e98999a7da3fe61dfc9d130df0 Mon Sep 17 00:00:00 2001 From: heitorlessa Date: Tue, 8 Nov 2022 17:57:05 +0100 Subject: [PATCH 05/11] docs(apigateway): add Lambda function URL to testing section --- docs/core/event_handler/api_gateway.md | 14 ++++++++ ...sert_function_url_api_resolver_response.py | 33 +++++++++++++++++++ ...assert_function_url_api_response_module.py | 27 +++++++++++++++ 3 files changed, 74 insertions(+) create mode 100644 examples/event_handler_rest/src/assert_function_url_api_resolver_response.py create mode 100644 examples/event_handler_rest/src/assert_function_url_api_response_module.py diff --git a/docs/core/event_handler/api_gateway.md b/docs/core/event_handler/api_gateway.md index f6d263d93b5..b08b8c846e3 100644 --- a/docs/core/event_handler/api_gateway.md +++ b/docs/core/event_handler/api_gateway.md @@ -606,6 +606,20 @@ You can test your routes by passing a proxy event request with required params. --8<-- "examples/event_handler_rest/src/assert_alb_api_response_module.py" ``` +=== "LambdaFunctionUrlResolver" + + === "assert_function_url_api_resolver_response.py" + + ```python hl_lines="21-29" + --8<-- "examples/event_handler_rest/src/assert_function_url_api_resolver_response.py" + ``` + + === "assert_function_url_api_response_module.py" + + ```python + --8<-- "examples/event_handler_rest/src/assert_function_url_api_response_module.py" + ``` + ## FAQ **What's the difference between this utility and frameworks like Chalice?** diff --git a/examples/event_handler_rest/src/assert_function_url_api_resolver_response.py b/examples/event_handler_rest/src/assert_function_url_api_resolver_response.py new file mode 100644 index 00000000000..439c0575e29 --- /dev/null +++ b/examples/event_handler_rest/src/assert_function_url_api_resolver_response.py @@ -0,0 +1,33 @@ +from dataclasses import dataclass + +import assert_http_response_module +import pytest + + +@pytest.fixture +def lambda_context(): + @dataclass + class LambdaContext: + function_name: str = "test" + memory_limit_in_mb: int = 128 + invoked_function_arn: str = "arn:aws:lambda:eu-west-1:123456789012:function:test" + aws_request_id: str = "da658bd3-2d6f-4e7b-8ec2-937234644fdc" + + return LambdaContext() + + +def test_lambda_handler(lambda_context): + minimal_event = { + "rawPath": "/todos", + "requestContext": { + "requestContext": {"requestId": "227b78aa-779d-47d4-a48e-ce62120393b8"}, # correlation ID + "http": { + "method": "GET", + }, + "stage": "$default", + }, + } + + ret = assert_http_response_module.lambda_handler(minimal_event, lambda_context) + assert ret["statusCode"] == 200 + assert ret["body"] != "" diff --git a/examples/event_handler_rest/src/assert_function_url_api_response_module.py b/examples/event_handler_rest/src/assert_function_url_api_response_module.py new file mode 100644 index 00000000000..921e066fc78 --- /dev/null +++ b/examples/event_handler_rest/src/assert_function_url_api_response_module.py @@ -0,0 +1,27 @@ +import requests +from requests import Response + +from aws_lambda_powertools import Logger, Tracer +from aws_lambda_powertools.event_handler import LambdaFunctionUrlResolver +from aws_lambda_powertools.logging import correlation_paths +from aws_lambda_powertools.utilities.typing import LambdaContext + +tracer = Tracer() +logger = Logger() +app = LambdaFunctionUrlResolver() + + +@app.get("/todos") +@tracer.capture_method +def get_todos(): + todos: Response = requests.get("https://jsonplaceholder.typicode.com/todos") + todos.raise_for_status() + + return {"todos": todos.json()[:10]} + + +# You can continue to use other utilities just as before +@logger.inject_lambda_context(correlation_id_path=correlation_paths.LAMBDA_FUNCTION_URL) +@tracer.capture_lambda_handler +def lambda_handler(event: dict, context: LambdaContext) -> dict: + return app.resolve(event, context) From 3dd8e55004a516e4ecb80b80a081a22267953019 Mon Sep 17 00:00:00 2001 From: heitorlessa Date: Tue, 8 Nov 2022 18:02:45 +0100 Subject: [PATCH 06/11] docs(apigateway): fix inconsistencies between resolvers --- docs/core/event_handler/api_gateway.md | 12 ++++++------ .../src/assert_alb_api_resolver_response.py | 4 ++-- .../src/assert_function_url_api_resolver_response.py | 4 ++-- .../src/assert_http_api_resolver_response.py | 4 ++-- ...ponse.py => assert_rest_api_resolver_response.py} | 4 ++-- ..._module.py => assert_rest_api_response_module.py} | 0 6 files changed, 14 insertions(+), 14 deletions(-) rename examples/event_handler_rest/src/{assert_http_response.py => assert_rest_api_resolver_response.py} (83%) rename examples/event_handler_rest/src/{assert_http_response_module.py => assert_rest_api_response_module.py} (100%) diff --git a/docs/core/event_handler/api_gateway.md b/docs/core/event_handler/api_gateway.md index b08b8c846e3..f6588d1fd54 100644 --- a/docs/core/event_handler/api_gateway.md +++ b/docs/core/event_handler/api_gateway.md @@ -566,21 +566,21 @@ You can test your routes by passing a proxy event request with required params. === "APIGatewayRestResolver" - === "assert_http_response.py" + === "assert_rest_api_resolver_response.py" ```python hl_lines="21-24" - --8<-- "examples/event_handler_rest/src/assert_http_response.py" + --8<-- "examples/event_handler_rest/src/assert_rest_api_resolver_response.py" ``` - === "assert_http_response_module.py" + === "assert_rest_api_response_module.py" ```python - --8<-- "examples/event_handler_rest/src/assert_http_response_module.py" + --8<-- "examples/event_handler_rest/src/assert_rest_api_response_module.py" ``` === "APIGatewayHttpResolver" - === "assert_http_api_resolver_http_response.py" + === "assert_http_api_resolver_response.py" ```python hl_lines="21-29" --8<-- "examples/event_handler_rest/src/assert_http_api_resolver_response.py" @@ -594,7 +594,7 @@ You can test your routes by passing a proxy event request with required params. === "ALBResolver" - === "assert_alb_api_resolver_http_response.py" + === "assert_alb_api_resolver_response.py" ```python hl_lines="21-24" --8<-- "examples/event_handler_rest/src/assert_alb_api_resolver_response.py" diff --git a/examples/event_handler_rest/src/assert_alb_api_resolver_response.py b/examples/event_handler_rest/src/assert_alb_api_resolver_response.py index c91d22641d9..35e0f63ef8d 100644 --- a/examples/event_handler_rest/src/assert_alb_api_resolver_response.py +++ b/examples/event_handler_rest/src/assert_alb_api_resolver_response.py @@ -1,6 +1,6 @@ from dataclasses import dataclass -import assert_http_response_module +import assert_alb_api_response_module import pytest @@ -23,6 +23,6 @@ def test_lambda_handler(lambda_context): "headers": {"x-amzn-trace-id": "b25827e5-0e30-4d52-85a8-4df449ee4c5a"}, } - ret = assert_http_response_module.lambda_handler(minimal_event, lambda_context) + ret = assert_alb_api_response_module.lambda_handler(minimal_event, lambda_context) assert ret["statusCode"] == 200 assert ret["body"] != "" diff --git a/examples/event_handler_rest/src/assert_function_url_api_resolver_response.py b/examples/event_handler_rest/src/assert_function_url_api_resolver_response.py index 439c0575e29..b8ea6828100 100644 --- a/examples/event_handler_rest/src/assert_function_url_api_resolver_response.py +++ b/examples/event_handler_rest/src/assert_function_url_api_resolver_response.py @@ -1,6 +1,6 @@ from dataclasses import dataclass -import assert_http_response_module +import assert_function_url_api_response_module import pytest @@ -28,6 +28,6 @@ def test_lambda_handler(lambda_context): }, } - ret = assert_http_response_module.lambda_handler(minimal_event, lambda_context) + ret = assert_function_url_api_response_module.lambda_handler(minimal_event, lambda_context) assert ret["statusCode"] == 200 assert ret["body"] != "" diff --git a/examples/event_handler_rest/src/assert_http_api_resolver_response.py b/examples/event_handler_rest/src/assert_http_api_resolver_response.py index 439c0575e29..ae2e211e2fe 100644 --- a/examples/event_handler_rest/src/assert_http_api_resolver_response.py +++ b/examples/event_handler_rest/src/assert_http_api_resolver_response.py @@ -1,6 +1,6 @@ from dataclasses import dataclass -import assert_http_response_module +import assert_http_api_response_module import pytest @@ -28,6 +28,6 @@ def test_lambda_handler(lambda_context): }, } - ret = assert_http_response_module.lambda_handler(minimal_event, lambda_context) + ret = assert_http_api_response_module.lambda_handler(minimal_event, lambda_context) assert ret["statusCode"] == 200 assert ret["body"] != "" diff --git a/examples/event_handler_rest/src/assert_http_response.py b/examples/event_handler_rest/src/assert_rest_api_resolver_response.py similarity index 83% rename from examples/event_handler_rest/src/assert_http_response.py rename to examples/event_handler_rest/src/assert_rest_api_resolver_response.py index 95d56599288..98a5024f164 100644 --- a/examples/event_handler_rest/src/assert_http_response.py +++ b/examples/event_handler_rest/src/assert_rest_api_resolver_response.py @@ -1,6 +1,6 @@ from dataclasses import dataclass -import assert_http_response_module +import assert_rest_api_resolver_response import pytest @@ -23,6 +23,6 @@ def test_lambda_handler(lambda_context): "requestContext": {"requestId": "227b78aa-779d-47d4-a48e-ce62120393b8"}, # correlation ID } - ret = assert_http_response_module.lambda_handler(minimal_event, lambda_context) + ret = assert_rest_api_resolver_response.lambda_handler(minimal_event, lambda_context) assert ret["statusCode"] == 200 assert ret["body"] != "" diff --git a/examples/event_handler_rest/src/assert_http_response_module.py b/examples/event_handler_rest/src/assert_rest_api_response_module.py similarity index 100% rename from examples/event_handler_rest/src/assert_http_response_module.py rename to examples/event_handler_rest/src/assert_rest_api_response_module.py From 3a96f281694d87d273551ea9dc6e187e69b81af8 Mon Sep 17 00:00:00 2001 From: heitorlessa Date: Tue, 8 Nov 2022 18:05:01 +0100 Subject: [PATCH 07/11] docs(apigateway): use friendly name for consistency on heading --- docs/core/event_handler/api_gateway.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/core/event_handler/api_gateway.md b/docs/core/event_handler/api_gateway.md index f6588d1fd54..88ffe3cb0bd 100644 --- a/docs/core/event_handler/api_gateway.md +++ b/docs/core/event_handler/api_gateway.md @@ -564,7 +564,7 @@ your development, building, deployment tooling need to accommodate the distinct You can test your routes by passing a proxy event request with required params. -=== "APIGatewayRestResolver" +=== "API Gateway REST API" === "assert_rest_api_resolver_response.py" @@ -578,7 +578,7 @@ You can test your routes by passing a proxy event request with required params. --8<-- "examples/event_handler_rest/src/assert_rest_api_response_module.py" ``` -=== "APIGatewayHttpResolver" +=== "API Gateway HTTP API" === "assert_http_api_resolver_response.py" @@ -592,7 +592,7 @@ You can test your routes by passing a proxy event request with required params. --8<-- "examples/event_handler_rest/src/assert_http_api_response_module.py" ``` -=== "ALBResolver" +=== "Application Load Balancer" === "assert_alb_api_resolver_response.py" @@ -606,7 +606,7 @@ You can test your routes by passing a proxy event request with required params. --8<-- "examples/event_handler_rest/src/assert_alb_api_response_module.py" ``` -=== "LambdaFunctionUrlResolver" +=== "Lambda Function URL" === "assert_function_url_api_resolver_response.py" From 31d265cc511cfcde5f269fa1fd3ed2380948b135 Mon Sep 17 00:00:00 2001 From: Bruno Souza Date: Tue, 8 Nov 2022 17:22:32 -0300 Subject: [PATCH 08/11] Adding AWS Docs URL for ALB Signed-off-by: Bruno Souza --- .../event_handler_rest/src/assert_alb_api_resolver_response.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/examples/event_handler_rest/src/assert_alb_api_resolver_response.py b/examples/event_handler_rest/src/assert_alb_api_resolver_response.py index 35e0f63ef8d..f6bd54facee 100644 --- a/examples/event_handler_rest/src/assert_alb_api_resolver_response.py +++ b/examples/event_handler_rest/src/assert_alb_api_resolver_response.py @@ -22,6 +22,8 @@ def test_lambda_handler(lambda_context): "httpMethod": "GET", "headers": {"x-amzn-trace-id": "b25827e5-0e30-4d52-85a8-4df449ee4c5a"}, } + # Example of Application Load Balancer request event: + # https://docs.aws.amazon.com/lambda/latest/dg/services-alb.html ret = assert_alb_api_response_module.lambda_handler(minimal_event, lambda_context) assert ret["statusCode"] == 200 From ad28cca0bbd8221495c536ba3fe1d5ff80040537 Mon Sep 17 00:00:00 2001 From: Bruno Souza Date: Tue, 8 Nov 2022 17:24:06 -0300 Subject: [PATCH 09/11] Adding AWS Docs URL for Lambda Function URL Signed-off-by: Bruno Souza --- .../src/assert_function_url_api_resolver_response.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/examples/event_handler_rest/src/assert_function_url_api_resolver_response.py b/examples/event_handler_rest/src/assert_function_url_api_resolver_response.py index b8ea6828100..865f26b70a3 100644 --- a/examples/event_handler_rest/src/assert_function_url_api_resolver_response.py +++ b/examples/event_handler_rest/src/assert_function_url_api_resolver_response.py @@ -27,6 +27,8 @@ def test_lambda_handler(lambda_context): "stage": "$default", }, } + # Example of Lambda Function URL request event: + # https://docs.aws.amazon.com/lambda/latest/dg/urls-invocation.html#urls-payloads ret = assert_function_url_api_response_module.lambda_handler(minimal_event, lambda_context) assert ret["statusCode"] == 200 From 931c3aa7d1365ba41683fbbf9b1b6fdc79361046 Mon Sep 17 00:00:00 2001 From: Bruno Souza Date: Tue, 8 Nov 2022 17:27:09 -0300 Subject: [PATCH 10/11] Adding AWS Docs URL for API Gateway HTTP API Signed-off-by: Bruno Souza --- .../event_handler_rest/src/assert_http_api_resolver_response.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/examples/event_handler_rest/src/assert_http_api_resolver_response.py b/examples/event_handler_rest/src/assert_http_api_resolver_response.py index ae2e211e2fe..af294fbc3bc 100644 --- a/examples/event_handler_rest/src/assert_http_api_resolver_response.py +++ b/examples/event_handler_rest/src/assert_http_api_resolver_response.py @@ -27,6 +27,8 @@ def test_lambda_handler(lambda_context): "stage": "$default", }, } + # Example of API Gateway HTTP API request event: + # https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html ret = assert_http_api_response_module.lambda_handler(minimal_event, lambda_context) assert ret["statusCode"] == 200 From 0b8e1e1e9891faaf2a141bb27c83f4c05413dca3 Mon Sep 17 00:00:00 2001 From: Bruno Souza Date: Tue, 8 Nov 2022 17:28:10 -0300 Subject: [PATCH 11/11] Adding AWS Docs URL for API Gateway REST API Signed-off-by: Bruno Souza --- .../src/assert_rest_api_resolver_response.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/examples/event_handler_rest/src/assert_rest_api_resolver_response.py b/examples/event_handler_rest/src/assert_rest_api_resolver_response.py index 98a5024f164..286d3d67897 100644 --- a/examples/event_handler_rest/src/assert_rest_api_resolver_response.py +++ b/examples/event_handler_rest/src/assert_rest_api_resolver_response.py @@ -22,7 +22,9 @@ def test_lambda_handler(lambda_context): "httpMethod": "GET", "requestContext": {"requestId": "227b78aa-779d-47d4-a48e-ce62120393b8"}, # correlation ID } - + # Example of API Gateway REST API request event: + # https://docs.aws.amazon.com/lambda/latest/dg/services-apigateway.html#apigateway-example-event + ret = assert_rest_api_resolver_response.lambda_handler(minimal_event, lambda_context) assert ret["statusCode"] == 200 assert ret["body"] != ""