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  //}