Merge "Add a create_router utility function"

This commit is contained in:
Jenkins 2013-10-15 13:11:16 +00:00 committed by Gerrit Code Review
commit 9adf900c1f
3 changed files with 30 additions and 17 deletions

@ -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'])