statsinfo_test.go 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. package dbdata
  2. import (
  3. "encoding/json"
  4. "testing"
  5. "github.com/stretchr/testify/assert"
  6. )
  7. func TestStatsInfo(t *testing.T) {
  8. ast := assert.New(t)
  9. preIpData()
  10. defer closeIpdata()
  11. ast.True(StatsInfoIns.ValidAction("online"))
  12. ast.False(StatsInfoIns.ValidAction("diskio"))
  13. ast.True(StatsInfoIns.ValidScope("30d"))
  14. ast.False(StatsInfoIns.ValidScope("60d"))
  15. up := uint32(100)
  16. down := uint32(300)
  17. upGroups := map[int]uint32{1: up}
  18. downGroups := map[int]uint32{1: down}
  19. numGroups := map[int]int{1: 5}
  20. // online
  21. numData, _ := json.Marshal(numGroups)
  22. so := StatsOnline{Num: 1, NumGroups: string(numData)}
  23. // network
  24. upData, _ := json.Marshal(upGroups)
  25. downData, _ := json.Marshal(downGroups)
  26. sn := StatsNetwork{Up: up, Down: down, UpGroups: string(upData), DownGroups: string(downData)}
  27. // cpu
  28. sc := StatsCpu{Percent: 0.3}
  29. // mem
  30. sm := StatsMem{Percent: 24.50}
  31. StatsInfoIns.SetRealTime("online", so)
  32. StatsInfoIns.GetRealTime("online")
  33. StatsInfoIns.SaveStatsInfo(so, sn, sc, sm)
  34. var err error
  35. _, err = StatsInfoIns.GetData("online", "1h")
  36. ast.Nil(err)
  37. _, err = StatsInfoIns.GetData("network", "1h")
  38. ast.Nil(err)
  39. _, err = StatsInfoIns.GetData("cpu", "1h")
  40. ast.Nil(err)
  41. _, err = StatsInfoIns.GetData("mem", "1h")
  42. ast.Nil(err)
  43. }