CloudServer_test.go 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. package cloudserver
  2. import (
  3. "encoding/json"
  4. "os"
  5. "testing"
  6. "github.com/yuguorong/go/log"
  7. )
  8. const (
  9. REQ_AMGW_URL = "/platform/dev/get-4G-gateway-list"
  10. REQ_AMMETER_URL = "/platform/dev/get-ammeter-list"
  11. )
  12. //4G 网关
  13. type GateWay4GModel struct {
  14. AccessToken string `json:"accessToken"`
  15. MqttServer string `json:"mqttserver"`
  16. Id string `json:"id"`
  17. Name string `json:"name"`
  18. }
  19. type AmmeterModel struct {
  20. Id string `json:"id"`
  21. DevName string `json:"devName"`
  22. Code string `json:"code"`
  23. DutSn string `json:"dutSn"`
  24. Address string `json:"address"`
  25. Protocol string `json:"protocol"`
  26. GwDevId string `json:"gwDevId"`
  27. }
  28. func TestForGetAmmeterGwList(t *testing.T) {
  29. // t.Error(1)
  30. conf := getTestConf()
  31. cloudServer := GetCloudServer(conf)
  32. gwList := []GateWay4GModel{}
  33. err := cloudServer.GetClientData(REQ_AMGW_URL, &gwList, nil)
  34. if err != nil || len(gwList) == 0 {
  35. t.Error("test for getAmmeter error,please check the gw data in server")
  36. }
  37. // for i := 0; i < len(gwList); i++ {
  38. // d := gwList[i]
  39. // log.Println("query ammeter by gw", d)
  40. // ammeters := cloudServer.GetAmmeters(d.Id)
  41. // log.Println("gw ammeters:", ammeters)
  42. // }
  43. }
  44. func TestForGetAmmeterList(t *testing.T) {
  45. // t.Error(1)
  46. conf := getTestConf()
  47. cloudServer := GetCloudServer(conf)
  48. gwList := []GateWay4GModel{}
  49. err := cloudServer.GetClientData(REQ_AMGW_URL, &gwList, nil)
  50. if err != nil || len(gwList) == 0 {
  51. t.Error("test for getAmmeter error,please check the gw data in server")
  52. }
  53. checkRes := false
  54. for i := 0; i < len(gwList); i++ {
  55. d := gwList[i]
  56. param := map[string]string{
  57. "gwDevId": d.Id,
  58. }
  59. listMeters := []AmmeterModel{}
  60. err := cloudServer.GetClientData(REQ_AMMETER_URL, &listMeters, &param)
  61. if err == nil && !checkRes && len(listMeters) > 1 {
  62. log.Info(listMeters)
  63. checkRes = true
  64. break
  65. }
  66. }
  67. if !checkRes {
  68. t.Error("test for getAmmeter error,please check the ammeter in your server ")
  69. }
  70. }
  71. func getTestConf() *CloudServerConf {
  72. res := CloudServerConf{
  73. AppId: "fvWmjGCU",
  74. AppSecret: "054e7df0881eff8328858092f9e8ac0b0f356676",
  75. ServerUrl: "https://test-admin.pacom.cn",
  76. Route: "gw4g-cloudserver",
  77. }
  78. return &res
  79. }
  80. func TestForPageChangeData(t *testing.T) {
  81. t.Log(1)
  82. p := PageModel{
  83. Total: 1,
  84. Rows: []interface{}{
  85. GateWay4GModel{AccessToken: "xx"}, GateWay4GModel{MqttServer: "xx123"},
  86. },
  87. }
  88. var dd []GateWay4GModel
  89. p.ChangeData(&dd)
  90. t.Log(dd)
  91. }
  92. func TestConf(t *testing.T) {
  93. f, _ := os.OpenFile("cloudconf.json", os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644)
  94. defer f.Close()
  95. jsonStu, _ := json.Marshal(GetCloudConfig())
  96. f.WriteString(string(jsonStu))
  97. log.Info("SysConfig saved!")
  98. }