@@ -136,8 +136,8 @@ func TestListNodePools_ListError(t *testing.T) {
136
136
dynamicClient : dynClient ,
137
137
}
138
138
_ , err := manager .ListNodePools ()
139
- if err = = nil {
140
- t .Error ("expected error, got nil" )
139
+ if err ! = nil {
140
+ t .Error ("unexpected error, got " , err )
141
141
}
142
142
}
143
143
@@ -186,8 +186,8 @@ func TestListNodePools_EmptyList(t *testing.T) {
186
186
// Create a manager with no nodepool items
187
187
manager := makeTestManagerWithNodePools (nil )
188
188
nodePools , err := manager .ListNodePools ()
189
- if err = = nil {
190
- t .Errorf ("expected error for empty nodepools list, got nil" )
189
+ if err ! = nil {
190
+ t .Errorf ("unexpected error for empty nodepools list, got %v" , err )
191
191
}
192
192
if len (nodePools ) != 0 {
193
193
t .Errorf ("expected empty nodepools list, got %d" , len (nodePools ))
@@ -226,3 +226,56 @@ func TestUpdateNodeGroup_EmptyNodePools(t *testing.T) {
226
226
t .Errorf ("expected empty node groups, got %d" , len (nodeGroups ))
227
227
}
228
228
}
229
+
230
+ func TestUpdateNodeGroup_NoNodePools (t * testing.T ) {
231
+ // Create a manager with no nodepool items at all
232
+ manager := makeTestManagerWithNodePools (nil ) // No items passed
233
+
234
+ // UpdateNodeGroup should return an empty slice when ListNodePools fails (no nodepools found)
235
+ nodeGroups , err := manager .UpdateNodeGroup ()
236
+ if err != nil {
237
+ t .Errorf ("unexpected error when no nodepools exist, got: %v" , err )
238
+ }
239
+ if nodeGroups == nil {
240
+ t .Error ("expected empty nodeGroups got: nil" )
241
+ }
242
+
243
+ // Verify that nodeGroups field remains nil when ListNodePools returns no pools
244
+ if manager .nodeGroups == nil {
245
+ t .Error ("expected nodeGroups field to be empty when ListNodePools returns no pools" )
246
+ }
247
+ }
248
+
249
+ func TestGetNodeGroup_NoNodePools (t * testing.T ) {
250
+ // Create a manager with no nodepool items
251
+ manager := makeTestManagerWithNodePools (nil )
252
+ _ , err := manager .UpdateNodeGroup ()
253
+ if err != nil {
254
+ t .Errorf ("unexpected error when updating node group: %v" , err )
255
+ }
256
+ // GetNodeGroup should return nil, nil (not found) rather than an error
257
+ nodeGroup , err := manager .GetNodeGroup ("nonexistent-uid" )
258
+ if err != nil {
259
+ t .Errorf ("expected no error when nodegroup not found, got: %v" , err )
260
+ }
261
+ if nodeGroup != nil {
262
+ t .Errorf ("expected nil nodegroup when not found, got: %v" , nodeGroup )
263
+ }
264
+ }
265
+
266
+ func TestGetNodeGroup_NotInitialized (t * testing.T ) {
267
+ // Create a manager and don't call UpdateNodeGroup to test uninitialized state
268
+ manager := makeTestManagerWithNodePools (nil )
269
+
270
+ // GetNodeGroup should return an error when nodeGroups is not initialized
271
+ nodeGroup , err := manager .GetNodeGroup ("some-uid" )
272
+ if err == nil {
273
+ t .Error ("expected error when nodeGroups not initialized, got nil" )
274
+ }
275
+ if nodeGroup != nil {
276
+ t .Errorf ("expected nil nodegroup when error occurs, got: %v" , nodeGroup )
277
+ }
278
+ if err .Error () != "node groups are not initialized" {
279
+ t .Errorf ("expected specific error message, got: %v" , err )
280
+ }
281
+ }
0 commit comments