@@ -329,6 +329,12 @@ func TestDetermineIngressMode(t *testing.T) {
329
329
faKeDiscovery : newFakeDiscovery ("1" , "18" , nil ),
330
330
expectedMode : IngressModeExtensions ,
331
331
},
332
+ {
333
+ name : "will return networking mode if server minor version has '+' suffix, e.g. 1.19+" ,
334
+ apiVersion : "" ,
335
+ faKeDiscovery : newFakeDiscovery ("1" , "19+" , nil ),
336
+ expectedMode : IngressModeNetworking ,
337
+ },
332
338
{
333
339
name : "will return error if fails to retrieve server version" ,
334
340
apiVersion : "" ,
@@ -358,6 +364,28 @@ func TestDetermineIngressMode(t *testing.T) {
358
364
Err : errors .New ("invalid syntax" ),
359
365
},
360
366
},
367
+ {
368
+ name : "will return error if fails to parse minor version with '+' suffix, e.g. 1.wrong+" ,
369
+ apiVersion : "" ,
370
+ faKeDiscovery : newFakeDiscovery ("1" , "wrong+" , nil ),
371
+ expectedMode : 0 ,
372
+ expectedError : & strconv.NumError {
373
+ Func : "Atoi" ,
374
+ Num : "wrong" ,
375
+ Err : errors .New ("invalid syntax" ),
376
+ },
377
+ },
378
+ {
379
+ name : "will return error if fails to parse minor version with just '+'" ,
380
+ apiVersion : "" ,
381
+ faKeDiscovery : newFakeDiscovery ("1" , "+" , nil ),
382
+ expectedMode : 0 ,
383
+ expectedError : & strconv.NumError {
384
+ Func : "Atoi" ,
385
+ Num : "" ,
386
+ Err : errors .New ("invalid syntax" ),
387
+ },
388
+ },
361
389
}
362
390
for _ , c := range cases {
363
391
c := c // necessary to ensure all test cases are executed when running in parallel mode
0 commit comments