constants_test.go 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. package domain
  2. import "testing"
  3. func TestDefaultAntigravityModelMapping_ImageCompatibilityAliases(t *testing.T) {
  4. t.Parallel()
  5. cases := map[string]string{
  6. "gemini-2.5-flash-image": "gemini-2.5-flash-image",
  7. "gemini-2.5-flash-image-preview": "gemini-2.5-flash-image",
  8. "gemini-3.1-flash-image": "gemini-3.1-flash-image",
  9. "gemini-3.1-flash-image-preview": "gemini-3.1-flash-image",
  10. "gemini-3-pro-image": "gemini-3.1-flash-image",
  11. "gemini-3-pro-image-preview": "gemini-3.1-flash-image",
  12. }
  13. for from, want := range cases {
  14. got, ok := DefaultAntigravityModelMapping[from]
  15. if !ok {
  16. t.Fatalf("expected mapping for %q to exist", from)
  17. }
  18. if got != want {
  19. t.Fatalf("unexpected mapping for %q: got %q want %q", from, got, want)
  20. }
  21. }
  22. }
  23. func TestDefaultAntigravityModelMapping_ContainsNewClaudeModels(t *testing.T) {
  24. t.Parallel()
  25. cases := map[string]string{
  26. "claude-fable-5-1": "claude-fable-5-1",
  27. "claude-fable-5": "claude-fable-5",
  28. "claude-opus-4-8": "claude-opus-4-8",
  29. }
  30. for from, want := range cases {
  31. got, ok := DefaultAntigravityModelMapping[from]
  32. if !ok {
  33. t.Fatalf("expected mapping for %q to exist", from)
  34. }
  35. if got != want {
  36. t.Fatalf("unexpected mapping for %q: got %q want %q", from, got, want)
  37. }
  38. }
  39. }
  40. func TestDefaultAntigravityModelMapping_PreservesExplicitSonnet45AndMigratesLegacyAliases(t *testing.T) {
  41. t.Parallel()
  42. cases := map[string]string{
  43. "claude-sonnet-4-5": "claude-sonnet-4-5",
  44. "claude-sonnet-4-5-thinking": "claude-sonnet-4-6",
  45. "claude-sonnet-4-5-20250929": "claude-sonnet-4-6",
  46. }
  47. for model, want := range cases {
  48. if got := DefaultAntigravityModelMapping[model]; got != want {
  49. t.Fatalf("expected model %q to map to %q, got %q", model, want, got)
  50. }
  51. }
  52. }
  53. func TestDefaultAntigravityModelMapping_Gemini31ProAliases(t *testing.T) {
  54. t.Parallel()
  55. cases := map[string]string{
  56. AntigravityGemini31ProAgentModel: AntigravityGemini31ProAgentModel,
  57. "gemini-3.1-pro": AntigravityGemini31ProAgentModel,
  58. "gemini-3.1-pro-high": AntigravityGemini31ProAgentModel,
  59. "gemini-3.1-pro-preview": AntigravityGemini31ProAgentModel,
  60. "gemini-3.1-pro-low": "gemini-3.1-pro-low",
  61. }
  62. for from, want := range cases {
  63. got, ok := DefaultAntigravityModelMapping[from]
  64. if !ok {
  65. t.Fatalf("expected mapping for %q to exist", from)
  66. }
  67. if got != want {
  68. t.Fatalf("unexpected mapping for %q: got %q want %q", from, got, want)
  69. }
  70. }
  71. }
  72. func TestDefaultAntigravityModelMapping_Gemini36FlashModels(t *testing.T) {
  73. 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"} {
  74. if got := DefaultAntigravityModelMapping[model]; got != model {
  75. t.Fatalf("expected %s to map to itself, got %q", model, got)
  76. }
  77. }
  78. }
  79. func TestDefaultBedrockModelMapping_ContainsNewClaudeModels(t *testing.T) {
  80. t.Parallel()
  81. cases := map[string]string{
  82. "claude-fable-5-1": "anthropic.claude-fable-5-1",
  83. "claude-fable-5": "anthropic.claude-fable-5",
  84. "claude-opus-4-8": "us.anthropic.claude-opus-4-8-v1",
  85. }
  86. for from, want := range cases {
  87. got, ok := DefaultBedrockModelMapping[from]
  88. if !ok {
  89. t.Fatalf("expected Bedrock mapping for %q to exist", from)
  90. }
  91. if got != want {
  92. t.Fatalf("unexpected Bedrock mapping for %q: got %q want %q", from, got, want)
  93. }
  94. }
  95. }