288 lines
8.9 KiB
Go
288 lines
8.9 KiB
Go
package ui
|
|
|
|
import (
|
|
"fmt"
|
|
"go_dreamfactory/cmd/v2/model"
|
|
"go_dreamfactory/cmd/v2/service/observer"
|
|
"go_dreamfactory/cmd/v2/ui/formview"
|
|
"go_dreamfactory/comm"
|
|
"go_dreamfactory/lego/core"
|
|
"go_dreamfactory/modules/friend"
|
|
"go_dreamfactory/modules/hero"
|
|
"go_dreamfactory/modules/task"
|
|
"go_dreamfactory/modules/user"
|
|
"go_dreamfactory/pb"
|
|
|
|
"fyne.io/fyne/v2"
|
|
"google.golang.org/protobuf/proto"
|
|
)
|
|
|
|
type MyCaseView interface {
|
|
Init(obs observer.Observer, w fyne.Window)
|
|
CreateView(t *model.TestCase) fyne.CanvasObject
|
|
Load()
|
|
}
|
|
|
|
// 1 注册接口测试的表单试图
|
|
var (
|
|
viewRegister = map[string]MyCaseView{
|
|
// gm
|
|
ff(comm.ModuleGM, "cmd"): &formview.BingoView{},
|
|
//user
|
|
ff(comm.ModuleUser, user.UserSubTypeModifyName): &formview.UserModifynameView{},
|
|
//task
|
|
ff(comm.ModuleTask, task.TaskSubTypeList): &formview.TaskListView{},
|
|
ff(comm.ModuleTask, task.TaskSubTypeReceive): &formview.TaskReceiveView{},
|
|
ff(comm.ModuleTask, task.TaskSubTypeActiveList): &formview.TaskActiveListView{},
|
|
ff(comm.ModuleTask, task.TaskSubTypeActiveReceive): &formview.TaskActiveReceiveView{},
|
|
// hero
|
|
ff(comm.ModuleHero, hero.HeroSubTypeList): &formview.HeroListView{},
|
|
ff(comm.ModuleHero, hero.StrengthenUplv): &formview.HeroStrengthenUplvView{},
|
|
ff(comm.ModuleHero, hero.StrengthenUpStar): &formview.HeroStrengthenUpStarView{},
|
|
//friend
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeList): &formview.FriendListView{},
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeApply): &formview.FriendApplyView{},
|
|
// ff(comm.ModuleFriend, friend.FriendSubTypeApplyList): &formview.FriendApplyListView{},
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeAgree): &formview.FriendAgreeView{},
|
|
// ff(comm.ModuleFriend, friend.FriendSubTypeRefuse): &formview.FriendRefuseView{},
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeBlacklist): &formview.FriendBlacklistView{},
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeAddBlack): &formview.FriendAddBlackView{},
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeDelBlack): &formview.FriendDelblackView{},
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeSearch): &formview.FriendSearchView{},
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeZanList): &formview.FriendZanView{},
|
|
}
|
|
)
|
|
|
|
// 2 添加导航菜单
|
|
var (
|
|
CaseIndex = map[string][]string{
|
|
"": {
|
|
string(comm.ModuleGM),
|
|
string(comm.ModuleUser),
|
|
string(comm.ModuleHero),
|
|
string(comm.ModuleTask),
|
|
string(comm.ModuleFriend),
|
|
},
|
|
"gm": {ff(comm.ModuleGM, "cmd")},
|
|
"user": {
|
|
ff(comm.ModuleUser, user.UserSubTypeModifyName),
|
|
},
|
|
"hero": {
|
|
ff(comm.ModuleHero, hero.HeroSubTypeList),
|
|
ff(comm.ModuleHero, hero.StrengthenUplv),
|
|
ff(comm.ModuleHero, hero.StrengthenUpStar),
|
|
},
|
|
"task": {
|
|
ff(comm.ModuleTask, task.TaskSubTypeList),
|
|
ff(comm.ModuleTask, task.TaskSubTypeReceive),
|
|
ff(comm.ModuleTask, task.TaskSubTypeActiveList),
|
|
ff(comm.ModuleTask, task.TaskSubTypeActiveReceive),
|
|
},
|
|
"friend": {
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeList),
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeApply),
|
|
// ff(comm.ModuleFriend, friend.FriendSubTypeApplyList),
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeAgree),
|
|
// ff(comm.ModuleFriend, friend.FriendSubTypeRefuse),
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeBlacklist),
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeAddBlack),
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeDelBlack),
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeSearch),
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeZanList),
|
|
},
|
|
}
|
|
)
|
|
|
|
// 3 注册测试用例
|
|
var (
|
|
CaseNav = map[string]*model.TestCase{
|
|
// gm
|
|
"gm": {
|
|
MainType: string(comm.ModuleGM),
|
|
Enabled: true,
|
|
},
|
|
ff(comm.ModuleGM, "cmd"): {
|
|
Desc: "eg. bingo:item,10001,1 bingo:attr,gold,1000000",
|
|
MainType: string(comm.ModuleGM),
|
|
SubType: "cmd",
|
|
Req: &pb.GMCmdReq{},
|
|
Rsp: &pb.GMCmdResp{},
|
|
Enabled: true,
|
|
},
|
|
// user
|
|
"user": {
|
|
MainType: "user",
|
|
Enabled: true,
|
|
},
|
|
"user.modifyname": {
|
|
Desc: "用户昵称修改",
|
|
MainType: "user",
|
|
SubType: "modifyname",
|
|
Req: &pb.UserModifynameReq{},
|
|
Rsp: &pb.UserModifynameResp{},
|
|
Print: func(rsp proto.Message) string {
|
|
r := rsp.(*pb.UserModifynameResp)
|
|
return fmt.Sprintf("Uid:%s count:%d", r.Uid, r.Count)
|
|
},
|
|
Enabled: true,
|
|
},
|
|
// task
|
|
"task": {
|
|
MainType: "task",
|
|
Enabled: true,
|
|
},
|
|
"task.list": {
|
|
Desc: "用户任务列表",
|
|
MainType: "task",
|
|
SubType: "list",
|
|
Req: &pb.TaskListReq{},
|
|
Rsp: &pb.TaskListResp{},
|
|
Enabled: true,
|
|
},
|
|
"task.receive": {
|
|
Desc: "用户任务领取",
|
|
MainType: "task",
|
|
SubType: "receive",
|
|
Enabled: true,
|
|
},
|
|
ff(comm.ModuleTask, task.TaskSubTypeActiveList): {
|
|
Desc: "用户活跃度列表",
|
|
MainType: string(comm.ModuleTask),
|
|
SubType: task.TaskSubTypeActiveList,
|
|
Req: &pb.TaskActiveListReq{},
|
|
Rsp: &pb.TaskActiveListResp{},
|
|
Enabled: true,
|
|
},
|
|
ff(comm.ModuleTask, task.TaskSubTypeActiveReceive): {
|
|
Desc: "用户活跃度领取",
|
|
MainType: string(comm.ModuleTask),
|
|
SubType: task.TaskSubTypeActiveReceive,
|
|
Req: &pb.TaskActiveReceiveReq{},
|
|
Rsp: &pb.TaskActiveReceiveResp{},
|
|
Enabled: true,
|
|
},
|
|
// hero
|
|
string(comm.ModuleHero): {
|
|
MainType: string(comm.ModuleHero),
|
|
Enabled: true,
|
|
},
|
|
ff(comm.ModuleHero, hero.HeroSubTypeList): {
|
|
Desc: "英雄列表",
|
|
MainType: string(comm.ModuleHero),
|
|
SubType: hero.HeroSubTypeList,
|
|
Req: &pb.HeroListReq{},
|
|
Rsp: &pb.HeroListResp{},
|
|
// Print: func(rsp proto.Message) string{
|
|
// out := rsp.(*pb.HeroListResp)
|
|
// for i, v := range out.List {
|
|
// fmt.Printf("%d- %v\n", (i + 1), v)
|
|
// }
|
|
// },
|
|
Enabled: true,
|
|
},
|
|
ff(comm.ModuleHero, hero.StrengthenUplv): {
|
|
Desc: "英雄等级升级",
|
|
MainType: string(comm.ModuleHero),
|
|
SubType: hero.StrengthenUplv,
|
|
Req: &pb.HeroStrengthenUplvReq{},
|
|
Rsp: &pb.HeroStrengthenUplvResp{},
|
|
Enabled: true,
|
|
},
|
|
ff(comm.ModuleHero, hero.StrengthenUpStar): {
|
|
Desc: "英雄星级升级",
|
|
MainType: string(comm.ModuleHero),
|
|
SubType: hero.StrengthenUpStar,
|
|
Req: &pb.HeroStrengthenUpStarReq{},
|
|
Rsp: &pb.HeroStrengthenUpStarResp{},
|
|
Enabled: true,
|
|
},
|
|
//friend
|
|
string(comm.ModuleFriend): {
|
|
MainType: string(comm.ModuleFriend),
|
|
Enabled: true,
|
|
},
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeList): {
|
|
Desc: "好友列表",
|
|
MainType: string(comm.ModuleFriend),
|
|
SubType: friend.FriendSubTypeList,
|
|
Req: &pb.FriendListReq{},
|
|
Rsp: &pb.FriendListResp{},
|
|
Enabled: true,
|
|
},
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeApply): {
|
|
Desc: "好友申请",
|
|
MainType: string(comm.ModuleFriend),
|
|
SubType: friend.FriendSubTypeApply,
|
|
Req: &pb.FriendApplyReq{},
|
|
Rsp: &pb.FriendApplyResp{},
|
|
Enabled: true,
|
|
},
|
|
// ff(comm.ModuleFriend, friend.FriendSubTypeApplyList): {
|
|
// Desc: "申请列表",
|
|
// MainType: string(comm.ModuleFriend),
|
|
// SubType: friend.FriendSubTypeApplyList,
|
|
// Req: &pb.FriendApplyListReq{},
|
|
// Rsp: &pb.FriendApplyListResp{},
|
|
// Enabled: true,
|
|
// },
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeBlacklist): {
|
|
Desc: "黑名单列表",
|
|
MainType: string(comm.ModuleFriend),
|
|
SubType: friend.FriendSubTypeBlacklist,
|
|
Req: &pb.FriendBlackListReq{},
|
|
Rsp: &pb.FriendBlackListResp{},
|
|
Enabled: true,
|
|
},
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeAddBlack): {
|
|
Desc: "添加黑名单",
|
|
MainType: string(comm.ModuleFriend),
|
|
SubType: friend.FriendSubTypeAddBlack,
|
|
Req: &pb.FriendBlackAddReq{},
|
|
Rsp: &pb.FriendBlackAddResp{},
|
|
Enabled: true,
|
|
},
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeDelBlack): {
|
|
Desc: "删除黑名单",
|
|
MainType: string(comm.ModuleFriend),
|
|
SubType: friend.FriendSubTypeDelBlack,
|
|
Req: &pb.FriendDelBlackReq{},
|
|
Rsp: &pb.FriendDelBlackResp{},
|
|
Enabled: true,
|
|
},
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeAgree): {
|
|
Desc: "好友申请审批",
|
|
MainType: string(comm.ModuleFriend),
|
|
SubType: friend.FriendSubTypeAgree,
|
|
Req: &pb.FriendAgreeReq{},
|
|
Rsp: &pb.FriendAgreeResp{},
|
|
Enabled: true,
|
|
},
|
|
// ff(comm.ModuleFriend, friend.FriendSubTypeRefuse): {
|
|
// Desc: "拒绝",
|
|
// MainType: string(comm.ModuleFriend),
|
|
// SubType: friend.FriendSubTypeRefuse,
|
|
// Req: &pb.FriendRefuseReq{},
|
|
// Rsp: &pb.FriendRefuseResp{},
|
|
// Enabled: true,
|
|
// },
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeSearch): {
|
|
Desc: "搜索好友",
|
|
MainType: string(comm.ModuleFriend),
|
|
SubType: friend.FriendSubTypeSearch,
|
|
Req: &pb.FriendSearchReq{},
|
|
Rsp: &pb.FriendSearchResp{},
|
|
Enabled: true,
|
|
},
|
|
ff(comm.ModuleFriend, friend.FriendSubTypeZanList): {
|
|
Desc: "点赞好友",
|
|
MainType: string(comm.ModuleFriend),
|
|
SubType: friend.FriendSubTypeZanList,
|
|
Enabled: true,
|
|
},
|
|
}
|
|
)
|
|
|
|
func ff(s1 core.M_Modules, s2 string) string {
|
|
return fmt.Sprintf("%s.%s", s1, s2)
|
|
}
|