manager_test.go 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. package main
  2. import (
  3. "sparrow/pkg/rpcs"
  4. "testing"
  5. )
  6. func TestDeviceManager(t *testing.T) {
  7. mgr := NewDeviceManager("localhost:6379")
  8. deviceid := uint64(123456)
  9. args1 := rpcs.ArgsGenerateDeviceAccessToken{
  10. Id: deviceid,
  11. }
  12. reply1 := rpcs.ReplyGenerateDeviceAccessToken{}
  13. err := mgr.GenerateDeviceAccessToken(args1, &reply1)
  14. if err != nil {
  15. t.Fatal(err)
  16. }
  17. token := reply1.AccessToken
  18. args2 := rpcs.ArgsValidateDeviceAccessToken{
  19. Id: deviceid,
  20. AccessToken: token,
  21. }
  22. reply2 := rpcs.ReplyValidateDeviceAccessToken{}
  23. err = mgr.ValidateDeviceAccessToken(args2, &reply2)
  24. if err != nil {
  25. t.Fatal(err)
  26. }
  27. args3 := rpcs.ArgsGetOnline{
  28. Id: deviceid,
  29. ClientIP: "",
  30. AccessRPCHost: "",
  31. HeartbeatInterval: 10,
  32. }
  33. reply3 := rpcs.ReplyGetOnline{}
  34. err = mgr.GetOnline(args3, &reply3)
  35. if err != nil {
  36. t.Fatal(err)
  37. }
  38. args4 := rpcs.ArgsHeartBeat{
  39. Id: deviceid,
  40. }
  41. reply4 := rpcs.ReplyHeartBeat{}
  42. err = mgr.HeartBeat(args4, &reply4)
  43. if err != nil {
  44. t.Fatal(err)
  45. }
  46. args5 := rpcs.ArgsGetDeviceStatus{
  47. Id: deviceid,
  48. }
  49. reply5 := rpcs.ReplyGetDeviceStatus{}
  50. err = mgr.GetDeviceStatus(args5, &reply5)
  51. if err != nil {
  52. t.Fatal(err)
  53. }
  54. t.Log(reply5)
  55. args6 := rpcs.ArgsGetOffline{
  56. Id: deviceid,
  57. }
  58. reply6 := rpcs.ReplyGetOffline{}
  59. err = mgr.GetOffline(args6, &reply6)
  60. if err != nil {
  61. t.Fatal(err)
  62. }
  63. }