cpu_test.go 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. package cgroup
  2. import (
  3. "path"
  4. "testing"
  5. "github.com/stretchr/testify/assert"
  6. )
  7. func TestCgroup_CpuStat(t *testing.T) {
  8. cgRoot = "fixtures/cgroup"
  9. cg, _ := NewFromProcessCgroupFile(path.Join("fixtures/proc/100/cgroup"))
  10. s, err := cg.CpuStat()
  11. assert.Nil(t, err)
  12. assert.Equal(t, 0., s.LimitCores)
  13. assert.Equal(t, 26778.913419246, s.UsageSeconds)
  14. cg, _ = NewFromProcessCgroupFile(path.Join("fixtures/proc/200/cgroup"))
  15. s, err = cg.CpuStat()
  16. assert.Nil(t, err)
  17. assert.Equal(t, 1.5, s.LimitCores)
  18. assert.Equal(t, 254005.032764376, s.ThrottledTimeSeconds)
  19. cg, _ = NewFromProcessCgroupFile(path.Join("fixtures/proc/400/cgroup"))
  20. s, err = cg.CpuStat()
  21. assert.Nil(t, err)
  22. assert.Equal(t, 0.1, s.LimitCores)
  23. assert.Equal(t, 0.363166, s.ThrottledTimeSeconds)
  24. assert.Equal(t, 3795.681254, s.UsageSeconds)
  25. cg, _ = NewFromProcessCgroupFile(path.Join("fixtures/proc/500/cgroup"))
  26. s, err = cg.CpuStat()
  27. assert.Nil(t, err)
  28. assert.Equal(t, 0., s.LimitCores)
  29. assert.Equal(t, 0., s.ThrottledTimeSeconds)
  30. assert.Equal(t, 5531.521992, s.UsageSeconds)
  31. }