Something went wrong. Try again.
sloproxy
Something went wrong. Try again.
2.9 kB · 75 lines
Go
at main
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576package diff
import ( "strings" "testing"
"github.com/router-for-me/CLIProxyAPI/v7/internal/config")
func TestBuildConfigChangeDetailsIncludesAllCoolingOverrides(t *testing.T) { disabled := true enabled := false tests := []struct { name string oldCfg *config.Config newCfg *config.Config want string }{ { name: "gemini inherit to false", oldCfg: &config.Config{GeminiKey: []config.GeminiKey{{APIKey: "gemini-key"}}}, newCfg: &config.Config{GeminiKey: []config.GeminiKey{{APIKey: "gemini-key", DisableCooling: &enabled}}}, want: "gemini[0].disable-cooling: inherit -> false", }, { name: "interactions false to true", oldCfg: &config.Config{InteractionsKey: []config.GeminiKey{{APIKey: "interactions-key", DisableCooling: &enabled}}}, newCfg: &config.Config{InteractionsKey: []config.GeminiKey{{APIKey: "interactions-key", DisableCooling: &disabled}}}, want: "interactions[0].disable-cooling: false -> true", }, { name: "claude false to true", oldCfg: &config.Config{ClaudeKey: []config.ClaudeKey{{APIKey: "claude-key", DisableCooling: &enabled}}}, newCfg: &config.Config{ClaudeKey: []config.ClaudeKey{{APIKey: "claude-key", DisableCooling: &disabled}}}, want: "claude[0].disable-cooling: false -> true", }, { name: "codex true to inherit", oldCfg: &config.Config{CodexKey: []config.CodexKey{{APIKey: "codex-key", DisableCooling: &disabled}}}, newCfg: &config.Config{CodexKey: []config.CodexKey{{APIKey: "codex-key"}}}, want: "codex[0].disable-cooling: true -> inherit", }, { name: "xai inherit to true", oldCfg: &config.Config{XAIKey: []config.XAIKey{{APIKey: "xai-key"}}}, newCfg: &config.Config{XAIKey: []config.XAIKey{{APIKey: "xai-key", DisableCooling: &disabled}}}, want: "xai[0].disable-cooling: inherit -> true", }, { name: "openai compatibility false to inherit", oldCfg: &config.Config{OpenAICompatibility: []config.OpenAICompatibility{{ Name: "compat", BaseURL: "https://compat.example.com", DisableCooling: &enabled, }}}, newCfg: &config.Config{OpenAICompatibility: []config.OpenAICompatibility{{ Name: "compat", BaseURL: "https://compat.example.com", }}}, want: "disable-cooling false -> inherit", }, { name: "vertex inherit to false", oldCfg: &config.Config{VertexCompatAPIKey: []config.VertexCompatKey{{APIKey: "vertex-key"}}}, newCfg: &config.Config{VertexCompatAPIKey: []config.VertexCompatKey{{APIKey: "vertex-key", DisableCooling: &enabled}}}, want: "vertex[0].disable-cooling: inherit -> false", }, }
for _, tc := range tests { t.Run(tc.name, func(t *testing.T) { changes := strings.Join(BuildConfigChangeDetails(tc.oldCfg, tc.newCfg), "\n") if !strings.Contains(changes, tc.want) { t.Fatalf("changes missing %q:\n%s", tc.want, changes) } }) }}