Files
hfb_sys/backend/internal/modules/paymentconfig/repository_test.go
T

41 lines
1.4 KiB
Go

package paymentconfig
import "testing"
func TestImportCreateRequestKeepsOneActiveConfigPerPayWay(t *testing.T) {
configs := []ConfigDTO{
{Provider: "lakala", MerchantID: "M1", PayWay: "ZFBZF", Status: "active", IsDefault: true},
{Provider: "leshua", MerchantID: "M2", PayWay: "ZFBZF", Status: "active", IsDefault: false},
{Provider: "leshua", MerchantID: "M3", PayWay: "WXZF", Status: "active", IsDefault: true},
}
activeKeys := backupActiveKeys(configs)
first := importCreateRequest(configs[0], activeKeys)
second := importCreateRequest(configs[1], activeKeys)
third := importCreateRequest(configs[2], activeKeys)
if first.Status != "active" || !first.IsDefault {
t.Fatalf("first config status/default = %s/%v, want active/true", first.Status, first.IsDefault)
}
if second.Status != "disabled" || second.IsDefault {
t.Fatalf("second config status/default = %s/%v, want disabled/false", second.Status, second.IsDefault)
}
if third.Status != "active" || !third.IsDefault {
t.Fatalf("third config status/default = %s/%v, want active/true", third.Status, third.IsDefault)
}
}
func TestImportCreateRequestPreservesTestingConfig(t *testing.T) {
cfg := ConfigDTO{
Provider: "lakala",
MerchantID: "M1",
Status: "testing",
}
req := importCreateRequest(cfg, nil)
if req.Status != "testing" || req.IsDefault {
t.Fatalf("status/default = %s/%v, want testing/false", req.Status, req.IsDefault)
}
}