From 38b91d7843da99e27085e6943b20ba1634f2cf50 Mon Sep 17 00:00:00 2001 From: vaish123-fullstck Date: Thu, 26 Mar 2026 15:41:25 +0530 Subject: [PATCH] test(getter): add tests for helm-session HTTP header Signed-off-by: vaish123-fullstck --- pkg/getter/httpgetter_test.go | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/pkg/getter/httpgetter_test.go b/pkg/getter/httpgetter_test.go index c42a67d2b..bc9c4f685 100644 --- a/pkg/getter/httpgetter_test.go +++ b/pkg/getter/httpgetter_test.go @@ -679,12 +679,11 @@ func TestHTTPTransportOption(t *testing.T) { } } -// 🔥 NEW TEST: Verify helm-session header is added to requests func TestHTTPGetterSessionHeader(t *testing.T) { - var capturedHeader string + var capturedHeaders []string srv := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - capturedHeader = r.Header.Get(helmSessionHeader) + capturedHeaders = append(capturedHeaders, r.Header.Get(helmSessionHeader)) w.WriteHeader(http.StatusOK) })) defer srv.Close() @@ -694,12 +693,25 @@ func TestHTTPGetterSessionHeader(t *testing.T) { t.Fatal(err) } - _, err = g.Get(srv.URL) - if err != nil { + // First request + if _, err := g.Get(srv.URL); err != nil { + t.Fatal(err) + } + + // Second request (to verify persistence) + if _, err := g.Get(srv.URL); err != nil { t.Fatal(err) } - if capturedHeader == "" { + if len(capturedHeaders) != 2 { + t.Fatalf("expected 2 requests, got %d", len(capturedHeaders)) + } + + if capturedHeaders[0] == "" { t.Fatalf("expected %s header to be set, but it was empty", helmSessionHeader) } + + if capturedHeaders[0] != capturedHeaders[1] { + t.Errorf("expected session ID to be reused, but got %s and %s", capturedHeaders[0], capturedHeaders[1]) + } }