Some checks failed
CI / build-and-test (push) Failing after -32m45s
* Include tool name from request in access log entries * Update user agent header in HTTP requests * Add tests for MCP tool name logging
36 lines
882 B
Go
36 lines
882 B
Go
package cmd
|
|
|
|
import (
|
|
"net/http"
|
|
"net/http/httptest"
|
|
"testing"
|
|
)
|
|
|
|
func TestBearerTransportFormatsBearerToken(t *testing.T) {
|
|
const want = "Bearer X"
|
|
const wantUA = "amcs-cli/0.0.1"
|
|
|
|
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
|
if got := r.Header.Get("Authorization"); got != want {
|
|
t.Fatalf("Authorization header = %q, want %q", got, want)
|
|
}
|
|
if got := r.Header.Get("User-Agent"); got != wantUA {
|
|
t.Fatalf("User-Agent header = %q, want %q", got, wantUA)
|
|
}
|
|
w.WriteHeader(http.StatusNoContent)
|
|
}))
|
|
defer ts.Close()
|
|
|
|
client := &http.Client{Transport: &bearerTransport{token: "X"}}
|
|
req, err := http.NewRequest(http.MethodGet, ts.URL, nil)
|
|
if err != nil {
|
|
t.Fatalf("NewRequest() error = %v", err)
|
|
}
|
|
|
|
res, err := client.Do(req)
|
|
if err != nil {
|
|
t.Fatalf("client.Do() error = %v", err)
|
|
}
|
|
_ = res.Body.Close()
|
|
}
|