dreamfactory_cmd/cmd/v2/service/assistant_test.go
2023-06-09 21:58:02 +08:00

63 lines
1.2 KiB
Go

package service
import (
"go_dreamfactory/cmd/v2/lib"
"go_dreamfactory/cmd/v2/lib/common"
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"testing"
"time"
"github.com/Pallinder/go-randomdata"
"google.golang.org/protobuf/proto"
)
func loginReq() ([]byte, error) {
head := &pb.UserMessage{MainType: "user", SubType: "login"}
sid := "dfz"
account := randomdata.SillyName()
head.Sec = common.BuildSecStr(sid, account)
if comm.ProtoMarshal(&pb.UserLoginReq{
Sid: sid,
Account: account,
}, head) {
data, err := proto.Marshal(head)
if err != nil {
return nil, err
}
return data, nil
}
return nil, nil
}
func TestStart(t *testing.T) {
wsAddr := "ws://10.0.0.238:7891/gateway"
h, err := NewWsCli(wsAddr, 2*time.Second)
if err != nil {
panic(err)
}
b, err := loginReq()
if err != nil {
t.Fatal(err)
}
h.SetReq(b, false)
param := lib.ParamMgr{
Caller: h,
Timeout: 50 * time.Millisecond,
Lps: uint32(1),
Duration: 5 * time.Second,
ResultCh: make(chan *lib.CallResult, 50),
}
a, err := lib.NewAssistant(nil, param)
if err != nil {
t.Fatalf("AI助手初始化错误: %v", err)
t.FailNow()
}
a.Start()
a.ShowResult()
}