Files
Atlas/internal/domain/provider_compat_test.go
T
renjue 8eacbb2b3e
CI / docker (push) Successful in 3m7s
实现 Atlas AI 平台一期能力并完成品牌化改造。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 23:01:52 +08:00

41 lines
1.1 KiB
Go

package domain
import "testing"
func TestValidateProviderBinding(t *testing.T) {
cases := []struct {
protocol string
serviceType string
ok bool
}{
{"openai", "chat", true},
{"replicate", "image_generation", true},
{"replicate", "text_to_image", true},
{"replicate", "image_to_image", true},
{"openai", "text_to_image", false},
{"replicate", "chat", false},
{"unknown", "chat", false},
}
for _, tc := range cases {
err := ValidateProviderBinding(tc.protocol, tc.serviceType)
if tc.ok && err != nil {
t.Fatalf("%s/%s expected ok, got %v", tc.protocol, tc.serviceType, err)
}
if !tc.ok && err == nil {
t.Fatalf("%s/%s expected error", tc.protocol, tc.serviceType)
}
}
}
func TestDefaultBindings(t *testing.T) {
if got := DefaultProtocol(ServiceImageGeneration); got != "replicate" {
t.Fatalf("expected replicate, got %s", got)
}
if got := DefaultServiceType("openai"); got != ServiceChat {
t.Fatalf("expected chat, got %s", got)
}
if got := DefaultServiceType("replicate"); got != ServiceImageGeneration {
t.Fatalf("expected image_generation, got %s", got)
}
}