vibe-proxy/backend/internal/watcher/synthesizer/cooling_override_test.go
2026-08-24 00:10:41 +02:00

95 lines
2.4 KiB
Go

package synthesizer
import (
"testing"
"time"
"github.com/router-for-me/CLIProxyAPI/v7/internal/config"
)
func boolPointer(value bool) *bool {
return &value
}
func TestConfigSynthesizerPreservesExplicitFalseCoolingOverrides(t *testing.T) {
disableCooling := false
tests := []struct {
name string
cfg *config.Config
}{
{
name: "gemini",
cfg: &config.Config{GeminiKey: []config.GeminiKey{{
APIKey: "gemini-key",
DisableCooling: &disableCooling,
}}},
},
{
name: "interactions",
cfg: &config.Config{InteractionsKey: []config.GeminiKey{{
APIKey: "interactions-key",
DisableCooling: &disableCooling,
}}},
},
{
name: "claude",
cfg: &config.Config{ClaudeKey: []config.ClaudeKey{{
APIKey: "claude-key",
DisableCooling: &disableCooling,
}}},
},
{
name: "codex",
cfg: &config.Config{CodexKey: []config.CodexKey{{
APIKey: "codex-key",
BaseURL: "https://codex.example.com",
DisableCooling: &disableCooling,
}}},
},
{
name: "xai",
cfg: &config.Config{XAIKey: []config.XAIKey{{
APIKey: "xai-key",
BaseURL: "https://api.x.ai/v1",
DisableCooling: &disableCooling,
}}},
},
{
name: "openai compatibility",
cfg: &config.Config{OpenAICompatibility: []config.OpenAICompatibility{{
Name: "compat",
BaseURL: "https://compat.example.com",
DisableCooling: &disableCooling,
APIKeyEntries: []config.OpenAICompatibilityAPIKey{{APIKey: "compat-key"}},
}}},
},
{
name: "vertex",
cfg: &config.Config{VertexCompatAPIKey: []config.VertexCompatKey{{
APIKey: "vertex-key",
BaseURL: "https://vertex.example.com",
DisableCooling: &disableCooling,
}}},
},
}
for _, tc := range tests {
t.Run(tc.name, func(t *testing.T) {
auths, errSynthesize := NewConfigSynthesizer().Synthesize(&SynthesisContext{
Config: tc.cfg,
Now: time.Unix(100, 0).UTC(),
IDGenerator: NewStableIDGenerator(),
})
if errSynthesize != nil {
t.Fatalf("Synthesize() error = %v", errSynthesize)
}
if len(auths) != 1 {
t.Fatalf("auth count = %d, want 1", len(auths))
}
disabled, present := auths[0].DisableCoolingOverride()
if !present || disabled {
t.Fatalf("DisableCoolingOverride() = %t, %t, want false, true", disabled, present)
}
})
}
}