reader_test.go 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package cgroup
  2. import (
  3. "encoding/json"
  4. "testing"
  5. "github.com/stretchr/testify/assert"
  6. )
  7. const (
  8. path = "/docker/b29faf21b7eff959f64b4192c34d5d67a707fe8561e9eaa608cb27693fba4242"
  9. id = "b29faf21b7eff959f64b4192c34d5d67a707fe8561e9eaa608cb27693fba4242"
  10. )
  11. func TestReaderGetStats(t *testing.T) {
  12. reader, err := NewReader("testdata/docker", true)
  13. if err != nil {
  14. t.Fatal(err)
  15. }
  16. stats, err := reader.GetStatsForProcess(985)
  17. if err != nil {
  18. t.Fatal(err)
  19. }
  20. if stats == nil {
  21. t.Fatal("no cgroup stats found")
  22. }
  23. assert.Equal(t, id, stats.ID)
  24. assert.Equal(t, id, stats.BlockIO.ID)
  25. assert.Equal(t, id, stats.CPU.ID)
  26. assert.Equal(t, id, stats.CPUAccounting.ID)
  27. assert.Equal(t, id, stats.Memory.ID)
  28. assert.Equal(t, path, stats.Path)
  29. assert.Equal(t, path, stats.BlockIO.Path)
  30. assert.Equal(t, path, stats.CPU.Path)
  31. assert.Equal(t, path, stats.CPUAccounting.Path)
  32. assert.Equal(t, path, stats.Memory.Path)
  33. json, err := json.MarshalIndent(stats, "", " ")
  34. if err != nil {
  35. t.Fatal(err)
  36. }
  37. t.Log(string(json))
  38. }