MCPcopy Create free account
hub / github.com/CrunchyData/postgres-operator / TestSetHugePages

Function TestSetHugePages

internal/postgres/huge_pages_test.go:18–98  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

16)
17
18func TestSetHugePages(t *testing.T) {
19 t.Run("hugepages not set at all", func(t *testing.T) {
20 cluster := new(v1beta1.PostgresCluster)
21
22 cluster.Spec.InstanceSets = []v1beta1.PostgresInstanceSetSpec{{
23 Name: "test-instance1",
24 Replicas: initialize.Int32(1),
25 Resources: corev1.ResourceRequirements{
26 Limits: corev1.ResourceList{},
27 },
28 }}
29
30 params := NewParameterSet()
31 SetHugePages(cluster, params)
32
33 assert.Equal(t, params.Has("huge_pages"), true)
34 assert.Equal(t, params.Value("huge_pages"), "off")
35 })
36
37 t.Run("hugepages quantity not set", func(t *testing.T) {
38 cluster := new(v1beta1.PostgresCluster)
39
40 emptyQuantity, _ := resource.ParseQuantity("")
41 cluster.Spec.InstanceSets = []v1beta1.PostgresInstanceSetSpec{{
42 Name: "test-instance1",
43 Replicas: initialize.Int32(1),
44 Resources: corev1.ResourceRequirements{
45 Limits: corev1.ResourceList{
46 corev1.ResourceHugePagesPrefix + "2Mi": emptyQuantity,
47 },
48 },
49 }}
50
51 params := NewParameterSet()
52 SetHugePages(cluster, params)
53
54 assert.Equal(t, params.Has("huge_pages"), true)
55 assert.Equal(t, params.Value("huge_pages"), "off")
56 })
57
58 t.Run("hugepages set to zero", func(t *testing.T) {
59 cluster := new(v1beta1.PostgresCluster)
60
61 cluster.Spec.InstanceSets = []v1beta1.PostgresInstanceSetSpec{{
62 Name: "test-instance1",
63 Replicas: initialize.Int32(1),
64 Resources: corev1.ResourceRequirements{
65 Limits: corev1.ResourceList{
66 corev1.ResourceHugePagesPrefix + "2Mi": resource.MustParse("0Mi"),
67 },
68 },
69 }}
70
71 params := NewParameterSet()
72 SetHugePages(cluster, params)
73
74 assert.Equal(t, params.Has("huge_pages"), true)
75 assert.Equal(t, params.Value("huge_pages"), "off")

Callers

nothing calls this directly

Calls 6

HasMethod · 0.95
ValueMethod · 0.95
Int32Function · 0.92
NewParameterSetFunction · 0.85
SetHugePagesFunction · 0.85
EqualMethod · 0.45

Tested by

no test coverage detected