send_test.go 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. package test
  2. import (
  3. "app.yhyue.com/moapp/MessageCenter/rpc/internal/config"
  4. "context"
  5. "database/sql"
  6. "fmt"
  7. "log"
  8. "testing"
  9. "time"
  10. "app.yhyue.com/moapp/MessageCenter/rpc/messageclient"
  11. "github.com/tal-tech/go-zero/core/discov"
  12. "github.com/tal-tech/go-zero/zrpc"
  13. )
  14. func Test_SendMsg(t *testing.T) {
  15. ctx, _ := context.WithTimeout(context.Background(), 5*time.Second)
  16. std := messageclient.NewMessage(zrpc.MustNewClient(zrpc.RpcClientConf{Etcd: discov.EtcdConf{Hosts: []string{"192.168.3.240:2379"}, Key: "message.rpc"}}))
  17. req := &messageclient.SendMsgRequest{
  18. Appid: "10000",
  19. ReceiveUserId: "6042120adca8410f1ef2ec84",
  20. ReceiveName: "rjj",
  21. SendUserId: "5fa3bb6d059e75bcdf8dab6a",
  22. SendName: "xzh",
  23. Title: "超级订阅",
  24. Content: "444",
  25. Link: "",
  26. CiteId: int64(3),
  27. MsgType: int64(4),
  28. }
  29. res, err := std.SendUserMsg(ctx, req)
  30. log.Println("err ", err, res)
  31. }
  32. func Test_FindUserMsg(t *testing.T) {
  33. ctx, _ := context.WithTimeout(context.Background(), 5*time.Second)
  34. std := messageclient.NewMessage(zrpc.MustNewClient(zrpc.RpcClientConf{Etcd: discov.EtcdConf{Hosts: []string{"127.0.0.1:2379"}, Key: "message.rpc"}}))
  35. req := &messageclient.FindUserMsgReq{
  36. Appid: "10000",
  37. ReceiveUserId: "6042120adca8410f1ef2ec84",
  38. UserId: "5fa3bb6d059e75bcdf8dab6a",
  39. OffSet: int64(0),
  40. PageSize: int64(10),
  41. MsgType: -1,
  42. Read: -1,
  43. }
  44. res, err := std.FindUserMsg(ctx, req)
  45. log.Println("err ", err, res.Code, res.Message, res.Count, res.Data)
  46. }
  47. func Test_ClassUnread(t *testing.T) {
  48. ctx, _ := context.WithTimeout(context.Background(), 5*time.Second)
  49. std := messageclient.NewMessage(zrpc.MustNewClient(zrpc.RpcClientConf{Etcd: discov.EtcdConf{Hosts: []string{"127.0.0.1:2379"}, Key: "message.rpc"}}))
  50. req := &messageclient.GetClassUnreadCountReq{
  51. Appid: "10000",
  52. UserId: "6042120adca8410f1ef2ec84",
  53. MsgType: 4,
  54. }
  55. res, err := std.GetClassUnreadCount(ctx, req)
  56. log.Println("err ", err, res)
  57. }
  58. func Test_InsertMsg(t *testing.T) {
  59. url := fmt.Sprintf(config.ConfigJson.Mysql)
  60. db, err := sql.Open("mysql", url)
  61. if err != nil {
  62. panic(err.Error())
  63. }
  64. // 设置最大打开的连接数,默认值为0,表示不限制。
  65. db.SetMaxOpenConns(5)
  66. // 设置最大闲置的连接数
  67. db.SetMaxIdleConns(5)
  68. // 设置连接的最大生命周期,默认连接总是可重用。
  69. // 不能保证连接将在池中存在完整的一小时;很可能由于某种原因连接将变得不可用,并且在此之前自动关闭.
  70. // 这不是空闲超时。连接将在第1次创建后1小时后过期,而不是1小时后变成空闲。
  71. // 理论上,ConnMaxLifetime越短,从0开始创建连接的频率就越高。
  72. db.SetConnMaxLifetime(time.Hour)
  73. defer db.Close()
  74. stmt, err := db.Prepare("select * from student where id = ?")
  75. if err != nil {
  76. panic(err.Error())
  77. }
  78. defer stmt.Close()
  79. rows, err := stmt.Query(9)
  80. if err != nil {
  81. panic(err.Error())
  82. }
  83. defer rows.Close()
  84. for rows.Next() {
  85. var id string
  86. var name string
  87. var unit string
  88. err := rows.Scan(&id, &name, &unit)
  89. if err != nil {
  90. panic(err.Error())
  91. }
  92. fmt.Println(fmt.Sprintf("%s, %s, %s", id, name, unit))
  93. }
  94. }
  95. func Test_SaveMsg(t *testing.T) {
  96. ctx, _ := context.WithTimeout(context.Background(), 5*time.Second)
  97. std := messageclient.NewMessage(zrpc.MustNewClient(zrpc.RpcClientConf{Etcd: discov.EtcdConf{Hosts: []string{"127.0.0.1:2379"}, Key: "message.rpc"}}))
  98. req := &messageclient.MultipleSaveMsgReq{
  99. Appid: "10000",
  100. MsgType: 4,
  101. Title: "11",
  102. Content: "22",
  103. Link: "",
  104. CiteId: 0,
  105. SendUserId: "111",
  106. SendName: "222",
  107. UserNames: ",",
  108. UserIds: "111,2222",
  109. }
  110. res, err := std.MultipleSaveMsg(ctx, req)
  111. log.Println("err ", err, res)
  112. }
  113. //repeated user userInfo = 1;
  114. //string sendUserId = 2; //发送方用户ID
  115. //string sendName = 3; //发送方用户名
  116. //string title = 4; //主题
  117. //string content = 5; //内容
  118. //int64 msgType = 6; //消息类型 1:客服 2:系统通知 3:营销 4:用户会话
  119. //string link = 7; //跳转链接
  120. //int64 citeId = 8; //引用id
  121. //string appid = 9; /