package test import ( "app.yhyue.com/moapp/MessageCenter/rpc/internal/config" "context" "database/sql" "fmt" "log" "testing" "time" "app.yhyue.com/moapp/MessageCenter/rpc/messageclient" "github.com/tal-tech/go-zero/core/discov" "github.com/tal-tech/go-zero/zrpc" ) func Test_SendMsg(t *testing.T) { ctx, _ := context.WithTimeout(context.Background(), 5*time.Second) std := messageclient.NewMessage(zrpc.MustNewClient(zrpc.RpcClientConf{Etcd: discov.EtcdConf{Hosts: []string{"192.168.3.240:2379"}, Key: "message.rpc"}})) req := &messageclient.SendMsgRequest{ Appid: "10000", ReceiveUserId: "6042120adca8410f1ef2ec84", ReceiveName: "rjj", SendUserId: "5fa3bb6d059e75bcdf8dab6a", SendName: "xzh", Title: "超级订阅", Content: "444", Link: "", CiteId: int64(3), MsgType: int64(4), } res, err := std.SendUserMsg(ctx, req) log.Println("err ", err, res) } func Test_FindUserMsg(t *testing.T) { ctx, _ := context.WithTimeout(context.Background(), 5*time.Second) std := messageclient.NewMessage(zrpc.MustNewClient(zrpc.RpcClientConf{Etcd: discov.EtcdConf{Hosts: []string{"127.0.0.1:2379"}, Key: "message.rpc"}})) req := &messageclient.FindUserMsgReq{ Appid: "10000", ReceiveUserId: "6042120adca8410f1ef2ec84", UserId: "5fa3bb6d059e75bcdf8dab6a", OffSet: int64(0), PageSize: int64(10), MsgType: -1, Read: -1, } res, err := std.FindUserMsg(ctx, req) log.Println("err ", err, res.Code, res.Message, res.Count, res.Data) } func Test_ClassUnread(t *testing.T) { ctx, _ := context.WithTimeout(context.Background(), 5*time.Second) std := messageclient.NewMessage(zrpc.MustNewClient(zrpc.RpcClientConf{Etcd: discov.EtcdConf{Hosts: []string{"127.0.0.1:2379"}, Key: "message.rpc"}})) req := &messageclient.GetClassUnreadCountReq{ Appid: "10000", UserId: "6042120adca8410f1ef2ec84", MsgType: 4, } res, err := std.GetClassUnreadCount(ctx, req) log.Println("err ", err, res) } func Test_InsertMsg(t *testing.T) { url := fmt.Sprintf(config.ConfigJson.Mysql) db, err := sql.Open("mysql", url) if err != nil { panic(err.Error()) } // 设置最大打开的连接数,默认值为0,表示不限制。 db.SetMaxOpenConns(5) // 设置最大闲置的连接数 db.SetMaxIdleConns(5) // 设置连接的最大生命周期,默认连接总是可重用。 // 不能保证连接将在池中存在完整的一小时;很可能由于某种原因连接将变得不可用,并且在此之前自动关闭. // 这不是空闲超时。连接将在第1次创建后1小时后过期,而不是1小时后变成空闲。 // 理论上,ConnMaxLifetime越短,从0开始创建连接的频率就越高。 db.SetConnMaxLifetime(time.Hour) defer db.Close() stmt, err := db.Prepare("select * from student where id = ?") if err != nil { panic(err.Error()) } defer stmt.Close() rows, err := stmt.Query(9) if err != nil { panic(err.Error()) } defer rows.Close() for rows.Next() { var id string var name string var unit string err := rows.Scan(&id, &name, &unit) if err != nil { panic(err.Error()) } fmt.Println(fmt.Sprintf("%s, %s, %s", id, name, unit)) } } func Test_SaveMsg(t *testing.T) { ctx, _ := context.WithTimeout(context.Background(), 5*time.Second) std := messageclient.NewMessage(zrpc.MustNewClient(zrpc.RpcClientConf{Etcd: discov.EtcdConf{Hosts: []string{"127.0.0.1:2379"}, Key: "message.rpc"}})) req := &messageclient.MultipleSaveMsgReq{ Appid: "10000", MsgType: 4, Title: "11", Content: "22", Link: "", CiteId: 0, SendUserId: "111", SendName: "222", UserNames: ",", UserIds: "111,2222", } res, err := std.MultipleSaveMsg(ctx, req) log.Println("err ", err, res) } //repeated user userInfo = 1; //string sendUserId = 2; //发送方用户ID //string sendName = 3; //发送方用户名 //string title = 4; //主题 //string content = 5; //内容 //int64 msgType = 6; //消息类型 1:客服 2:系统通知 3:营销 4:用户会话 //string link = 7; //跳转链接 //int64 citeId = 8; //引用id //string appid = 9; /