vibe-proxy/backend/sdk/cliproxy/auth/selected_auth_metadata_test.go
2026-08-24 00:10:41 +02:00

40 lines
1.2 KiB
Go

package auth
import (
"testing"
cliproxyexecutor "github.com/router-for-me/CLIProxyAPI/v7/sdk/cliproxy/executor"
)
func TestPublishSelectedAuthMetadataIncludesStableIndex(t *testing.T) {
auth := &Auth{
ID: "auth-1",
Provider: "codex",
FileName: "auth-1.json",
}
selectedAuthID := ""
selectedAuthIndex := ""
meta := map[string]any{
cliproxyexecutor.SelectedAuthCallbackMetadataKey: func(authID string) {
selectedAuthID = authID
},
cliproxyexecutor.SelectedAuthIndexCallbackMetadataKey: func(authIndex string) {
selectedAuthIndex = authIndex
},
}
publishSelectedAuthMetadata(meta, auth)
if selectedAuthID != auth.ID {
t.Fatalf("selected auth ID = %q, want %q", selectedAuthID, auth.ID)
}
if selectedAuthIndex == "" || selectedAuthIndex != auth.Index {
t.Fatalf("selected auth index = %q, want %q", selectedAuthIndex, auth.Index)
}
if got := meta[cliproxyexecutor.SelectedAuthMetadataKey]; got != auth.ID {
t.Fatalf("selected auth metadata = %#v, want %q", got, auth.ID)
}
if got := meta[cliproxyexecutor.SelectedAuthIndexMetadataKey]; got != auth.Index {
t.Fatalf("selected auth index metadata = %#v, want %q", got, auth.Index)
}
}