Merge "Add a create_router utility function"
This commit is contained in:
commit
9adf900c1f
tempest/api/network
@ -56,6 +56,7 @@ class BaseNetworkTest(tempest.test.BaseTestCase):
|
||||
cls.networks = []
|
||||
cls.subnets = []
|
||||
cls.ports = []
|
||||
cls.routers = []
|
||||
cls.pools = []
|
||||
cls.vips = []
|
||||
cls.members = []
|
||||
@ -73,6 +74,8 @@ class BaseNetworkTest(tempest.test.BaseTestCase):
|
||||
cls.client.delete_pool(pool['id'])
|
||||
for port in cls.ports:
|
||||
cls.client.delete_port(port['id'])
|
||||
for router in cls.routers:
|
||||
cls.client.delete_router(router['id'])
|
||||
for subnet in cls.subnets:
|
||||
cls.client.delete_subnet(subnet['id'])
|
||||
for network in cls.networks:
|
||||
@ -124,6 +127,21 @@ class BaseNetworkTest(tempest.test.BaseTestCase):
|
||||
cls.ports.append(port)
|
||||
return port
|
||||
|
||||
@classmethod
|
||||
def create_router(cls, router_name=None, admin_state_up=False,
|
||||
external_network_id=None, enable_snat=None):
|
||||
ext_gw_info = {}
|
||||
if external_network_id:
|
||||
ext_gw_info['network_id'] = external_network_id
|
||||
if enable_snat:
|
||||
ext_gw_info['enable_snat'] = enable_snat
|
||||
resp, body = cls.client.create_router(
|
||||
router_name, external_gateway_info=ext_gw_info,
|
||||
admin_state_up=admin_state_up)
|
||||
router = body['router']
|
||||
cls.routers.append(router)
|
||||
return router
|
||||
|
||||
@classmethod
|
||||
def create_pool(cls, name, lb_method, protocol, subnet):
|
||||
"""Wrapper utility that returns a test pool."""
|
||||
|
@ -47,11 +47,9 @@ class FloatingIPTestJSON(base.BaseNetworkTest):
|
||||
# Create network, subnet, router and add interface
|
||||
cls.network = cls.create_network()
|
||||
cls.subnet = cls.create_subnet(cls.network)
|
||||
resp, router = cls.client.create_router(
|
||||
cls.router = cls.create_router(
|
||||
rand_name('router-'),
|
||||
external_gateway_info={"network_id":
|
||||
cls.network_cfg.public_network_id})
|
||||
cls.router = router['router']
|
||||
external_network_id=cls.network_cfg.public_network_id)
|
||||
resp, _ = cls.client.add_router_interface_with_subnet_id(
|
||||
cls.router['id'], cls.subnet['id'])
|
||||
cls.port = list()
|
||||
@ -66,7 +64,6 @@ class FloatingIPTestJSON(base.BaseNetworkTest):
|
||||
cls.subnet['id'])
|
||||
for i in range(2):
|
||||
cls.client.delete_port(cls.port[i]['id'])
|
||||
cls.client.delete_router(cls.router['id'])
|
||||
super(FloatingIPTestJSON, cls).tearDownClass()
|
||||
|
||||
def _delete_floating_ip(self, floating_ip_id):
|
||||
|
@ -52,6 +52,8 @@ class RoutersTest(base.BaseNetworkTest):
|
||||
@attr(type='smoke')
|
||||
def test_create_show_list_update_delete_router(self):
|
||||
# Create a router
|
||||
# NOTE(salv-orlando): Do not invoke self.create_router
|
||||
# as we need to check the response code
|
||||
name = rand_name('router-')
|
||||
resp, create_body = self.client.create_router(
|
||||
name, external_gateway_info={
|
||||
@ -94,41 +96,37 @@ class RoutersTest(base.BaseNetworkTest):
|
||||
def test_add_remove_router_interface_with_subnet_id(self):
|
||||
network = self.create_network()
|
||||
subnet = self.create_subnet(network)
|
||||
name = rand_name('router-')
|
||||
resp, create_body = self.client.create_router(name)
|
||||
self.addCleanup(self.client.delete_router, create_body['router']['id'])
|
||||
router = self.create_router(rand_name('router-'))
|
||||
# Add router interface with subnet id
|
||||
resp, interface = self.client.add_router_interface_with_subnet_id(
|
||||
create_body['router']['id'], subnet['id'])
|
||||
router['id'], subnet['id'])
|
||||
self.assertEqual('200', resp['status'])
|
||||
self.addCleanup(self._remove_router_interface_with_subnet_id,
|
||||
create_body['router']['id'], subnet['id'])
|
||||
router['id'], subnet['id'])
|
||||
self.assertTrue('subnet_id' in interface.keys())
|
||||
self.assertTrue('port_id' in interface.keys())
|
||||
# Verify router id is equal to device id in port details
|
||||
resp, show_port_body = self.client.show_port(
|
||||
interface['port_id'])
|
||||
self.assertEqual(show_port_body['port']['device_id'],
|
||||
create_body['router']['id'])
|
||||
router['id'])
|
||||
|
||||
@attr(type='smoke')
|
||||
def test_add_remove_router_interface_with_port_id(self):
|
||||
network = self.create_network()
|
||||
self.create_subnet(network)
|
||||
name = rand_name('router-')
|
||||
resp, create_body = self.client.create_router(name)
|
||||
self.addCleanup(self.client.delete_router, create_body['router']['id'])
|
||||
router = self.create_router(rand_name('router-'))
|
||||
resp, port_body = self.client.create_port(network['id'])
|
||||
# add router interface to port created above
|
||||
resp, interface = self.client.add_router_interface_with_port_id(
|
||||
create_body['router']['id'], port_body['port']['id'])
|
||||
router['id'], port_body['port']['id'])
|
||||
self.assertEqual('200', resp['status'])
|
||||
self.addCleanup(self._remove_router_interface_with_port_id,
|
||||
create_body['router']['id'], port_body['port']['id'])
|
||||
router['id'], port_body['port']['id'])
|
||||
self.assertTrue('subnet_id' in interface.keys())
|
||||
self.assertTrue('port_id' in interface.keys())
|
||||
# Verify router id is equal to device id in port details
|
||||
resp, show_port_body = self.client.show_port(
|
||||
interface['port_id'])
|
||||
self.assertEqual(show_port_body['port']['device_id'],
|
||||
create_body['router']['id'])
|
||||
router['id'])
|
||||
|
Loading…
x
Reference in New Issue
Block a user