1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- package internal
- import (
- "fmt"
- "testing"
- "github.com/stretchr/testify/assert"
- )
- func TestRunningInUserNS(t *testing.T) {
- // should be false in docker
- assert.False(t, runningInUserNS())
- }
- func TestCgroupV1(t *testing.T) {
- if isCgroup2UnifiedMode() {
- cg, err := currentCgroupV1()
- assert.NoError(t, err)
- _, err = cg.cpus()
- assert.Error(t, err)
- _, err = cg.cpuPeriodUs()
- assert.Error(t, err)
- _, err = cg.cpuQuotaUs()
- assert.Error(t, err)
- _, err = cg.usageAllCpus()
- assert.Error(t, err)
- }
- }
- func TestParseUint(t *testing.T) {
- tests := []struct {
- input string
- want uint64
- err error
- }{
- {"0", 0, nil},
- {"123", 123, nil},
- {"-1", 0, nil},
- {"-18446744073709551616", 0, nil},
- {"foo", 0, fmt.Errorf("cgroup: bad int format: foo")},
- }
- for _, tt := range tests {
- got, err := parseUint(tt.input)
- assert.Equal(t, tt.err, err)
- assert.Equal(t, tt.want, got)
- }
- }
- func TestParseUints(t *testing.T) {
- tests := []struct {
- input string
- want []uint64
- err error
- }{
- {"", nil, nil},
- {"1,2,3", []uint64{1, 2, 3}, nil},
- {"1-3", []uint64{1, 2, 3}, nil},
- {"1-3,5,7-9", []uint64{1, 2, 3, 5, 7, 8, 9}, nil},
- {"foo", nil, fmt.Errorf("cgroup: bad int format: foo")},
- {"1-bar", nil, fmt.Errorf("cgroup: bad int list format: 1-bar")},
- {"bar-3", nil, fmt.Errorf("cgroup: bad int list format: bar-3")},
- {"3-1", nil, fmt.Errorf("cgroup: bad int list format: 3-1")},
- }
- for _, tt := range tests {
- got, err := parseUints(tt.input)
- assert.Equal(t, tt.err, err)
- assert.Equal(t, tt.want, got)
- }
- }
|