6
0
gaore-common-sdk-go/services/game/kf_test.go

85 lines
2.2 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package game
import (
"fmt"
"strings"
"testing"
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests"
)
func TestGetKfUrl(t *testing.T) {
client, err := NewClient()
if err != nil {
t.Fatalf("NewClient err: %v", err)
}
req := CreateGetKfUrlReq()
req.GameId = 10001
req.Uid = "166146"
resp, err := client.GetKfUrl(req)
if err != nil {
t.Fatalf("GetKfUrl err: %v", err)
}
if resp.Code != 1 {
t.Fatalf("expect code 1, got %d, msg: %s", resp.Code, resp.Msg)
}
if !strings.Contains(resp.Data.KfUrl, "game_id=10001") {
t.Fatalf("kf_url 缺少 game_id: %s", resp.Data.KfUrl)
}
if !strings.Contains(resp.Data.KfUrl, "uid=166146") {
t.Fatalf("kf_url 缺少 uid: %s", resp.Data.KfUrl)
}
if !strings.Contains(resp.Data.KfUrl, "sign=") {
t.Fatalf("kf_url 缺少 sign: %s", resp.Data.KfUrl)
}
fmt.Println(resp.Code, resp.Msg, resp.Data.KfUrl)
}
// TestGetKfUrlGuest 游客场景:不设 Uid链接中不应出现 uid
func TestGetKfUrlGuest(t *testing.T) {
client, err := NewClient()
if err != nil {
t.Fatalf("NewClient err: %v", err)
}
req := CreateGetKfUrlReq()
req.GameId = 10003
resp, err := client.GetKfUrl(req)
if err != nil {
t.Fatalf("GetKfUrl err: %v", err)
}
if resp.Code != 1 {
t.Fatalf("expect code 1, got %d, msg: %s", resp.Code, resp.Msg)
}
if strings.Contains(resp.Data.KfUrl, "uid=") {
t.Fatalf("游客链接不应带 uid: %s", resp.Data.KfUrl)
}
fmt.Println(resp.Code, resp.Msg, resp.Data.KfUrl)
}
// TestGetKfUrlReqParams 直接断言请求参数:不设 Uid 时 JsonParams 里不应出现 "uid" key
// 设了 Uid 时应正确出现,避免只靠服务端返回的 kf_url 做间接验证。
func TestGetKfUrlReqParams(t *testing.T) {
guestReq := CreateGetKfUrlReq()
guestReq.GameId = 10003
if err := requests.InitParam(guestReq); err != nil {
t.Fatalf("InitParam err: %v", err)
}
if _, ok := guestReq.JsonParams["uid"]; ok {
t.Fatalf("游客请求不应包含 uid 参数: %v", guestReq.JsonParams["uid"])
}
userReq := CreateGetKfUrlReq()
userReq.GameId = 10001
userReq.Uid = "166146"
if err := requests.InitParam(userReq); err != nil {
t.Fatalf("InitParam err: %v", err)
}
if userReq.JsonParams["uid"] != "166146" {
t.Fatalf("expect uid=166146, got %v", userReq.JsonParams["uid"])
}
}