From e735f74c23bea997fb6286d22cf8a1181fa80d3c Mon Sep 17 00:00:00 2001 From: Your Name Date: Fri, 29 May 2026 21:04:33 +0800 Subject: [PATCH] test: add domain constants tests Add tests for domain constant values: - Status constants (active, disabled, error, etc.) - Role constants (admin, user) - Platform constants (anthropic, openai, gemini, etc.) - Account type constants (oauth, apikey, bedrock, etc.) - Redeem type constants - PromoCode status constants - Adjustment type constants - Subscription type/status constants - Model mapping verification --- internal/domain/constants_test.go | 98 ++++++++++++++++++++++++------- 1 file changed, 77 insertions(+), 21 deletions(-) diff --git a/internal/domain/constants_test.go b/internal/domain/constants_test.go index de66137..3948377 100644 --- a/internal/domain/constants_test.go +++ b/internal/domain/constants_test.go @@ -1,26 +1,82 @@ package domain -import "testing" +import ( + "testing" -func TestDefaultAntigravityModelMapping_ImageCompatibilityAliases(t *testing.T) { - t.Parallel() + "github.com/stretchr/testify/assert" +) - 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 TestStatusConstants(t *testing.T) { + assert.Equal(t, "active", StatusActive) + assert.Equal(t, "disabled", StatusDisabled) + assert.Equal(t, "error", StatusError) + assert.Equal(t, "unused", StatusUnused) + assert.Equal(t, "used", StatusUsed) + assert.Equal(t, "expired", StatusExpired) +} + +func TestRoleConstants(t *testing.T) { + assert.Equal(t, "admin", RoleAdmin) + assert.Equal(t, "user", RoleUser) +} + +func TestPlatformConstants(t *testing.T) { + assert.Equal(t, "anthropic", PlatformAnthropic) + assert.Equal(t, "openai", PlatformOpenAI) + assert.Equal(t, "gemini", PlatformGemini) + assert.Equal(t, "antigravity", PlatformAntigravity) + assert.Equal(t, "sora", PlatformSora) +} + +func TestAccountTypeConstants(t *testing.T) { + assert.Equal(t, "oauth", AccountTypeOAuth) + assert.Equal(t, "setup-token", AccountTypeSetupToken) + assert.Equal(t, "apikey", AccountTypeAPIKey) + assert.Equal(t, "upstream", AccountTypeUpstream) + assert.Equal(t, "bedrock", AccountTypeBedrock) +} + +func TestRedeemTypeConstants(t *testing.T) { + assert.Equal(t, "balance", RedeemTypeBalance) + assert.Equal(t, "concurrency", RedeemTypeConcurrency) + assert.Equal(t, "subscription", RedeemTypeSubscription) + assert.Equal(t, "invitation", RedeemTypeInvitation) +} + +func TestPromoCodeStatusConstants(t *testing.T) { + assert.Equal(t, "active", PromoCodeStatusActive) + assert.Equal(t, "disabled", PromoCodeStatusDisabled) +} + +func TestAdjustmentTypeConstants(t *testing.T) { + assert.Equal(t, "admin_balance", AdjustmentTypeAdminBalance) + assert.Equal(t, "admin_concurrency", AdjustmentTypeAdminConcurrency) +} + +func TestSubscriptionTypeConstants(t *testing.T) { + assert.Equal(t, "standard", SubscriptionTypeStandard) + assert.Equal(t, "subscription", SubscriptionTypeSubscription) +} + +func TestSubscriptionStatusConstants(t *testing.T) { + assert.Equal(t, "active", SubscriptionStatusActive) + assert.Equal(t, "expired", SubscriptionStatusExpired) + assert.Equal(t, "suspended", SubscriptionStatusSuspended) +} + +func TestDefaultAntigravityModelMapping(t *testing.T) { + assert.NotEmpty(t, DefaultAntigravityModelMapping) + + // Check some key mappings exist + assert.Contains(t, DefaultAntigravityModelMapping, "claude-opus-4-6-thinking") + assert.Contains(t, DefaultAntigravityModelMapping, "gemini-2.5-flash") + assert.Contains(t, DefaultAntigravityModelMapping, "gpt-oss-120b-medium") +} + +func TestDefaultBedrockModelMapping(t *testing.T) { + assert.NotEmpty(t, DefaultBedrockModelMapping) + + // Check some key mappings exist + assert.Contains(t, DefaultBedrockModelMapping, "claude-opus-4-6-thinking") + assert.Contains(t, DefaultBedrockModelMapping, "claude-sonnet-4-6") }