Skip to content

Commit b52a8e2

Browse files
committed
Added unit tests for CreateRoute
1 parent b8d7d12 commit b52a8e2

1 file changed

Lines changed: 34 additions & 0 deletions

File tree

cloud/linode/route_controller_test.go

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -381,6 +381,40 @@ func TestCreateRoute(t *testing.T) {
381381
assert.NoError(t, err)
382382
})
383383

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+
384418
addressRange1 := "10.10.10.0/24"
385419
routesInVPC := []linodego.VPCIP{
386420
{

0 commit comments

Comments
 (0)