115 lines
2.6 KiB
Go
115 lines
2.6 KiB
Go
package jdapi
|
|
|
|
import (
|
|
"net/http"
|
|
"testing"
|
|
|
|
"git.rosy.net.cn/baseapi/utils"
|
|
"go.uber.org/zap"
|
|
)
|
|
|
|
var (
|
|
jdapi *JDAPI
|
|
sugarLogger *zap.SugaredLogger
|
|
)
|
|
|
|
func init() {
|
|
logger, _ := zap.NewDevelopment()
|
|
jdapi = NewJDAPI("91633f2a-c5f5-4982-a925-a220d19095c3", "1dba76d40cac446ca500c0391a0b6c9d", "a88d031a1e7b462cb1579f12e97fe7f4", logger.Sugar())
|
|
}
|
|
|
|
func TestTest(t *testing.T) {
|
|
sugarLogger.Debug(utils.GetCurTimeStr())
|
|
}
|
|
|
|
func TestAccessJDQuery(t *testing.T) {
|
|
result, err := jdapi.AccessJDQuery("address/allcities", nil)
|
|
if err != nil {
|
|
t.Fatalf("Error when accessing AccessJDQuery: %v", err)
|
|
} else {
|
|
code := result["code"].(string)
|
|
if code != "0" {
|
|
t.Fatalf("code is not 0, %v", code)
|
|
}
|
|
}
|
|
}
|
|
|
|
func TestAccessJDQueryNoPage(t *testing.T) {
|
|
result, err := jdapi.AccessJDQueryNoPage("address/allcities", nil, []string{"yn"}, nil)
|
|
if err != nil {
|
|
t.Fatalf("AccessJDQueryNoPage return error:%v", err)
|
|
}
|
|
cityInfo := result.([]interface{})
|
|
if len(cityInfo) == 0 {
|
|
t.Fatal("city info is empty")
|
|
}
|
|
oneCity := cityInfo[0].(map[string]interface{})
|
|
if _, ok := oneCity["areaName"]; !ok {
|
|
t.Fatal("no areaName key")
|
|
}
|
|
if _, ok := oneCity["yn"]; ok {
|
|
t.Fatal("yn field havn't been removed")
|
|
}
|
|
}
|
|
|
|
func TestAccessJDQueryHavePage(t *testing.T) {
|
|
jdParams := map[string]string{
|
|
"pageNo": "1",
|
|
"pageSize": "20",
|
|
}
|
|
skuInfo, err := jdapi.AccessJDQueryHavePage("pms/querySkuInfos", jdParams, nil, []string{"skuName", "skuId"}, nil)
|
|
if err != nil {
|
|
t.Fatalf("AccessJDQueryHavePage return error:%v", err)
|
|
}
|
|
|
|
if len(skuInfo) == 0 {
|
|
t.Fatal("sku info is empty")
|
|
}
|
|
oneSku := skuInfo[0].(map[string]interface{})
|
|
if _, ok := oneSku["skuName"]; !ok {
|
|
t.Fatal("no skuName key")
|
|
}
|
|
if _, ok := oneSku["outSkuId"]; ok {
|
|
t.Fatal("outSkuId key not removed")
|
|
}
|
|
}
|
|
|
|
func TestGenGetURL(t *testing.T) {
|
|
params := make(map[string]string)
|
|
params["key"] = "v"
|
|
params["key2"] = "v2"
|
|
|
|
fullURL := genGetURL(jdAPIURL, "address/allcities", params)
|
|
|
|
response, err := http.Get(fullURL)
|
|
if err != nil {
|
|
t.Fatalf("Get return error:%v", err)
|
|
}
|
|
defer response.Body.Close()
|
|
}
|
|
|
|
func TestOrderQuery(t *testing.T) {
|
|
jdParams := map[string]string{
|
|
"orderId": "813452298000322",
|
|
}
|
|
result, err := jdapi.OrderQuery(jdParams)
|
|
if err != nil {
|
|
t.Fatalf("OrderQuery return error:%v", err)
|
|
}
|
|
|
|
if len(result) == 0 {
|
|
t.Fatal("OrderQuery return empty data")
|
|
}
|
|
buyerCityOk := false
|
|
orderInfo, _ := result[0].(map[string]interface{})
|
|
if buyerCity1, ok := orderInfo["buyerCity"]; ok {
|
|
if buyerCity, ok := buyerCity1.(string); ok && buyerCity == "1930" {
|
|
buyerCityOk = true
|
|
}
|
|
}
|
|
|
|
if !buyerCityOk {
|
|
t.Fatal("OrderQuery get data wrong")
|
|
}
|
|
}
|