Skip to content

Commit a548688

Browse files
committed
fix: add feature-gate is disabled unit tests
1 parent 0393497 commit a548688

File tree

1 file changed

+31
-11
lines changed

1 file changed

+31
-11
lines changed

plugin/pkg/admission/storage/storageobjectinuseprotection/admission_test.go

Lines changed: 31 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -73,64 +73,84 @@ func TestAdmit(t *testing.T) {
7373
vacWithFinalizer.Finalizers = []string{volumeutil.VACProtectionFinalizer}
7474

7575
tests := []struct {
76-
name string
77-
resource schema.GroupVersionResource
78-
object runtime.Object
79-
expectedObject runtime.Object
80-
namespace string
76+
name string
77+
resource schema.GroupVersionResource
78+
object runtime.Object
79+
expectedObject runtime.Object
80+
namespace string
81+
enableVacFeatureGate bool
8182
}{
8283
{
8384
"persistentvolumeclaims: create -> add finalizer",
8485
api.SchemeGroupVersion.WithResource("persistentvolumeclaims"),
8586
claim,
8687
claimWithFinalizer,
8788
claim.Namespace,
89+
false,
8890
},
8991
{
9092
"persistentvolumeclaims: finalizer already exists -> no new finalizer",
9193
api.SchemeGroupVersion.WithResource("persistentvolumeclaims"),
9294
claimWithFinalizer,
9395
claimWithFinalizer,
9496
claimWithFinalizer.Namespace,
97+
false,
9598
},
9699
{
97100
"persistentvolumes: create -> add finalizer",
98101
api.SchemeGroupVersion.WithResource("persistentvolumes"),
99102
pv,
100103
pvWithFinalizer,
101104
pv.Namespace,
105+
false,
102106
},
103107
{
104108
"persistentvolumes: finalizer already exists -> no new finalizer",
105109
api.SchemeGroupVersion.WithResource("persistentvolumes"),
106110
pvWithFinalizer,
107111
pvWithFinalizer,
108112
pvWithFinalizer.Namespace,
113+
false,
109114
},
110115
{
111-
"volumeattributesclasses: create -> add finalizer",
116+
"volumeattributesclasses VacFeatureGate disabled: create -> no finalizer added",
112117
storageapi.SchemeGroupVersion.WithResource("volumeattributesclasses"),
113118
vac,
119+
vac,
120+
vac.Namespace,
121+
false,
122+
},
123+
{
124+
"volumeattributesclasses VacFeatureGate disabled: finalizer already exists -> no new finalizer",
125+
storageapi.SchemeGroupVersion.WithResource("volumeattributesclasses"),
126+
vacWithFinalizer,
114127
vacWithFinalizer,
115128
vac.Namespace,
129+
false,
116130
},
117131
{
118-
"volumeattributesclasses: finalizer already exists -> no new finalizer",
132+
"volumeattributesclasses VacFeatureGate enabled: create -> add finalizer",
133+
storageapi.SchemeGroupVersion.WithResource("volumeattributesclasses"),
134+
vac,
135+
vacWithFinalizer,
136+
vac.Namespace,
137+
true,
138+
},
139+
{
140+
"volumeattributesclasses VacFeatureGate enabled: finalizer already exists -> no new finalizer",
119141
storageapi.SchemeGroupVersion.WithResource("volumeattributesclasses"),
120142
vacWithFinalizer,
121143
vacWithFinalizer,
122144
vac.Namespace,
145+
true,
123146
},
124147
}
125148

126149
for _, test := range tests {
127150
t.Run(test.name, func(t *testing.T) {
128151
ctrl := newPlugin()
129152

130-
// Enable feature gate for tests with VolumeAttributesClass
131-
if test.object.GetObjectKind().GroupVersionKind().Kind == "VolumeAttributesClass" {
132-
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.VolumeAttributesClass, true)
133-
}
153+
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.VolumeAttributesClass, test.enableVacFeatureGate)
134154

135155
obj := test.object.DeepCopyObject()
136156
attrs := admission.NewAttributesRecord(

0 commit comments

Comments
 (0)