github.com/keysonZZZ/kmg@v0.0.0-20151121023212-05317bfd7d39/third/kmgAlipay/Oversea_test.go (about) 1 package kmgAlipay 2 3 import ( 4 "strings" 5 "testing" 6 7 "github.com/bronze1man/kmg/kmgTest" 8 ) 9 10 func TestOverseaMd5Sign(ot *testing.T) { 11 trade := OverseaTrade{ 12 SecurityCode: "56Tae2ZROl2DSw", 13 } 14 query := map[string]string{ 15 "service": "create_forex_trade", 16 "partner": "20881234567890123", 17 "return_url": "http://xxxx.com/?n=Xxx.Pay.ReturnPage", 18 "notify_url": "http://xxxx.com/?n=Xxx.Pay.NotifyAction", 19 "_input_charset": "utf-8", 20 "subject": "多项测试", 21 "body": "test哈哈only", 22 "out_trade_no": "1433229365", 23 "total_fee": "10", 24 "currency": "JPY", 25 } 26 trade.md5Sign(query) 27 kmgTest.Equal(query["sign"], "f07ac88d67becf081a06baa3a13656a8") 28 } 29 30 func TestOverseaPay(ot *testing.T) { 31 trade := OverseaTrade{ 32 PartnerId: "20881234567890123", 33 SecurityCode: "56Tae2ZROl2DSw", 34 } 35 url := trade.Pay(&OverseaTradePayRequest{ 36 Subject: "多项测试", 37 Body: "test哈哈only", 38 OutTradeNo: "1433229365", 39 Currency: "JPY", 40 TotalFee: 10, 41 }) 42 kmgTest.Ok(strings.Contains(url, "8d927a97f15a2f40a31040267a1d9afe")) 43 // kmgTest.Equal(query["sign"],"b49d7f5e6341e66870473222edc5df0b") 44 } 45 46 func TestOverseaMd5Verify(ot *testing.T) { 47 trade := OverseaTrade{ 48 SecurityCode: "56Tae2ZROl2DSw", 49 } 50 query := map[string]string{ 51 "service": "create_forex_trade", 52 "partner": "20881234567890123", 53 "return_url": "http://xxxx.com/?n=Xxx.Pay.ReturnPage", 54 "notify_url": "http://xxxx.com/?n=Xxx.Pay.NotifyAction", 55 "_input_charset": "utf-8", 56 "subject": "多项测试", 57 "body": "test哈哈only", 58 "out_trade_no": "1433229365", 59 "total_fee": "10", 60 "currency": "JPY", 61 "sign": "f07ac88d67becf081a06baa3a13656a8", 62 "sign_type": "MD5", 63 } 64 err := trade.md5Verify(query) 65 kmgTest.Equal(err, nil) 66 67 trade = OverseaTrade{ 68 SecurityCode: "56Tae2ZROl2DSw", 69 } 70 query = map[string]string{ 71 "currency": "JPY", 72 //"n": "Sig.Front.Pay.ReturnPage", 73 "out_trade_no": "1433229365", 74 "sign": "bab35fb00e9e858a0265241a94375ec2", 75 "sign_type": "MD5", 76 "total_fee": "1.00", 77 "trade_no": "2015060200001000110056045982", 78 "trade_status": "TRADE_FINISHED", 79 } 80 err = trade.md5Verify(query) 81 kmgTest.Equal(err, nil) 82 } 83 84 //func TestOverseaMustReturnPage(t *testing.T) { 85 // trade := OverseaTrade{ 86 // PartnerId: "20881234567890123", 87 // SecurityCode: "56Tae2ZROl2DSw", 88 // } 89 // ctx := kmgHttp.NewTestContext(). 90 // SetInStr("out_trade_no", "1433229365"). 91 // SetInStr("currency", "JPY"). 92 // SetInStr("total_fee","1.00"). 93 // SetInStr("sign","bab35fb00e9e858a0265241a94375ec2"). 94 // SetInStr("sign_type","MD5"). 95 // SetInStr("trade_status", "TRADE_FINISHED"). 96 // SetInStr("trade_no", "2015060200001000110056045982"). 97 // SetPost() 98 // info := trade.MustReturnPage(ctx) 99 // kmgTest.Ok(strings.Contains(info.TradeNo, "1433229365")) 100 //}