diff --git a/internal/regofunc/http_header_test.go b/internal/regofunc/http_header_test.go
index 374ffdabef19342064a3777f905048330e37c0b1..908039cb321a4f20f41b51a3f5efc5e3a3e66837 100644
--- a/internal/regofunc/http_header_test.go
+++ b/internal/regofunc/http_header_test.go
@@ -1 +1,46 @@
 package regofunc_test
+
+import (
+	"context"
+	"testing"
+
+	"github.com/open-policy-agent/opa/rego"
+	"github.com/stretchr/testify/assert"
+
+	"gitlab.com/gaia-x/data-infrastructure-federation-services/tsa/policy/internal/regofunc"
+)
+
+func TestGetHeaderFunc(t *testing.T) {
+	headers := map[string]string{
+		"Authorization": "Bearer XXX",
+		"X-Location":    "https://example.com",
+	}
+
+	t.Run("get Authorization header", func(t *testing.T) {
+		r := rego.New(
+			rego.Query(`external.http.header("Authorization")`),
+			rego.Function1(regofunc.GetHeaderFunc(headers)),
+		)
+		resultSet, err := r.Eval(context.Background())
+		assert.NoError(t, err)
+
+		result := resultSet[0].Expressions[0].Value
+
+		assert.NoError(t, err)
+		assert.Equal(t, "Bearer XXX", result)
+	})
+
+	t.Run("get X-Location header", func(t *testing.T) {
+		r := rego.New(
+			rego.Query(`external.http.header("X-Location")`),
+			rego.Function1(regofunc.GetHeaderFunc(headers)),
+		)
+		resultSet, err := r.Eval(context.Background())
+		assert.NoError(t, err)
+
+		result := resultSet[0].Expressions[0].Value
+
+		assert.NoError(t, err)
+		assert.Equal(t, "https://example.com", result)
+	})
+}