29 lines
797 B
Go
29 lines
797 B
Go
package paymentconfig
|
|
|
|
import (
|
|
"errors"
|
|
"testing"
|
|
)
|
|
|
|
func TestValidateCreateRequestSaobeiRequiresTerminalID(t *testing.T) {
|
|
repo := &Repository{}
|
|
req := CreateRequest{
|
|
Name: "扫呗测试",
|
|
Provider: "saobei",
|
|
MerchantID: "839305812000286",
|
|
GatewayURL: "https://pay.example",
|
|
SignKey: "access-token",
|
|
NotifyURL: "https://example.com/api/payments/saobei/notify",
|
|
ExtraConfig: map[string]any{
|
|
"terminal_id": "",
|
|
},
|
|
}
|
|
if err := repo.validateCreateRequest(req); !errors.Is(err, ErrTerminalIDRequired) {
|
|
t.Fatalf("validateCreateRequest() error = %v, want %v", err, ErrTerminalIDRequired)
|
|
}
|
|
req.ExtraConfig["terminal_id"] = "30616969"
|
|
if err := repo.validateCreateRequest(req); err != nil {
|
|
t.Fatalf("validateCreateRequest() error = %v, want nil", err)
|
|
}
|
|
}
|