topup_epay_guard_test.go 1.1 KB

12345678910111213141516171819202122232425262728293031
  1. package controller
  2. import (
  3. "testing"
  4. "github.com/QuantumNous/new-api/model"
  5. )
  6. func TestIsNonEpayPaymentMethodForEpayCallback(t *testing.T) {
  7. testCases := []struct {
  8. name string
  9. paymentMethod string
  10. expectedBlocked bool
  11. }{
  12. {name: "stripe", paymentMethod: model.PaymentMethodStripe, expectedBlocked: true},
  13. {name: "creem", paymentMethod: model.PaymentMethodCreem, expectedBlocked: true},
  14. {name: "waffo", paymentMethod: model.PaymentMethodWaffo, expectedBlocked: true},
  15. {name: "waffo pancake", paymentMethod: model.PaymentMethodWaffoPancake, expectedBlocked: true},
  16. {name: "alipay", paymentMethod: "alipay", expectedBlocked: false},
  17. {name: "wxpay", paymentMethod: "wxpay", expectedBlocked: false},
  18. {name: "custom epay type", paymentMethod: "custom1", expectedBlocked: false},
  19. }
  20. for _, tc := range testCases {
  21. t.Run(tc.name, func(t *testing.T) {
  22. if actual := isNonEpayPaymentMethodForEpayCallback(tc.paymentMethod); actual != tc.expectedBlocked {
  23. t.Fatalf("expected blocked=%v, got %v for payment method %q", tc.expectedBlocked, actual, tc.paymentMethod)
  24. }
  25. })
  26. }
  27. }