接口测试
This commit is contained in:
parent
59ed0e621a
commit
a6d674cf1e
@ -30,6 +30,7 @@ func Execute() {
|
|||||||
func init() {
|
func init() {
|
||||||
RootCmd.AddCommand(runCmd)
|
RootCmd.AddCommand(runCmd)
|
||||||
initLog()
|
initLog()
|
||||||
|
robot.InitDb()
|
||||||
}
|
}
|
||||||
|
|
||||||
var account = flag.String("account", "", "登录账号")
|
var account = flag.String("account", "", "登录账号")
|
||||||
|
@ -6,7 +6,9 @@ package robot
|
|||||||
// 理这类问题,这个助手可以返回合适的数据,作为输入参数。
|
// 理这类问题,这个助手可以返回合适的数据,作为输入参数。
|
||||||
|
|
||||||
type assistant struct {
|
type assistant struct {
|
||||||
//TODO
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func NewAssistant() *assistant {
|
||||||
|
return &assistant{}
|
||||||
|
}
|
||||||
|
|
||||||
|
38
cmd/robot/db.go
Normal file
38
cmd/robot/db.go
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
package robot
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
"log"
|
||||||
|
"sync"
|
||||||
|
|
||||||
|
"go.mongodb.org/mongo-driver/mongo"
|
||||||
|
"go.mongodb.org/mongo-driver/mongo/options"
|
||||||
|
)
|
||||||
|
|
||||||
|
var dbOnce sync.Once
|
||||||
|
var mgoCli *mongo.Client
|
||||||
|
var mgoDb *mongo.Database
|
||||||
|
|
||||||
|
func InitDb() {
|
||||||
|
dbOnce.Do(func() {
|
||||||
|
var err error
|
||||||
|
// Set client options
|
||||||
|
clientOptions := options.Client().ApplyURI("mongodb://admin:123456@10.0.0.9:27018")
|
||||||
|
|
||||||
|
// Connect to MongoDB
|
||||||
|
mgoCli, err = mongo.Connect(context.TODO(), clientOptions)
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
log.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check the connection
|
||||||
|
err = mgoCli.Ping(context.TODO(), nil)
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
log.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
mgoDb = mgoCli.Database("dreamfactory")
|
||||||
|
})
|
||||||
|
}
|
@ -42,21 +42,7 @@ var (
|
|||||||
// r := rsp.(*pb.HeroInfoResp)
|
// r := rsp.(*pb.HeroInfoResp)
|
||||||
// fmt.Printf("%v\n", r)
|
// fmt.Printf("%v\n", r)
|
||||||
// },
|
// },
|
||||||
next: func(robot *Robot, rsp proto.Message) {
|
|
||||||
tcs := []*TestCase{
|
|
||||||
{
|
|
||||||
desc: "觉醒",
|
|
||||||
mainType: string(comm.ModuleHero),
|
|
||||||
subType: hero.Awaken,
|
|
||||||
req: &pb.HeroAwakenReq{
|
|
||||||
HeroObjID: heroId,
|
|
||||||
},
|
|
||||||
rsp: &pb.HeroAwakenResp{},
|
|
||||||
//enabled: true,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
robot.addBuilders(tcs)
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
tcs = append(tcs, tc)
|
tcs = append(tcs, tc)
|
||||||
}
|
}
|
||||||
@ -105,39 +91,36 @@ var (
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
rsp: &pb.HeroStrengthenUpStarResp{},
|
rsp: &pb.HeroStrengthenUpStarResp{},
|
||||||
enabled: true,
|
// enabled: true,
|
||||||
}
|
}
|
||||||
tcs = append(tcs, tc)
|
tcs = append(tcs, tc)
|
||||||
}
|
|
||||||
robot.addBuilders(tcs)
|
tc2 := &TestCase{
|
||||||
}
|
|
||||||
},
|
|
||||||
}, {
|
|
||||||
desc: "英雄列表",
|
|
||||||
mainType: string(comm.ModuleHero),
|
|
||||||
subType: hero.HeroSubTypeList,
|
|
||||||
req: &pb.HeroListReq{},
|
|
||||||
rsp: &pb.HeroListResp{},
|
|
||||||
enabled: true,
|
|
||||||
next: func(robot *Robot, rsp proto.Message) {
|
|
||||||
if r, ok := rsp.(*pb.HeroListResp); ok {
|
|
||||||
tcs := []*TestCase{}
|
|
||||||
// selHero := r.List[0] //选中的英雄
|
|
||||||
for _, v := range r.List {
|
|
||||||
heroId := v.Id
|
|
||||||
tc := &TestCase{
|
|
||||||
desc: "英雄升级",
|
desc: "英雄升级",
|
||||||
mainType: string(comm.ModuleHero),
|
mainType: string(comm.ModuleHero),
|
||||||
subType: hero.StrengthenUplv,
|
subType: hero.StrengthenUplv,
|
||||||
req: &pb.HeroStrengthenUplvReq{
|
req: &pb.HeroStrengthenUplvReq{
|
||||||
HeroObjID: heroId,
|
HeroObjID: heroId,
|
||||||
ExpCardID: "62d124700625e43054ba307d",
|
ExpCards: map[string]int32{
|
||||||
Amount: 1,
|
"62d124700625e43054ba307d": 1,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
rsp: &pb.HeroStrengthenUplvResp{},
|
rsp: &pb.HeroStrengthenUplvResp{},
|
||||||
enabled: true,
|
enabled: true,
|
||||||
}
|
}
|
||||||
tcs = append(tcs, tc)
|
tcs = append(tcs, tc2)
|
||||||
|
|
||||||
|
tc3 := &TestCase{
|
||||||
|
desc: "觉醒",
|
||||||
|
mainType: string(comm.ModuleHero),
|
||||||
|
subType: hero.Awaken,
|
||||||
|
req: &pb.HeroAwakenReq{
|
||||||
|
HeroObjID: heroId,
|
||||||
|
},
|
||||||
|
rsp: &pb.HeroAwakenResp{},
|
||||||
|
//enabled: true,
|
||||||
|
}
|
||||||
|
tcs = append(tcs, tc3)
|
||||||
}
|
}
|
||||||
robot.addBuilders(tcs)
|
robot.addBuilders(tcs)
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package robot
|
package robot
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
"go_dreamfactory/comm"
|
"go_dreamfactory/comm"
|
||||||
"go_dreamfactory/modules/task"
|
"go_dreamfactory/modules/task"
|
||||||
"go_dreamfactory/pb"
|
"go_dreamfactory/pb"
|
||||||
@ -15,32 +16,39 @@ var (
|
|||||||
mainType: string(comm.ModuleTask),
|
mainType: string(comm.ModuleTask),
|
||||||
subType: task.TaskSubTypeList,
|
subType: task.TaskSubTypeList,
|
||||||
req: &pb.TaskListReq{
|
req: &pb.TaskListReq{
|
||||||
TaskTag: int32(comm.TASK_DAILY),
|
//设置任务类型
|
||||||
|
TaskTag: int32(comm.TASK_DAILY), //每天任务
|
||||||
|
// TaskTag: int32(comm.TASK_WEEKLY), //周任务
|
||||||
|
// TaskTag: int32(comm.TASK_ACHIEVE),
|
||||||
},
|
},
|
||||||
rsp: &pb.TaskListResp{},
|
rsp: &pb.TaskListResp{},
|
||||||
// print: func(rsp proto.Message) {
|
print: func(rsp proto.Message) {
|
||||||
// out := rsp.(*pb.TaskListResp)
|
out := rsp.(*pb.TaskListResp)
|
||||||
// for _, v := range out.List {
|
for _, v := range out.List {
|
||||||
// fmt.Printf("%v \n", v)
|
fmt.Printf("%v \n", v)
|
||||||
// }
|
}
|
||||||
// },
|
},
|
||||||
// enabled: true,
|
enabled: true,
|
||||||
next: func(robot *Robot, rsp proto.Message) {
|
next: func(robot *Robot, rsp proto.Message) {
|
||||||
tcs := []*TestCase{}
|
tcs := []*TestCase{}
|
||||||
if _, ok := rsp.(*pb.TaskListResp); ok {
|
if v, ok := rsp.(*pb.TaskListResp); ok {
|
||||||
}
|
for _, tt := range v.List {
|
||||||
robot.addBuilders(tcs)
|
tc := &TestCase{
|
||||||
},
|
|
||||||
}, {
|
|
||||||
desc: "领取任务奖励",
|
desc: "领取任务奖励",
|
||||||
mainType: string(comm.ModuleTask),
|
mainType: string(comm.ModuleTask),
|
||||||
subType: task.TaskSubTypeReceive,
|
subType: task.TaskSubTypeReceive,
|
||||||
req: &pb.TaskReceiveReq{
|
req: &pb.TaskReceiveReq{
|
||||||
TaskTag: int32(comm.TASK_DAILY),
|
TaskTag: int32(comm.TASK_DAILY),
|
||||||
Id: "62c5681374c83911207fa265",
|
Id: tt.Id,
|
||||||
},
|
},
|
||||||
rsp: &pb.TaskReceiveResp{},
|
rsp: &pb.TaskReceiveResp{},
|
||||||
// enabled: true,
|
enabled: true,
|
||||||
|
}
|
||||||
|
tcs = append(tcs, tc)
|
||||||
|
}
|
||||||
|
robot.addBuilders(tcs)
|
||||||
|
}
|
||||||
|
},
|
||||||
}, {
|
}, {
|
||||||
desc: "活跃度",
|
desc: "活跃度",
|
||||||
mainType: string(comm.ModuleTask),
|
mainType: string(comm.ModuleTask),
|
||||||
@ -55,7 +63,7 @@ var (
|
|||||||
mainType: string(comm.ModuleTask),
|
mainType: string(comm.ModuleTask),
|
||||||
subType: task.TaskSubTypeActiveReceive,
|
subType: task.TaskSubTypeActiveReceive,
|
||||||
req: &pb.TaskActiveReceiveReq{
|
req: &pb.TaskActiveReceiveReq{
|
||||||
Id: "62c676d57deea8b9af8884fb",
|
Id: "62d4c90c3ccfe7787f317975",
|
||||||
TaskTag: int32(comm.TASK_DAILY),
|
TaskTag: int32(comm.TASK_DAILY),
|
||||||
},
|
},
|
||||||
rsp: &pb.TaskActiveReceiveResp{},
|
rsp: &pb.TaskActiveReceiveResp{},
|
||||||
|
@ -24,19 +24,31 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.TaskReceiveReq)
|
|||||||
|
|
||||||
resp := &pb.TaskReceiveResp{}
|
resp := &pb.TaskReceiveResp{}
|
||||||
defer func() {
|
defer func() {
|
||||||
err := session.SendMsg(string(this.moduleTask.GetType()), TaskSubTypeList, resp)
|
err := session.SendMsg(string(this.moduleTask.GetType()), TaskSubTypeReceive, resp)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
code = pb.ErrorCode_SystemError
|
code = pb.ErrorCode_SystemError
|
||||||
}
|
}
|
||||||
utils.TraceFunc(session.GetUserId(), string(this.moduleTask.GetType()), TaskSubTypeList, req, resp)
|
utils.TraceFunc(session.GetUserId(), string(this.moduleTask.GetType()), TaskSubTypeReceive, req, resp)
|
||||||
}()
|
}()
|
||||||
userTask := this.moduleTask.modelTask.getUserTask(session.GetUserId(), comm.TaskTag(req.TaskTag), req.Id)
|
userTask := this.moduleTask.modelTask.getUserTask(session.GetUserId(), comm.TaskTag(req.TaskTag), req.Id)
|
||||||
if userTask != nil {
|
if userTask != nil {
|
||||||
|
//判断是否完成
|
||||||
|
if userTask.Status == 0{
|
||||||
|
code = pb.ErrorCode_TaskHandle
|
||||||
|
return
|
||||||
|
}
|
||||||
|
//判断任务是否领取
|
||||||
|
if userTask.Received == 1 {
|
||||||
|
code = pb.ErrorCode_TaskReceived
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
conf, err := this.moduleTask.configure.getTaskById(userTask.TaskId)
|
conf, err := this.moduleTask.configure.getTaskById(userTask.TaskId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Errorf("get task config err:%v", err)
|
log.Errorf("get task config err:%v", err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
//奖励
|
//奖励
|
||||||
if code = this.moduleTask.CheckConsumeRes(session.GetUserId(), conf.Reword, true); code != pb.ErrorCode_Success {
|
if code = this.moduleTask.CheckConsumeRes(session.GetUserId(), conf.Reword, true); code != pb.ErrorCode_Success {
|
||||||
return
|
return
|
||||||
|
@ -70,7 +70,10 @@ func (this *ModelTaskActive) getUserActive(uid, id string, taskTag comm.TaskTag)
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (this *ModelTaskActive) updateReceive(uid, id string, taskTag comm.TaskTag, data map[string]interface{}) error {
|
func (this *ModelTaskActive) updateReceive(uid, id string, taskTag comm.TaskTag, data map[string]interface{}) (err error) {
|
||||||
|
if len(data) == 0 {
|
||||||
|
return
|
||||||
|
}
|
||||||
return this.moduleTask.modelTaskActive.ChangeList(swapKey(uid, taskTag), id, data)
|
return this.moduleTask.modelTaskActive.ChangeList(swapKey(uid, taskTag), id, data)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -87,4 +87,5 @@ enum ErrorCode {
|
|||||||
TaskActiveInit = 1606; //初始化活跃度失败
|
TaskActiveInit = 1606; //初始化活跃度失败
|
||||||
TaskActiveNofound = 1604; //未找到用户活跃度配置
|
TaskActiveNofound = 1604; //未找到用户活跃度配置
|
||||||
TaskActiveNoenough = 1605; //活跃值未达标
|
TaskActiveNoenough = 1605; //活跃值未达标
|
||||||
|
TaskNoFinished = 1606; //任务未完成
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user