@@ -381,6 +381,40 @@ func TestCreateRoute(t *testing.T) {
381
381
assert .NoError (t , err )
382
382
})
383
383
384
+ v6Route := & cloudprovider.Route {
385
+ Name : "route2" ,
386
+ TargetNode : types .NodeName (name ),
387
+ DestinationCIDR : "fd00::/64" ,
388
+ }
389
+ t .Run ("should return no error if given a route with an IPv6 address" , func (t * testing.T ) {
390
+ ctrl := gomock .NewController (t )
391
+ defer ctrl .Finish ()
392
+ client := mocks .NewMockClient (ctrl )
393
+ instanceCache := newInstances (client )
394
+ routeController , err := newRoutes (client , instanceCache )
395
+ require .NoError (t , err )
396
+
397
+ err = routeController .CreateRoute (ctx , "dummy" , "dummy" , v6Route )
398
+ assert .NoError (t , err )
399
+ })
400
+
401
+ badV6Route := & cloudprovider.Route {
402
+ Name : "route2" ,
403
+ TargetNode : types .NodeName (name ),
404
+ DestinationCIDR : ":/64" ,
405
+ }
406
+ t .Run ("should return error if IP address is not v4 or v6" , func (t * testing.T ) {
407
+ ctrl := gomock .NewController (t )
408
+ defer ctrl .Finish ()
409
+ client := mocks .NewMockClient (ctrl )
410
+ instanceCache := newInstances (client )
411
+ routeController , err := newRoutes (client , instanceCache )
412
+ require .NoError (t , err )
413
+
414
+ err = routeController .CreateRoute (ctx , "dummy" , "dummy" , badV6Route )
415
+ assert .Error (t , err )
416
+ })
417
+
384
418
addressRange1 := "10.10.10.0/24"
385
419
routesInVPC := []linodego.VPCIP {
386
420
{
0 commit comments