package guestd
import (
"net/http"
"testing"
)
func TestAgentAuthVerifyHTTPHeader(t *testing.T) {
agentAuth.SetToken("secret")
t.Cleanup(func() {
agentAuth.SetToken("")
})
if err := agentAuth.verifyHTTPHeader(http.Header{}); err == nil {
t.Fatal("verifyHTTPHeader() error = nil, want missing token error")
}
wrongHeader := http.Header{}
wrongHeader.Set(agentTokenHeaderKey, "wrong")
if err := agentAuth.verifyHTTPHeader(wrongHeader); err == nil {
t.Fatal("verifyHTTPHeader() error = nil, want invalid token error")
}
okHeader := http.Header{}
okHeader.Set(agentTokenHeaderKey, "secret")
if err := agentAuth.verifyHTTPHeader(okHeader); err != nil {
t.Fatalf("verifyHTTPHeader() error = %v, want nil", err)
}
}
func TestAgentAuthRequiresInitializedToken(t *testing.T) {
agentAuth.SetToken("")
header := http.Header{}
header.Set(agentTokenHeaderKey, "secret")
if err := agentAuth.verifyHTTPHeader(header); err == nil {
t.Fatal("verifyHTTPHeader() error = nil, want uninitialized token error")
}
}