Assert the gRPC user token includes the username.

The interceptor already copies preferred_username; the test now checks it.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-09-28 18:05:44 +02:00
co-authored by Cursor
parent b344df5c1b
commit bffc0c1a4d
+4 -3
View File
@@ -21,7 +21,7 @@ func TestUnaryInterceptorForwardsBearer(t *testing.T) {
t.Fatalf("Mint: %v", err) t.Fatalf("Mint: %v", err)
} }
var gotSubject string var gotSubject, gotUsername string
var gotGroups []string var gotGroups []string
var gotRaw string var gotRaw string
interceptor := auth.UnaryServerInterceptor() interceptor := auth.UnaryServerInterceptor()
@@ -32,6 +32,7 @@ func TestUnaryInterceptorForwardsBearer(t *testing.T) {
t.Fatal("missing caller") t.Fatal("missing caller")
} }
gotSubject = c.Subject gotSubject = c.Subject
gotUsername = c.Username
gotGroups = c.Groups gotGroups = c.Groups
var okRaw bool var okRaw bool
gotRaw, okRaw = BearerFromContext(ctx) gotRaw, okRaw = BearerFromContext(ctx)
@@ -43,8 +44,8 @@ func TestUnaryInterceptorForwardsBearer(t *testing.T) {
if err != nil { if err != nil {
t.Fatalf("interceptor: %v", err) t.Fatalf("interceptor: %v", err)
} }
if gotSubject != "konrad" || gotRaw != raw { if gotSubject != "konrad" || gotUsername != "konrad" || gotRaw != raw {
t.Fatalf("subject %q raw match %v", gotSubject, gotRaw == raw) t.Fatalf("subject %q username %q raw match %v", gotSubject, gotUsername, gotRaw == raw)
} }
if len(gotGroups) != 2 || gotGroups[0] != "family" || gotGroups[1] != "mgmnt-admin" { if len(gotGroups) != 2 || gotGroups[0] != "family" || gotGroups[1] != "mgmnt-admin" {
t.Fatalf("groups = %#v", gotGroups) t.Fatalf("groups = %#v", gotGroups)