package payment import ( integrationbiz "kra/internal/biz/integration" bizpayment "kra/internal/biz/payment" "strings" "testing" ) func TestPaymentDefinitionsProvideNonEmptyDefaults(t *testing.T) { definitions := integrationbiz.IntegrationDefinitions(integrationbiz.IntegrationKindPayment) if len(definitions) != len(bizpayment.SupportedPaymentProviders) { t.Fatalf("payment definitions = %d, want %d", len(definitions), len(bizpayment.SupportedPaymentProviders)) } for _, definition := range definitions { if definition.Provider == "" || definition.Name == "" || len(definition.Fields) == 0 { t.Fatalf("incomplete payment definition: %+v", definition) } if len(definition.Defaults) == 0 { t.Fatalf("payment provider %s still has empty defaults", definition.Provider) } } } func TestPaymentValidationRejectsUnknownProvider(t *testing.T) { err := validatePaymentConfig("unknown-provider", map[string]any{}) if err == nil || !strings.Contains(err.Error(), "不支持") { t.Fatalf("error = %v", err) } }