- big big refactor.
This commit is contained in:
139
platformapi/dadaapi/dadaapi_test.go
Normal file
139
platformapi/dadaapi/dadaapi_test.go
Normal file
@@ -0,0 +1,139 @@
|
||||
package dadaapi
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"git.rosy.net.cn/baseapi"
|
||||
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"go.uber.org/zap"
|
||||
)
|
||||
|
||||
var (
|
||||
dadaapi *API
|
||||
sugarLogger *zap.SugaredLogger
|
||||
testOrder *OperateOrderRequiredParams
|
||||
)
|
||||
|
||||
const (
|
||||
testShopNo = "11047059"
|
||||
)
|
||||
|
||||
func init() {
|
||||
logger, _ := zap.NewDevelopment()
|
||||
sugarLogger = logger.Sugar()
|
||||
baseapi.Init(sugarLogger)
|
||||
|
||||
// sandbox
|
||||
dadaapi = New("dada9623324449cd250", "30c2abbfe8a8780ad5aace46300c64b9", "73753", "http://callback.jxc4.com/dada/order", false)
|
||||
|
||||
// prod
|
||||
|
||||
testOrder = &OperateOrderRequiredParams{
|
||||
ShopNo: testShopNo,
|
||||
OriginID: "234242342",
|
||||
CityCode: "028",
|
||||
CargoPrice: 12.34,
|
||||
IsPrepay: 1,
|
||||
ReceiverName: "我是谁",
|
||||
ReceiverAddress: "九里堤",
|
||||
ReceiverLat: 30.74631,
|
||||
ReceiverLng: 103.99112,
|
||||
ReceiverPhone: "12812345678",
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func TestTest(t *testing.T) {
|
||||
sugarLogger.Debug(utils.GetCurTimeStr())
|
||||
}
|
||||
|
||||
func TestSignCallback(t *testing.T) {
|
||||
sampleData := `{"signature":"5a277f2519b6011028ff541fb09b8553","client_id":"275000419162381","order_id":"234242342","order_status":1,"cancel_reason":"","cancel_from":0,"dm_id":0,"update_time":1529564947}`
|
||||
mapData := make(map[string]interface{})
|
||||
utils.UnmarshalUseNumber([]byte(sampleData), &mapData)
|
||||
sign := dadaapi.signCallbackParams(mapData)
|
||||
if sign != mapData["signature"] {
|
||||
t.Fatal("sign is not correct")
|
||||
}
|
||||
}
|
||||
|
||||
func TestAccessAPI(t *testing.T) {
|
||||
body := make(map[string]interface{})
|
||||
body["order_id"] = "fakeorderid"
|
||||
result, err := dadaapi.AccessAPI("api/order/status/query", body)
|
||||
|
||||
failed := true
|
||||
if err != nil {
|
||||
if err2, ok := err.(*utils.ErrorWithCode); ok {
|
||||
if err2.IntCode() != ResponseCodeSignErr {
|
||||
failed = false
|
||||
}
|
||||
}
|
||||
} else {
|
||||
failed = false
|
||||
}
|
||||
|
||||
if failed {
|
||||
t.Fatalf("Error when accessing api result:%v, error:%v", result, err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestGetCites(t *testing.T) {
|
||||
result, err := dadaapi.GetCities()
|
||||
if err != nil {
|
||||
t.Fatal(err.Error())
|
||||
}
|
||||
failed := true
|
||||
for _, city := range result {
|
||||
if city.CityCode == "028" {
|
||||
failed = false
|
||||
}
|
||||
}
|
||||
|
||||
if failed {
|
||||
t.Fatal("failed")
|
||||
}
|
||||
}
|
||||
|
||||
func TestGetReasons(t *testing.T) {
|
||||
result, err := dadaapi.GetCancelReasons()
|
||||
if err != nil {
|
||||
t.Fatal(err.Error())
|
||||
}
|
||||
// baseapi.SugarLogger.Debug(result)
|
||||
failed := true
|
||||
for _, reason := range result {
|
||||
if reason.ID == 1 {
|
||||
failed = false
|
||||
}
|
||||
}
|
||||
|
||||
if failed {
|
||||
t.Fatal("failed")
|
||||
}
|
||||
}
|
||||
|
||||
func TestAddOrder(t *testing.T) {
|
||||
result, err := dadaapi.AddOrder(testOrder, nil)
|
||||
if err != nil {
|
||||
t.Fatal(err.Error())
|
||||
}
|
||||
baseapi.SugarLogger.Debug(result)
|
||||
}
|
||||
|
||||
func TestReaddOrder(t *testing.T) {
|
||||
result, err := dadaapi.ReaddOrder(testOrder, nil)
|
||||
if err != nil {
|
||||
t.Fatal(err.Error())
|
||||
}
|
||||
baseapi.SugarLogger.Debug(result)
|
||||
}
|
||||
|
||||
func TestCancelOrder(t *testing.T) {
|
||||
result, err := dadaapi.CancelOrder("234242342", ReasonIDClientDontWantItAnymore, "")
|
||||
if err != nil {
|
||||
t.Fatal(err.Error())
|
||||
}
|
||||
baseapi.SugarLogger.Debug(result)
|
||||
}
|
||||
Reference in New Issue
Block a user