Fix network stack gateway properties
Change-Id: I792f9aaf2d45193a01260de065cfca8f678ca4e2
This commit is contained in:
parent
4eb547348c
commit
17ef6dcb32
|
@ -137,18 +137,42 @@ class NetworkStackFixture(heat.HeatStackFixture):
|
|||
for fixed_ip in fixed_ips)
|
||||
|
||||
@property
|
||||
def ipv4_gateway_port_details(self):
|
||||
return neutron.find_port(
|
||||
fixed_ips='subnet_id=' + self.ipv4_subnet_id,
|
||||
device_id=self.gateway_id,
|
||||
network_id=self.network_id)
|
||||
def ipv4_gateway_ports(self):
|
||||
return neutron.list_ports(fixed_ips='subnet_id=' + self.ipv4_subnet_id,
|
||||
device_id=self.gateway_id,
|
||||
network_id=self.network_id)
|
||||
|
||||
@property
|
||||
def ipv6_gateway_port_details(self):
|
||||
return neutron.find_port(
|
||||
fixed_ips='subnet_id=' + self.ipv6_subnet_id,
|
||||
device_id=self.gateway_id,
|
||||
network_id=self.network_id)
|
||||
def ipv6_gateway_ports(self):
|
||||
return neutron.list_ports(fixed_ips='subnet_id=' + self.ipv6_subnet_id,
|
||||
device_id=self.gateway_id,
|
||||
network_id=self.network_id)
|
||||
|
||||
@property
|
||||
def external_geteway_ports(self):
|
||||
return neutron.list_ports(device_id=self.gateway_id,
|
||||
network_id=self.gateway_network_id)
|
||||
|
||||
@property
|
||||
def ipv4_gateway_addresses(self):
|
||||
ips = tobiko.Selection()
|
||||
for port in self.ipv4_gateway_ports:
|
||||
ips.extend(neutron.list_port_ip_addresses(port))
|
||||
return ips
|
||||
|
||||
@property
|
||||
def ipv6_gateway_addresses(self):
|
||||
ips = tobiko.Selection()
|
||||
for port in self.ipv6_gateway_ports:
|
||||
ips.extend(neutron.list_port_ip_addresses(port))
|
||||
return ips
|
||||
|
||||
@property
|
||||
def external_gateway_addresses(self):
|
||||
ips = tobiko.Selection()
|
||||
for port in self.external_geteway_ports:
|
||||
ips.extend(neutron.list_port_ip_addresses(port))
|
||||
return ips
|
||||
|
||||
@property
|
||||
def gateway_network_details(self):
|
||||
|
|
|
@ -61,21 +61,21 @@ class NetworkTestCase(testtools.TestCase):
|
|||
self.stack.gateway_network_id,
|
||||
self.stack.gateway_details['external_gateway_info']['network_id'])
|
||||
|
||||
def test_ipv4_gateway_ip(self):
|
||||
def test_ipv4_subnet_gateway_ip(self):
|
||||
if not self.stack.has_ipv4 or not self.stack.has_gateway:
|
||||
tobiko.skip('Stack {!s} has no IPv4 gateway',
|
||||
self.stack.stack_name)
|
||||
self.assertEqual(
|
||||
self.stack.ipv4_gateway_port_details['fixed_ips'][0]['ip_address'],
|
||||
self.stack.ipv4_subnet_details['gateway_ip'])
|
||||
self.assertIn(
|
||||
self.stack.ipv4_subnet_gateway_ip,
|
||||
self.stack.ipv4_gateway_addresses)
|
||||
|
||||
def test_ipv6_gateway_ip(self):
|
||||
def test_ipv6_subnet_gateway_ip(self):
|
||||
if not self.stack.has_ipv6 or not self.stack.has_gateway:
|
||||
tobiko.skip('Stack {!s} has no IPv6 gateway',
|
||||
self.stack.stack_name)
|
||||
self.assertEqual(
|
||||
self.stack.ipv6_gateway_port_details['fixed_ips'][0]['ip_address'],
|
||||
self.stack.ipv6_subnet_details['gateway_ip'])
|
||||
self.assertIn(
|
||||
self.stack.ipv6_subnet_gateway_ip,
|
||||
self.stack.ipv6_gateway_addresses)
|
||||
|
||||
|
||||
@neutron.skip_if_missing_networking_extensions('net-mtu-write')
|
||||
|
@ -87,3 +87,10 @@ class NetworkWithNetMtuWriteTestCase(NetworkTestCase):
|
|||
|
||||
def test_net_mtu_write(self):
|
||||
self.assertEqual(self.stack.mtu, self.stack.outputs.mtu)
|
||||
|
||||
|
||||
@neutron.skip_if_missing_networking_extensions('l3-ha')
|
||||
class L3HaNetworkTestCase(NetworkTestCase):
|
||||
|
||||
#: Stack of resources with a network with a gateway router
|
||||
stack = tobiko.required_setup_fixture(stacks.L3haNetworkStackFixture)
|
||||
|
|
|
@ -41,11 +41,11 @@ class LegacyRouterTest(testtools.TestCase):
|
|||
tobiko.skip('Stack {!s} has no gateway',
|
||||
self.stack.network_stack.stack_name)
|
||||
|
||||
network_stack = self.stack.network_stack
|
||||
self.router = network_stack.gateway_details
|
||||
self.router_ipv4_address = network_stack.ipv4_subnet_gateway_ip
|
||||
self.router_ipv6_address = network_stack.ipv6_subnet_gateway_ip
|
||||
self.router_gateway_ip = network_stack.external_gateway_ips.first
|
||||
self.network_stack = self.stack.network_stack
|
||||
self.router = self.network_stack.gateway_details
|
||||
self.router_ipv4_address = self.network_stack.ipv4_subnet_gateway_ip
|
||||
self.router_ipv6_address = self.network_stack.ipv6_subnet_gateway_ip
|
||||
self.router_gateway_ip = self.network_stack.external_gateway_ips.first
|
||||
|
||||
tripleo_topology.setup_tripleo_topology()
|
||||
self.topology = topology.get_openstack_topology()
|
||||
|
@ -80,21 +80,13 @@ class LegacyRouterTest(testtools.TestCase):
|
|||
|
||||
def test_router_ipv4_address(self):
|
||||
self.assertEqual(4, self.router_ipv4_address.version)
|
||||
ips = neutron.list_port_ip_addresses(
|
||||
port=self.stack.network_stack.ipv4_gateway_port_details,
|
||||
ip_version=4)
|
||||
self.assertIn(self.router_ipv4_address, ips)
|
||||
self.assertIn(self.router_ipv4_address,
|
||||
self.network_stack.ipv4_gateway_addresses)
|
||||
|
||||
def test_router_ipv6_address(self):
|
||||
self.assertEqual(6, self.router_ipv6_address.version)
|
||||
ips = neutron.list_port_ip_addresses(
|
||||
port=self.stack.network_stack.ipv6_gateway_port_details,
|
||||
ip_version=6)
|
||||
self.assertIn(self.router_ipv6_address, ips)
|
||||
|
||||
neutron.find_port_ip_address(
|
||||
port=self.stack.network_stack.ipv6_gateway_port_details,
|
||||
ip_version=6)
|
||||
self.assertIn(self.router_ipv6_address,
|
||||
self.network_stack.ipv6_gateway_addresses)
|
||||
|
||||
def _get_l3_agent_nodes(self, hostname):
|
||||
hostname = hostname.split(".")
|
||||
|
|
Loading…
Reference in New Issue