29 lines
971 B
Go
29 lines
971 B
Go
package accounts_test
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/wangjia/pay/config"
|
|
"github.com/wangjia/pay/internal/accounts"
|
|
)
|
|
|
|
func TestEnabledForAndCredential(t *testing.T) {
|
|
t.Setenv("USDT_A1_XPUB", "xpub-abc")
|
|
reg := accounts.New([]config.AccountConfig{
|
|
{AccountID: "usdt-a1", Channel: "crypto", Region: "global", Enabled: true, Weight: 1, CredentialEnvPrefix: "USDT_A1"},
|
|
{AccountID: "usdt-a2", Channel: "crypto", Region: "global", Enabled: false, Weight: 1, CredentialEnvPrefix: "USDT_A2"},
|
|
{AccountID: "ali-cn1", Channel: "alipay", Region: "cn", Enabled: true, Weight: 1, CredentialEnvPrefix: "ALI_CN1"},
|
|
})
|
|
|
|
got := reg.EnabledFor("crypto", "global")
|
|
if len(got) != 1 || got[0].AccountID != "usdt-a1" {
|
|
t.Fatalf("EnabledFor crypto/global = %+v", got)
|
|
}
|
|
if reg.Credential("usdt-a1", "XPUB") != "xpub-abc" {
|
|
t.Fatalf("Credential xpub 取值失败")
|
|
}
|
|
if len(reg.EnabledFor("alipay", "global")) != 0 {
|
|
t.Fatalf("alipay 在 global 应无账户")
|
|
}
|
|
}
|