From 8d93dc7d2dac2e31d5653831ae69d47d36c7f6d3 Mon Sep 17 00:00:00 2001 From: Dwi Siswanto Date: Sun, 25 Feb 2024 19:56:01 +0700 Subject: [PATCH] test: update with FalcoSidekickURL case also adds with invalid case Signed-off-by: Dwi Siswanto --- teler_test.go | 38 +++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/teler_test.go b/teler_test.go index df4b060..6762a7c 100644 --- a/teler_test.go +++ b/teler_test.go @@ -283,11 +283,47 @@ func TestNewWithFalcoSidekickURL(t *testing.T) { t.Fatal(err) } - _, err = client.Do(req) + for i := 0; i < 5; i++ { + _, err = client.Do(req) + if err != nil { + t.Fatal(err) + } + } + + time.Sleep(5 * time.Second) +} + +func TestNewWithInvalidFalcoSidekickURL(t *testing.T) { + // Initialize Falco Sidekick handler + falcoSidekickHandler := http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + w.WriteHeader(http.StatusOK) + }) + + // Initialize Falco Sidekick server + falcoSidekickServer := httptest.NewServer(falcoSidekickHandler) + falcoSidekickServer.Close() // Close server early + + // Initialize teler + telerMiddleware := New(Options{NoStderr: true, FalcoSidekickURL: falcoSidekickServer.URL}) + wrappedHandler := telerMiddleware.Handler(handler) + + // Create a test server with the wrapped handler + ts := httptest.NewServer(wrappedHandler) + defer ts.Close() + + // Create a request to send to the test server + req, err := http.NewRequest("GET", ts.URL, nil) if err != nil { t.Fatal(err) } + for i := 0; i < 5; i++ { + _, err = client.Do(req) + if err != nil { + t.Fatal(err) + } + } + time.Sleep(5 * time.Second) }