-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathquotactl_linux_test.go
74 lines (61 loc) · 1.8 KB
/
quotactl_linux_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
package fsquota
import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestDqpblk_FromLimits(t *testing.T) {
t.Run("InfoOnly", func(t *testing.T) {
l := &Limits{}
dq := dqblkFromLimits(l)
assert.EqualValues(t, 0, dq.dqbValid)
})
t.Run("FileLimits", func(t *testing.T) {
l := &Limits{}
l.Files.SetHard(1024)
l.Files.SetSoft(1000)
dq := dqblkFromLimits(l)
assert.EqualValues(t, qifILimits, dq.dqbValid)
assert.EqualValues(t, 1024, dq.dqbIHardlimit)
assert.EqualValues(t, 1000, dq.dqbISoftlimit)
})
t.Run("ByteLimits", func(t *testing.T) {
l := &Limits{}
l.Bytes.SetHard(2048)
l.Bytes.SetSoft(1024)
dq := dqblkFromLimits(l)
assert.EqualValues(t, qifBLimits, dq.dqbValid)
assert.EqualValues(t, 2, dq.dqbBHardlimit)
assert.EqualValues(t, 1, dq.dqbBSoftlimit)
})
t.Run("Combined", func(t *testing.T) {
l := &Limits{}
l.Bytes.SetHard(2048)
l.Bytes.SetSoft(1024)
l.Files.SetHard(1024)
l.Files.SetSoft(1000)
dq := dqblkFromLimits(l)
assert.EqualValues(t, qifBLimits|qifILimits, dq.dqbValid)
assert.EqualValues(t, 2, dq.dqbBHardlimit)
assert.EqualValues(t, 1, dq.dqbBSoftlimit)
assert.EqualValues(t, 2, dq.dqbBHardlimit)
assert.EqualValues(t, 1, dq.dqbBSoftlimit)
})
}
func TestDqpblk_ToInfo(t *testing.T) {
t.Run("Empty", func(t *testing.T) {
dq := &dqblk{}
info := dq.toInfo()
require.NotNil(t, info)
assert.EqualValues(t, 0, info.FilesUsed)
assert.EqualValues(t, 0, info.BytesUsed)
require.NotNil(t, info.Files.soft)
require.NotNil(t, info.Files.hard)
assert.EqualValues(t, 0, *info.Files.soft)
assert.EqualValues(t, 0, *info.Files.hard)
require.NotNil(t, info.Bytes.soft)
require.NotNil(t, info.Bytes.hard)
assert.EqualValues(t, 0, *info.Bytes.soft)
assert.EqualValues(t, 0, *info.Bytes.hard)
})
}