package wxpayapi import ( "io/ioutil" "strings" "testing" "git.rosy.net.cn/baseapi" "git.rosy.net.cn/baseapi/utils" "github.com/clbanning/mxj" "go.uber.org/zap" ) var ( api *API sugarLogger *zap.SugaredLogger ) func init() { logger, _ := zap.NewDevelopment() sugarLogger = logger.Sugar() baseapi.Init(sugarLogger) certPEMBlock, _ := ioutil.ReadFile("1390686702_20190115_cert/apiclient_cert.pem") keyPEMBlock, _ := ioutil.ReadFile("1390686702_20190115_cert/apiclient_key.pem") api = NewWithCertificate("wx4b5930c13f8b1170", "XKJPOIHJ233adf01KJIXlIeQDSDKFJAD", "1390686702", certPEMBlock, keyPEMBlock) // api = New("wx4b5930c13f8b1170", "XKJPOIHJ233adf01KJIXlIeQDSDKFJAD", "1390686702") } func TestOrderQuery(t *testing.T) { result, err := api.OrderQuery("4200000411201910186159598703", "") if err != nil { t.Fatal(err) } t.Log(utils.Format4Output(result, false)) } func TestCreateUnifiedOrder(t *testing.T) { orderNo := utils.GetUUID() t.Log(orderNo) result, err := api.CreateUnifiedOrder(&CreateOrderParam{ Body: "这里一个测试商品", NotifyURL: "http://callback.test.jxc4.com/wxpay/msg/", OutTradeNo: orderNo, SpbillCreateIP: "114.114.114.114", TradeType: TradeTypeNative, TotalFee: 1, }) if err != nil { t.Fatal(err) } t.Log(utils.Format4Output(result, false)) } func TestCloseOrder(t *testing.T) { orderNo := "5CA4BC5E22C611EA9AB9186590E02977" // utils.GetUUID() // t.Log(orderNo) err := api.CloseOrder(orderNo) if err != nil { t.Fatal(err) } } func TestPayRefund(t *testing.T) { result, err := api.PayRefund(&PayRefundParam{ TransactionID: "", OutTradeNo: "8E0DD6260B7511EA908C186590E02977", NotifyURL: "http://callback.test.jxc4.com/wxpay/msg/", OutRefundNo: utils.GetUUID(), TotalFee: 1, RefundFee: 1, }) if err != nil { t.Fatal(err) } t.Log(utils.Format4Output(result, false)) } func TestXml2Json(t *testing.T) { xmlStr := strings.Replace(` `, "\\n", "\n", -1) mv, err := mxj.NewMapXml([]byte(xmlStr)) if err != nil { t.Fatal(err) } t.Log(utils.Format4Output(mv, false)) }