test(getter): add tests for helm-session HTTP header

Signed-off-by: vaish123-fullstck <vaishnavsreekumar301@gmail.com>
pull/31967/head
vaish123-fullstck 7 months ago
parent 54723e0e41
commit 38b91d7843

@ -679,12 +679,11 @@ func TestHTTPTransportOption(t *testing.T) {
} }
} }
// 🔥 NEW TEST: Verify helm-session header is added to requests
func TestHTTPGetterSessionHeader(t *testing.T) { func TestHTTPGetterSessionHeader(t *testing.T) {
var capturedHeader string var capturedHeaders []string
srv := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { 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) w.WriteHeader(http.StatusOK)
})) }))
defer srv.Close() defer srv.Close()
@ -694,12 +693,25 @@ func TestHTTPGetterSessionHeader(t *testing.T) {
t.Fatal(err) t.Fatal(err)
} }
_, err = g.Get(srv.URL) // First request
if err != nil { 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) 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) 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])
}
} }

Loading…
Cancel
Save