package pay007 import "testing" func TestBuildSign(t *testing.T) { params := map[string]string{ "pid": "1001", "out_trade_no": "A100", "name": "test", "money": "1.00", "type": "alipay", "empty": "", "sign_type": "MD5", "sign": "ignored", } got := BuildSign(params, "secret") const want = "59DD6586A5050050EB08A9806C6F501B" if got != want { t.Fatalf("BuildSign() = %s, want %s", got, want) } } func TestVerifySign(t *testing.T) { params := map[string]string{ "pid": "1001", "out_trade_no": "A100", "name": "test", "money": "1.00", "type": "alipay", } params["sign"] = BuildSign(params, "secret") if !VerifySign(params, "secret") { t.Fatal("VerifySign() = false, want true") } }