package domain import "testing" func TestDefaultAntigravityModelMapping_ImageCompatibilityAliases(t *testing.T) { t.Parallel() cases := map[string]string{ "gemini-2.5-flash-image": "gemini-2.5-flash-image", "gemini-2.5-flash-image-preview": "gemini-2.5-flash-image", "gemini-3.1-flash-image": "gemini-3.1-flash-image", "gemini-3.1-flash-image-preview": "gemini-3.1-flash-image", "gemini-3-pro-image": "gemini-3.1-flash-image", "gemini-3-pro-image-preview": "gemini-3.1-flash-image", } for from, want := range cases { got, ok := DefaultAntigravityModelMapping[from] if !ok { t.Fatalf("expected mapping for %q to exist", from) } if got != want { t.Fatalf("unexpected mapping for %q: got %q want %q", from, got, want) } } } func TestDefaultAntigravityModelMapping_ContainsNewClaudeModels(t *testing.T) { t.Parallel() cases := map[string]string{ "claude-fable-5": "claude-fable-5", "claude-opus-4-8": "claude-opus-4-8", } for from, want := range cases { got, ok := DefaultAntigravityModelMapping[from] if !ok { t.Fatalf("expected mapping for %q to exist", from) } if got != want { t.Fatalf("unexpected mapping for %q: got %q want %q", from, got, want) } } } func TestDefaultAntigravityModelMapping_Gemini31ProAliases(t *testing.T) { t.Parallel() cases := map[string]string{ AntigravityGemini31ProAgentModel: AntigravityGemini31ProAgentModel, "gemini-3.1-pro": AntigravityGemini31ProAgentModel, "gemini-3.1-pro-high": AntigravityGemini31ProAgentModel, "gemini-3.1-pro-preview": AntigravityGemini31ProAgentModel, "gemini-3.1-pro-low": "gemini-3.1-pro-low", } for from, want := range cases { got, ok := DefaultAntigravityModelMapping[from] if !ok { t.Fatalf("expected mapping for %q to exist", from) } if got != want { t.Fatalf("unexpected mapping for %q: got %q want %q", from, got, want) } } } func TestDefaultAntigravityModelMapping_Gemini36FlashModels(t *testing.T) { for _, model := range []string{"gemini-3.6-flash", "gemini-3.6-flash-high", "gemini-3.6-flash-low", "gemini-3.6-flash-medium", "gemini-3.6-flash-tiered"} { if got := DefaultAntigravityModelMapping[model]; got != model { t.Fatalf("expected %s to map to itself, got %q", model, got) } } } func TestDefaultBedrockModelMapping_ContainsNewClaudeModels(t *testing.T) { t.Parallel() cases := map[string]string{ "claude-fable-5": "anthropic.claude-fable-5", "claude-opus-4-8": "us.anthropic.claude-opus-4-8-v1", } for from, want := range cases { got, ok := DefaultBedrockModelMapping[from] if !ok { t.Fatalf("expected Bedrock mapping for %q to exist", from) } if got != want { t.Fatalf("unexpected Bedrock mapping for %q: got %q want %q", from, got, want) } } }