liuxiaolong
2021-07-20 58d904a328c0d849769b483e901a0be9426b8209
api/bhsgo/bhome_node_test.go
@@ -1,11 +1,12 @@
package bhsgo
import (
   bh "bhshmq/proto/source/bhome_msg"
   "fmt"
   "testing"
   "time"
   "unsafe"
   bh "basic.com/valib/bhshmq.git/proto/source/bhome_msg"
)
func ServerCallback(src unsafe.Pointer, proc_id *string, req *bh.MsgRequestTopic) {
@@ -25,11 +26,25 @@
   proc_id := "test_proc"
   proc := bh.ProcInfo{}
   proc.ProcId = []byte(proc_id)
   fmt.Println("proc id: ", proc.ProcId)
   reply := bh.MsgCommonReply{}
   StartWorker(ClientCallback, ServerCallback, SubDataCallback)
   defer Cleanup()
   r := Register(&proc, &reply, 1000)
   if r {
      fmt.Println("register ok")
   } else {
      fmt.Println("register failed")
      return
   }
   r = Unregister(&proc, &reply, 1000)
   if r {
      fmt.Println("Unregister ok")
   } else {
      fmt.Println("Unregister failed")
   }
   r = Register(&proc, &reply, 1000)
   if r {
      fmt.Println("register ok")
   } else {
@@ -37,6 +52,8 @@
      t.Log("register error")
      return
   }
   StartWorker(ClientCallback, ServerCallback, SubDataCallback)
   r = HeartbeatEasy(1000)
   if r {
@@ -53,6 +70,7 @@
   } else {
      fmt.Println("reg topics failed")
   }
   req := bh.MsgRequestTopic{}
   time.Sleep(time.Second * 1)
   req.Topic = []byte("topic0")
@@ -64,8 +82,16 @@
   pid := ""
   rr := bh.MsgRequestTopicReply{}
   for i := 0; i < 10000; i++ {
      if Request(&req, &pid, &rr, 3000) {
   dest := bh.BHAddress{}
   queryProc := bh.MsgQueryProc{}
   queryReply := bh.MsgQueryProcReply{}
   QueryProcs(&dest, &queryProc, &queryReply, 3000)
   fmt.Println("query result:", string(queryReply.ProcList[0].Proc.ProcId))
   for i := 0; i < 10; i++ {
      if Request(&dest, &req, &pid, &rr, 3000) {
         fmt.Println("server:" + pid + ", reply:" + string(rr.Data))
      } else {
         e, s := GetLastError()