Merge "Fixes IPv6 static route addition"
This commit is contained in:
commit
35020ce1fd
|
@ -29,8 +29,13 @@ LOG = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class AddRouterRoute(forms.SelfHandlingForm):
|
class AddRouterRoute(forms.SelfHandlingForm):
|
||||||
destination = forms.IPField(label=_("Destination CIDR"), mask=True)
|
destination = forms.IPField(
|
||||||
nexthop = forms.IPField(label=_("Next Hop"))
|
version=forms.IPv4 | forms.IPv6,
|
||||||
|
label=_("Destination CIDR"),
|
||||||
|
mask=True)
|
||||||
|
nexthop = forms.IPField(
|
||||||
|
version=forms.IPv4 | forms.IPv6,
|
||||||
|
label=_("Next Hop"))
|
||||||
failure_url = 'horizon:project:routers:detail'
|
failure_url = 'horizon:project:routers:detail'
|
||||||
|
|
||||||
def handle(self, request, data, **kwargs):
|
def handle(self, request, data, **kwargs):
|
||||||
|
|
|
@ -1076,9 +1076,12 @@ class RouterRouteTestCase(object):
|
||||||
|
|
||||||
@test.create_mocks({api.neutron: ('router_get',
|
@test.create_mocks({api.neutron: ('router_get',
|
||||||
'router_update')})
|
'router_update')})
|
||||||
def _test_router_addrouterroute(self, raise_error=False):
|
def _test_router_addrouterroute(self, ipv6=False, raise_error=False):
|
||||||
pre_router = self.routers_with_routes.first()
|
pre_router = self.routers_with_routes.first()
|
||||||
post_router = copy.deepcopy(pre_router)
|
post_router = copy.deepcopy(pre_router)
|
||||||
|
if ipv6:
|
||||||
|
route = {'nexthop': 'fdb6:b88a:488e::5', 'destination': '2002::/64'}
|
||||||
|
else:
|
||||||
route = {'nexthop': '10.0.0.5', 'destination': '40.0.1.0/24'}
|
route = {'nexthop': '10.0.0.5', 'destination': '40.0.1.0/24'}
|
||||||
post_router['routes'].insert(0, route)
|
post_router['routes'].insert(0, route)
|
||||||
self.mock_router_get.return_value = pre_router
|
self.mock_router_get.return_value = pre_router
|
||||||
|
@ -1112,6 +1115,16 @@ class RouterRouteTestCase(object):
|
||||||
self._test_router_addrouterroute(raise_error=True)
|
self._test_router_addrouterroute(raise_error=True)
|
||||||
self.assertMessageCount(error=1)
|
self.assertMessageCount(error=1)
|
||||||
|
|
||||||
|
def test_router_addrouteripv6route(self):
|
||||||
|
if self.DASHBOARD == 'project':
|
||||||
|
self._test_router_addrouterroute(ipv6=True)
|
||||||
|
self.assertMessageCount(success=1)
|
||||||
|
|
||||||
|
def test_router_addrouteripv6route_exception(self):
|
||||||
|
if self.DASHBOARD == 'project':
|
||||||
|
self._test_router_addrouterroute(ipv6=True, raise_error=True)
|
||||||
|
self.assertMessageCount(error=1)
|
||||||
|
|
||||||
@test.create_mocks({api.neutron: ('router_get',
|
@test.create_mocks({api.neutron: ('router_get',
|
||||||
'router_update',
|
'router_update',
|
||||||
'network_get',
|
'network_get',
|
||||||
|
|
Loading…
Reference in New Issue