feat: add Airwallex payments and multi-currency support
This commit is contained in:
@@ -114,6 +114,7 @@ func TestVerifyOrderPublicReturnsLegacyOrderState(t *testing.T) {
|
||||
SetExpiresAt(time.Now().Add(time.Hour)).
|
||||
SetClientIP("127.0.0.1").
|
||||
SetSrcHost("api.example.com").
|
||||
SetProviderSnapshot(map[string]any{"currency": "HKD"}).
|
||||
Save(context.Background())
|
||||
require.NoError(t, err)
|
||||
|
||||
@@ -141,6 +142,7 @@ func TestVerifyOrderPublicReturnsLegacyOrderState(t *testing.T) {
|
||||
Amount float64 `json:"amount"`
|
||||
PayAmount float64 `json:"pay_amount"`
|
||||
FeeRate float64 `json:"fee_rate"`
|
||||
Currency string `json:"currency"`
|
||||
PaymentType string `json:"payment_type"`
|
||||
OrderType string `json:"order_type"`
|
||||
Status string `json:"status"`
|
||||
@@ -155,6 +157,7 @@ func TestVerifyOrderPublicReturnsLegacyOrderState(t *testing.T) {
|
||||
require.Equal(t, "legacy-order-no", resp.Data.OutTradeNo)
|
||||
require.Equal(t, 90.64, resp.Data.PayAmount)
|
||||
require.Equal(t, 0.03, resp.Data.FeeRate)
|
||||
require.Equal(t, "HKD", resp.Data.Currency)
|
||||
require.Equal(t, payment.TypeAlipay, resp.Data.PaymentType)
|
||||
require.Equal(t, payment.OrderTypeBalance, resp.Data.OrderType)
|
||||
require.Equal(t, service.OrderStatusPending, resp.Data.Status)
|
||||
@@ -202,6 +205,7 @@ func TestResolveOrderPublicByResumeTokenReturnsFrontendContractFields(t *testing
|
||||
SetPaidAt(time.Now()).
|
||||
SetClientIP("127.0.0.1").
|
||||
SetSrcHost("api.example.com").
|
||||
SetProviderSnapshot(map[string]any{"currency": "USD"}).
|
||||
Save(context.Background())
|
||||
require.NoError(t, err)
|
||||
|
||||
@@ -242,6 +246,7 @@ func TestResolveOrderPublicByResumeTokenReturnsFrontendContractFields(t *testing
|
||||
require.Equal(t, 100.0, resp.Data["amount"])
|
||||
require.Equal(t, 103.0, resp.Data["pay_amount"])
|
||||
require.Equal(t, 0.03, resp.Data["fee_rate"])
|
||||
require.Equal(t, "USD", resp.Data["currency"])
|
||||
require.Equal(t, payment.TypeAlipay, resp.Data["payment_type"])
|
||||
require.Equal(t, payment.OrderTypeBalance, resp.Data["order_type"])
|
||||
require.Equal(t, service.OrderStatusPaid, resp.Data["status"])
|
||||
|
||||
Reference in New Issue
Block a user