From 4a1a9360022c69e063d8315fe17c090832e588f5 Mon Sep 17 00:00:00 2001 From: jano3 <jano@bob.co.za> Date: Tue, 31 Oct 2023 10:58:48 +0200 Subject: [PATCH] Add batch handler to test utils --- test_utils/test_utils.go | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/test_utils/test_utils.go b/test_utils/test_utils.go index 728577b..c9955da 100644 --- a/test_utils/test_utils.go +++ b/test_utils/test_utils.go @@ -1,6 +1,7 @@ package test_utils import ( + "bytes" "context" "fmt" "github.com/aws/aws-lambda-go/lambda" @@ -14,7 +15,7 @@ import ( "os/exec" ) -func StartTestHandler(context context.Context, apiHandler lambda.Handler, sqsHandler lambda.Handler) { +func StartTestHandler(context context.Context, apiHandler lambda.Handler, sqsHandler lambda.Handler, batchFunc func(bodyBytes []byte)) { if os.Getenv("DEBUG_PROXY") == "true" { StartProxy() } @@ -27,6 +28,23 @@ func StartTestHandler(context context.Context, apiHandler lambda.Handler, sqsHan } })) + http.HandleFunc("/batch/", debugger.Middleware(func(writer http.ResponseWriter, request *http.Request) { + // Read body + buf := new(bytes.Buffer) + _, err := buf.ReadFrom(request.Body) + if err != nil { + fmt.Println(err) + os.Exit(1) + } + request.Body.Close() + + batchFunc(buf.Bytes()) + }, func(r *http.Request) []string { + return []string{ + "path", r.RequestURI, + } + })) + http.HandleFunc("/", debugger.Middleware(func(writer http.ResponseWriter, request *http.Request) { handler_utils.ServeHTTPFunctions(context, apiHandler, writer, request) }, func(r *http.Request) []string { -- GitLab