CloudServer_test.go 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  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. }
  77. return &res
  78. }
  79. func TestForPageChangeData(t *testing.T) {
  80. t.Log(1)
  81. p := PageModel{
  82. Total: 1,
  83. Rows: []interface{}{
  84. GateWay4GModel{AccessToken: "xx"}, GateWay4GModel{MqttServer: "xx123"},
  85. },
  86. }
  87. var dd []GateWay4GModel
  88. p.ChangeData(&dd)
  89. t.Log(dd)
  90. }
  91. func TestConf(t *testing.T) {
  92. f, _ := os.OpenFile("cloudconf.json", os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644)
  93. defer f.Close()
  94. jsonStu, _ := json.Marshal(GetCloudConfig())
  95. f.WriteString(string(jsonStu))
  96. log.Info("SysConfig saved!")
  97. }