Merge "Add "region" config for each service"
diff --git a/README.rst b/README.rst
index f18628a..4161cc6 100644
--- a/README.rst
+++ b/README.rst
@@ -32,16 +32,18 @@
will have a configuration file already set up to work with your
devstack installation.
-Tempest is not tied to any single test runner, but Nose been the most commonly
+Tempest is not tied to any single test runner, but testr is the most commonly
used tool. After setting up your configuration file, you can execute
-the set of Tempest tests by using ``nosetests`` ::
+the set of Tempest tests by using ``testr`` ::
- $> nosetests tempest
+ $> testr run --parallel tempest
To run one single test ::
- $> nosetests -sv tempest.api.compute.servers.test_server_actions.py:
- ServerActionsTestJSON.test_rebuild_nonexistent_server
+ $> testr run --parallel tempest.api.compute.servers.test_server_actions.ServerActionsTestJSON.test_rebuild_nonexistent_server
+
+Alternatively, you can use the run_tests.sh script which will create a venv
+and run the tests or use tox to do the same.
Configuration
-------------
diff --git a/tempest/api/compute/admin/test_aggregates.py b/tempest/api/compute/admin/test_aggregates.py
index 0bb0460..a5dceca 100644
--- a/tempest/api/compute/admin/test_aggregates.py
+++ b/tempest/api/compute/admin/test_aggregates.py
@@ -61,12 +61,12 @@
# Create and delete an aggregate.
aggregate_name = rand_name(self.aggregate_name_prefix)
resp, aggregate = self.client.create_aggregate(aggregate_name)
- self.assertEquals(200, resp.status)
- self.assertEquals(aggregate_name, aggregate['name'])
- self.assertEquals(None, aggregate['availability_zone'])
+ self.assertEqual(200, resp.status)
+ self.assertEqual(aggregate_name, aggregate['name'])
+ self.assertEqual(None, aggregate['availability_zone'])
resp, _ = self.client.delete_aggregate(aggregate['id'])
- self.assertEquals(200, resp.status)
+ self.assertEqual(200, resp.status)
self.client.wait_for_resource_deletion(aggregate['id'])
@attr(type='gate')
@@ -75,12 +75,12 @@
aggregate_name = rand_name(self.aggregate_name_prefix)
az_name = rand_name(self.az_name_prefix)
resp, aggregate = self.client.create_aggregate(aggregate_name, az_name)
- self.assertEquals(200, resp.status)
- self.assertEquals(aggregate_name, aggregate['name'])
- self.assertEquals(az_name, aggregate['availability_zone'])
+ self.assertEqual(200, resp.status)
+ self.assertEqual(aggregate_name, aggregate['name'])
+ self.assertEqual(az_name, aggregate['availability_zone'])
resp, _ = self.client.delete_aggregate(aggregate['id'])
- self.assertEquals(200, resp.status)
+ self.assertEqual(200, resp.status)
self.client.wait_for_resource_deletion(aggregate['id'])
@attr(type='gate')
@@ -91,7 +91,7 @@
self.addCleanup(self.client.delete_aggregate, aggregate['id'])
resp, aggregates = self.client.list_aggregates()
- self.assertEquals(200, resp.status)
+ self.assertEqual(200, resp.status)
self.assertIn((aggregate['id'], aggregate['availability_zone']),
map(lambda x: (x['id'], x['availability_zone']),
aggregates))
@@ -104,10 +104,10 @@
self.addCleanup(self.client.delete_aggregate, aggregate['id'])
resp, body = self.client.get_aggregate(aggregate['id'])
- self.assertEquals(200, resp.status)
- self.assertEquals(aggregate['name'], body['name'])
- self.assertEquals(aggregate['availability_zone'],
- body['availability_zone'])
+ self.assertEqual(200, resp.status)
+ self.assertEqual(aggregate['name'], body['name'])
+ self.assertEqual(aggregate['availability_zone'],
+ body['availability_zone'])
@attr(type=['negative', 'gate'])
def test_aggregate_create_as_user(self):
@@ -166,17 +166,17 @@
self.addCleanup(self.client.delete_aggregate, aggregate['id'])
resp, body = self.client.add_host(aggregate['id'], self.host)
- self.assertEquals(200, resp.status)
- self.assertEquals(aggregate_name, body['name'])
- self.assertEquals(aggregate['availability_zone'],
- body['availability_zone'])
+ self.assertEqual(200, resp.status)
+ self.assertEqual(aggregate_name, body['name'])
+ self.assertEqual(aggregate['availability_zone'],
+ body['availability_zone'])
self.assertIn(self.host, body['hosts'])
resp, body = self.client.remove_host(aggregate['id'], self.host)
- self.assertEquals(200, resp.status)
- self.assertEquals(aggregate_name, body['name'])
- self.assertEquals(aggregate['availability_zone'],
- body['availability_zone'])
+ self.assertEqual(200, resp.status)
+ self.assertEqual(aggregate_name, body['name'])
+ self.assertEqual(aggregate['availability_zone'],
+ body['availability_zone'])
self.assertNotIn(self.host, body['hosts'])
@attr(type='gate')
@@ -191,10 +191,10 @@
resp, aggregates = self.client.list_aggregates()
aggs = filter(lambda x: x['id'] == aggregate['id'], aggregates)
- self.assertEquals(1, len(aggs))
+ self.assertEqual(1, len(aggs))
agg = aggs[0]
- self.assertEquals(aggregate_name, agg['name'])
- self.assertEquals(None, agg['availability_zone'])
+ self.assertEqual(aggregate_name, agg['name'])
+ self.assertEqual(None, agg['availability_zone'])
self.assertIn(self.host, agg['hosts'])
@attr(type='gate')
@@ -208,8 +208,8 @@
self.addCleanup(self.client.remove_host, aggregate['id'], self.host)
resp, body = self.client.get_aggregate(aggregate['id'])
- self.assertEquals(aggregate_name, body['name'])
- self.assertEquals(None, body['availability_zone'])
+ self.assertEqual(aggregate_name, body['name'])
+ self.assertEqual(None, body['availability_zone'])
self.assertIn(self.host, body['hosts'])
@attr(type='gate')
diff --git a/tempest/api/compute/admin/test_flavors.py b/tempest/api/compute/admin/test_flavors.py
index 7efd3c1..b693227 100644
--- a/tempest/api/compute/admin/test_flavors.py
+++ b/tempest/api/compute/admin/test_flavors.py
@@ -136,8 +136,8 @@
# Delete the flavor
new_flavor_id = flavor['id']
resp_delete, body = self.client.delete_flavor(new_flavor_id)
- self.assertEquals(200, resp.status)
- self.assertEquals(202, resp_delete.status)
+ self.assertEqual(200, resp.status)
+ self.assertEqual(202, resp_delete.status)
# Deleted flavors can be seen via detailed GET
resp, flavor = self.client.get_flavor_details(new_flavor_id)
@@ -230,6 +230,26 @@
self.assertFalse(flag)
@attr(type='gate')
+ def test_create_server_with_non_public_flavor(self):
+ # Create a flavor with os-flavor-access:is_public false
+ flavor_name = rand_name(self.flavor_name_prefix)
+ new_flavor_id = rand_int_id(start=1000)
+
+ # Create the flavor
+ resp, flavor = self.client.create_flavor(flavor_name,
+ self.ram, self.vcpus,
+ self.disk,
+ new_flavor_id,
+ is_public="False")
+ self.addCleanup(self.flavor_clean_up, flavor['id'])
+ self.assertEqual(200, resp.status)
+
+ # Verify flavor is not used by other user
+ self.assertRaises(exceptions.BadRequest,
+ self.os.servers_client.create_server,
+ 'test', self.image_ref, flavor['id'])
+
+ @attr(type='gate')
def test_list_public_flavor_with_other_user(self):
# Create a Flavor with public access.
# Try to List/Get flavor with another user
diff --git a/tempest/api/compute/admin/test_flavors_extra_specs.py b/tempest/api/compute/admin/test_flavors_extra_specs.py
index ace77a6..e1e75cb 100644
--- a/tempest/api/compute/admin/test_flavors_extra_specs.py
+++ b/tempest/api/compute/admin/test_flavors_extra_specs.py
@@ -102,7 +102,7 @@
self.flavor['id'])
self.assertEqual(resp.status, 200)
for key in specs:
- self.assertEquals(body[key], specs[key])
+ self.assertEqual(body[key], specs[key])
@attr(type=['negative', 'gate'])
def test_flavor_non_admin_unset_keys(self):
diff --git a/tempest/api/compute/servers/test_servers.py b/tempest/api/compute/servers/test_servers.py
index 3ff2538..1dff806 100644
--- a/tempest/api/compute/servers/test_servers.py
+++ b/tempest/api/compute/servers/test_servers.py
@@ -81,7 +81,7 @@
# Update the server with a new name
resp, server = self.client.update_server(server['id'],
name='newname')
- self.assertEquals(200, resp.status)
+ self.assertEqual(200, resp.status)
self.client.wait_for_server_status(server['id'], 'ACTIVE')
# Verify the name of the server has changed
diff --git a/tempest/api/compute/test_live_block_migration.py b/tempest/api/compute/test_live_block_migration.py
index 84fd653..7c60859 100644
--- a/tempest/api/compute/test_live_block_migration.py
+++ b/tempest/api/compute/test_live_block_migration.py
@@ -110,7 +110,7 @@
target_host = self._get_host_other_than(actual_host)
self._migrate_server_to(server_id, target_host)
self.servers_client.wait_for_server_status(server_id, 'ACTIVE')
- self.assertEquals(target_host, self._get_host_for_server(server_id))
+ self.assertEqual(target_host, self._get_host_for_server(server_id))
@testtools.skipIf(not CONF.compute.live_migration_available,
'Live migration not available')
@@ -122,7 +122,7 @@
self.assertRaises(exceptions.BadRequest, self._migrate_server_to,
server_id, target_host)
- self.assertEquals('ACTIVE', self._get_server_status(server_id))
+ self.assertEqual('ACTIVE', self._get_server_status(server_id))
@testtools.skipIf(not CONF.compute.live_migration_available or
not CONF.compute.use_block_migration_for_live_migration,
@@ -153,7 +153,7 @@
self._migrate_server_to(server_id, target_host)
self.servers_client.wait_for_server_status(server_id, 'ACTIVE')
- self.assertEquals(target_host, self._get_host_for_server(server_id))
+ self.assertEqual(target_host, self._get_host_for_server(server_id))
@classmethod
def tearDownClass(cls):
diff --git a/tempest/api/identity/admin/test_roles.py b/tempest/api/identity/admin/test_roles.py
index ac145c6..c234efd 100644
--- a/tempest/api/identity/admin/test_roles.py
+++ b/tempest/api/identity/admin/test_roles.py
@@ -171,7 +171,7 @@
user['id'], role['id'])
resp, body = self.client.remove_user_role(tenant['id'], user['id'],
user_role['id'])
- self.assertEquals(resp['status'], '204')
+ self.assertEqual(resp['status'], '204')
@attr(type='gate')
def test_remove_user_role_by_unauthorized_user(self):
diff --git a/tempest/api/identity/admin/test_services.py b/tempest/api/identity/admin/test_services.py
index 2be0c29..508c177 100644
--- a/tempest/api/identity/admin/test_services.py
+++ b/tempest/api/identity/admin/test_services.py
@@ -50,7 +50,7 @@
self.assertTrue(resp['status'].startswith('2'))
# verifying the existence of service created
self.assertIn('id', fetched_service)
- self.assertEquals(fetched_service['id'], service_data['id'])
+ self.assertEqual(fetched_service['id'], service_data['id'])
self.assertIn('name', fetched_service)
self.assertEqual(fetched_service['name'], service_data['name'])
self.assertIn('type', fetched_service)
diff --git a/tempest/api/identity/admin/test_users.py b/tempest/api/identity/admin/test_users.py
index 3455b5d..057e633 100644
--- a/tempest/api/identity/admin/test_users.py
+++ b/tempest/api/identity/admin/test_users.py
@@ -109,9 +109,9 @@
resp, user = self.client.create_user(alt_user2, self.alt_password,
self.data.tenant['id'],
self.alt_email)
- self.assertEquals('200', resp['status'])
+ self.assertEqual('200', resp['status'])
resp, body = self.client.delete_user(user['id'])
- self.assertEquals('204', resp['status'])
+ self.assertEqual('204', resp['status'])
@attr(type=['negative', 'gate'])
def test_delete_users_by_unauthorized_user(self):
@@ -236,7 +236,7 @@
resp, user1 = self.client.create_user(alt_tenant_user1, 'password1',
self.data.tenant['id'],
'user1@123')
- self.assertEquals('200', resp['status'])
+ self.assertEqual('200', resp['status'])
user_ids.append(user1['id'])
self.data.users.append(user1)
@@ -244,7 +244,7 @@
resp, user2 = self.client.create_user(alt_tenant_user2, 'password2',
self.data.tenant['id'],
'user2@123')
- self.assertEquals('200', resp['status'])
+ self.assertEqual('200', resp['status'])
user_ids.append(user2['id'])
self.data.users.append(user2)
# List of users for the respective tenant ID
@@ -273,22 +273,22 @@
user_ids.append(user['id'])
resp, role = self.client.assign_user_role(tenant['id'], user['id'],
role['id'])
- self.assertEquals('200', resp['status'])
+ self.assertEqual('200', resp['status'])
alt_user2 = rand_name('second_user_')
resp, second_user = self.client.create_user(alt_user2, 'password1',
self.data.tenant['id'],
'user2@123')
- self.assertEquals('200', resp['status'])
+ self.assertEqual('200', resp['status'])
user_ids.append(second_user['id'])
self.data.users.append(second_user)
resp, role = self.client.assign_user_role(tenant['id'],
second_user['id'],
role['id'])
- self.assertEquals('200', resp['status'])
+ self.assertEqual('200', resp['status'])
# List of users with roles for the respective tenant ID
resp, body = self.client.list_users_for_tenant(self.data.tenant['id'])
- self.assertEquals('200', resp['status'])
+ self.assertEqual('200', resp['status'])
for i in body:
fetched_user_ids.append(i['id'])
# verifying the user Id in the list
diff --git a/tempest/api/identity/admin/v3/test_credentials.py b/tempest/api/identity/admin/v3/test_credentials.py
index efd2f83..cda5863 100644
--- a/tempest/api/identity/admin/v3/test_credentials.py
+++ b/tempest/api/identity/admin/v3/test_credentials.py
@@ -112,8 +112,7 @@
if c not in fetched_cred_ids]
self.assertEqual(0, len(missing_creds),
"Failed to find cred %s in fetched list" %
- ', '.join(m_cred for m_cred
- in missing_creds))
+ ', '.join(m_cred for m_cred in missing_creds))
class CredentialsTestXML(CredentialsTestJSON):
diff --git a/tempest/api/identity/admin/v3/test_users.py b/tempest/api/identity/admin/v3/test_users.py
index bf7a554..50e9702 100644
--- a/tempest/api/identity/admin/v3/test_users.py
+++ b/tempest/api/identity/admin/v3/test_users.py
@@ -116,7 +116,7 @@
self.assertEqual(0, len(missing_projects),
"Failed to find project %s in fetched list" %
', '.join(m_project for m_project
- in missing_projects))
+ in missing_projects))
class UsersV3TestXML(UsersV3TestJSON):
diff --git a/tempest/api/image/v1/test_image_members.py b/tempest/api/image/v1/test_image_members.py
index 29bcaf4..fcbde50 100644
--- a/tempest/api/image/v1/test_image_members.py
+++ b/tempest/api/image/v1/test_image_members.py
@@ -42,7 +42,7 @@
disk_format='raw',
is_public=True,
data=image_file)
- self.assertEquals(201, resp.status)
+ self.assertEqual(201, resp.status)
image_id = image['id']
return image_id
@@ -50,9 +50,9 @@
def test_add_image_member(self):
image = self._create_image()
resp = self.client.add_member(self.tenants[0], image)
- self.assertEquals(204, resp.status)
+ self.assertEqual(204, resp.status)
resp, body = self.client.get_image_membership(image)
- self.assertEquals(200, resp.status)
+ self.assertEqual(200, resp.status)
members = body['members']
members = map(lambda x: x['member_id'], members)
self.assertIn(self.tenants[0], members)
@@ -61,12 +61,12 @@
def test_get_shared_images(self):
image = self._create_image()
resp = self.client.add_member(self.tenants[0], image)
- self.assertEquals(204, resp.status)
+ self.assertEqual(204, resp.status)
share_image = self._create_image()
resp = self.client.add_member(self.tenants[0], share_image)
- self.assertEquals(204, resp.status)
+ self.assertEqual(204, resp.status)
resp, body = self.client.get_shared_images(self.tenants[0])
- self.assertEquals(200, resp.status)
+ self.assertEqual(200, resp.status)
images = body['shared_images']
images = map(lambda x: x['image_id'], images)
self.assertIn(share_image, images)
@@ -76,10 +76,10 @@
def test_remove_member(self):
image_id = self._create_image()
resp = self.client.add_member(self.tenants[0], image_id)
- self.assertEquals(204, resp.status)
+ self.assertEqual(204, resp.status)
resp = self.client.delete_member(self.tenants[0], image_id)
- self.assertEquals(204, resp.status)
+ self.assertEqual(204, resp.status)
resp, body = self.client.get_image_membership(image_id)
- self.assertEquals(200, resp.status)
+ self.assertEqual(200, resp.status)
members = body['members']
- self.assertEquals(0, len(members))
+ self.assertEqual(0, len(members))
diff --git a/tempest/api/network/test_load_balancer.py b/tempest/api/network/test_load_balancer.py
index 3880f4f..d604c69 100644
--- a/tempest/api/network/test_load_balancer.py
+++ b/tempest/api/network/test_load_balancer.py
@@ -34,6 +34,8 @@
delete vIP
update pool
delete pool
+ show pool
+ list pool
"""
@classmethod
@@ -101,6 +103,23 @@
self.assertEqual(self.vip['id'], vip['id'])
self.assertEqual(self.vip['name'], vip['name'])
+ @attr(type='smoke')
+ def test_show_pool(self):
+ # Verifies the details of a pool
+ resp, body = self.client.show_pool(self.pool['id'])
+ self.assertEqual('200', resp['status'])
+ pool = body['pool']
+ self.assertEqual(self.pool['id'], pool['id'])
+ self.assertEqual(self.pool['name'], pool['name'])
+
+ @attr(type='smoke')
+ def test_list_pools(self):
+ # Verify the pool exists in the list of all pools
+ resp, body = self.client.list_pools()
+ self.assertEqual('200', resp['status'])
+ pools = body['pools']
+ self.assertIn(self.pool['id'], [p['id'] for p in pools])
+
class LoadBalancerXML(LoadBalancerJSON):
_interface = 'xml'
diff --git a/tempest/api/object_storage/test_account_services.py b/tempest/api/object_storage/test_account_services.py
index b443933..d4201ee 100644
--- a/tempest/api/object_storage/test_account_services.py
+++ b/tempest/api/object_storage/test_account_services.py
@@ -59,7 +59,7 @@
params = {'limit': limit}
resp, container_list = \
self.account_client.list_account_containers(params=params)
- self.assertEquals(len(container_list), limit)
+ self.assertEqual(len(container_list), limit)
@attr(type='smoke')
def test_list_containers_with_marker(self):
@@ -70,11 +70,11 @@
params = {'marker': self.containers[-1]}
resp, container_list = \
self.account_client.list_account_containers(params=params)
- self.assertEquals(len(container_list), 0)
+ self.assertEqual(len(container_list), 0)
params = {'marker': self.containers[self.containers_count / 2]}
resp, container_list = \
self.account_client.list_account_containers(params=params)
- self.assertEquals(len(container_list), self.containers_count / 2 - 1)
+ self.assertEqual(len(container_list), self.containers_count / 2 - 1)
@attr(type='smoke')
def test_list_containers_with_end_marker(self):
@@ -85,11 +85,11 @@
params = {'end_marker': self.containers[0]}
resp, container_list = \
self.account_client.list_account_containers(params=params)
- self.assertEquals(len(container_list), 0)
+ self.assertEqual(len(container_list), 0)
params = {'end_marker': self.containers[self.containers_count / 2]}
resp, container_list = \
self.account_client.list_account_containers(params=params)
- self.assertEquals(len(container_list), self.containers_count / 2)
+ self.assertEqual(len(container_list), self.containers_count / 2)
@attr(type='smoke')
def test_list_containers_with_limit_and_marker(self):
diff --git a/tempest/cli/__init__.py b/tempest/cli/__init__.py
index cbb8d08..b082b1e 100644
--- a/tempest/cli/__init__.py
+++ b/tempest/cli/__init__.py
@@ -95,9 +95,11 @@
"""Executes given command with auth attributes appended."""
# TODO(jogo) make admin=False work
creds = ('--os-username %s --os-tenant-name %s --os-password %s '
- '--os-auth-url %s ' % (self.identity.admin_username,
- self.identity.admin_tenant_name, self.identity.admin_password,
- self.identity.uri))
+ '--os-auth-url %s ' %
+ (self.identity.admin_username,
+ self.identity.admin_tenant_name,
+ self.identity.admin_password,
+ self.identity.uri))
flags = creds + ' ' + flags
return self.cmd(cmd, action, flags, params, fail_ok)
diff --git a/tempest/scenario/manager.py b/tempest/scenario/manager.py
index 21c37b9..9137b93 100644
--- a/tempest/scenario/manager.py
+++ b/tempest/scenario/manager.py
@@ -425,7 +425,7 @@
self.addCleanup(image_client.images.delete, image_id)
self.status_timeout(image_client.images, image_id, 'active')
snapshot_image = image_client.images.get(image_id)
- self.assertEquals(name, snapshot_image.name)
+ self.assertEqual(name, snapshot_image.name)
LOG.debug("Created snapshot image %s for server %s",
snapshot_image.name, server.name)
return snapshot_image
diff --git a/tempest/scenario/test_server_advanced_ops.py b/tempest/scenario/test_server_advanced_ops.py
index cf72cd4..9c50489 100644
--- a/tempest/scenario/test_server_advanced_ops.py
+++ b/tempest/scenario/test_server_advanced_ops.py
@@ -15,7 +15,6 @@
# License for the specific language governing permissions and limitations
# under the License.
-from tempest.common.utils.data_utils import rand_name
from tempest.openstack.common import log as logging
from tempest.scenario import manager
from tempest.test import services
@@ -49,18 +48,7 @@
@services('compute')
def test_resize_server_confirm(self):
# We create an instance for use in this test
- i_name = rand_name('instance')
- flavor_id = self.config.compute.flavor_ref
- base_image_id = self.config.compute.image_ref
- self.instance = self.compute_client.servers.create(
- i_name, base_image_id, flavor_id)
- self.assertEqual(self.instance.name, i_name)
- self.set_resource('instance', self.instance)
- self.assertEqual(self.instance.status, 'BUILD')
- instance_id = self.get_resource('instance').id
- self.status_timeout(
- self.compute_client.servers, instance_id, 'ACTIVE')
- instance = self.get_resource('instance')
+ instance = self.create_server(self.compute_client)
instance_id = instance.id
resize_flavor = self.config.compute.flavor_ref_alt
LOG.debug("Resizing instance %s from flavor %s to flavor %s",
@@ -78,18 +66,7 @@
@services('compute')
def test_server_sequence_suspend_resume(self):
# We create an instance for use in this test
- i_name = rand_name('instance')
- flavor_id = self.config.compute.flavor_ref
- base_image_id = self.config.compute.image_ref
- self.instance = self.compute_client.servers.create(
- i_name, base_image_id, flavor_id)
- self.assertEqual(self.instance.name, i_name)
- self.set_resource('instance', self.instance)
- self.assertEqual(self.instance.status, 'BUILD')
- instance_id = self.get_resource('instance').id
- self.status_timeout(
- self.compute_client.servers, instance_id, 'ACTIVE')
- instance = self.get_resource('instance')
+ instance = self.create_server(self.compute_client)
instance_id = instance.id
LOG.debug("Suspending instance %s. Current status: %s",
instance_id, instance.status)
diff --git a/tempest/scenario/test_stamp_pattern.py b/tempest/scenario/test_stamp_pattern.py
index c5a4aaf..ab464e3 100644
--- a/tempest/scenario/test_stamp_pattern.py
+++ b/tempest/scenario/test_stamp_pattern.py
@@ -92,7 +92,7 @@
self.addCleanup(cleaner)
self._wait_for_volume_status(volume, 'available')
self._wait_for_volume_snapshot_status(snapshot, 'available')
- self.assertEquals(snapshot_name, snapshot.display_name)
+ self.assertEqual(snapshot_name, snapshot.display_name)
return snapshot
def _wait_for_volume_status(self, volume, status):
diff --git a/tempest/services/network/json/network_client.py b/tempest/services/network/json/network_client.py
index bc0a6cf..ceb4c62 100644
--- a/tempest/services/network/json/network_client.py
+++ b/tempest/services/network/json/network_client.py
@@ -478,3 +478,15 @@
resp, body = self.put(uri, body=body, headers=self.headers)
body = json.loads(body)
return resp, body
+
+ def list_pools(self):
+ uri = '%s/lb/pools' % (self.uri_prefix)
+ resp, body = self.get(uri, self.headers)
+ body = json.loads(body)
+ return resp, body
+
+ def show_pool(self, uuid):
+ uri = '%s/lb/pools/%s' % (self.uri_prefix, uuid)
+ resp, body = self.get(uri, self.headers)
+ body = json.loads(body)
+ return resp, body
diff --git a/tempest/tests/test_wrappers.py b/tempest/tests/test_wrappers.py
index aeea98d..1a5af00 100644
--- a/tempest/tests/test_wrappers.py
+++ b/tempest/tests/test_wrappers.py
@@ -60,7 +60,7 @@
subprocess.call(['git', 'init'])
exit_code = subprocess.call('sh pretty_tox.sh tests.passing',
shell=True, stdout=DEVNULL, stderr=DEVNULL)
- self.assertEquals(exit_code, 0)
+ self.assertEqual(exit_code, 0)
@attr(type='smoke')
def test_pretty_tox_fails(self):
@@ -76,7 +76,7 @@
subprocess.call(['git', 'init'])
exit_code = subprocess.call('sh pretty_tox.sh', shell=True,
stdout=DEVNULL, stderr=DEVNULL)
- self.assertEquals(exit_code, 1)
+ self.assertEqual(exit_code, 1)
@attr(type='smoke')
def test_pretty_tox_serial(self):
@@ -88,7 +88,7 @@
os.chdir(self.directory)
exit_code = subprocess.call('sh pretty_tox_serial.sh tests.passing',
shell=True, stdout=DEVNULL, stderr=DEVNULL)
- self.assertEquals(exit_code, 0)
+ self.assertEqual(exit_code, 0)
@attr(type='smoke')
def test_pretty_tox_serial_fails(self):
@@ -100,4 +100,4 @@
os.chdir(self.directory)
exit_code = subprocess.call('sh pretty_tox_serial.sh', shell=True,
stdout=DEVNULL, stderr=DEVNULL)
- self.assertEquals(exit_code, 1)
+ self.assertEqual(exit_code, 1)
diff --git a/tempest/thirdparty/boto/test_ec2_instance_run.py b/tempest/thirdparty/boto/test_ec2_instance_run.py
index a848fc9..7fab364 100644
--- a/tempest/thirdparty/boto/test_ec2_instance_run.py
+++ b/tempest/thirdparty/boto/test_ec2_instance_run.py
@@ -176,25 +176,25 @@
instance.add_tag('key1', value='value1')
tags = self.ec2_client.get_all_tags()
- self.assertEquals(tags[0].name, 'key1')
- self.assertEquals(tags[0].value, 'value1')
+ self.assertEqual(tags[0].name, 'key1')
+ self.assertEqual(tags[0].value, 'value1')
tags = self.ec2_client.get_all_tags(filters={'key': 'key1'})
- self.assertEquals(tags[0].name, 'key1')
- self.assertEquals(tags[0].value, 'value1')
+ self.assertEqual(tags[0].name, 'key1')
+ self.assertEqual(tags[0].value, 'value1')
tags = self.ec2_client.get_all_tags(filters={'value': 'value1'})
- self.assertEquals(tags[0].name, 'key1')
- self.assertEquals(tags[0].value, 'value1')
+ self.assertEqual(tags[0].name, 'key1')
+ self.assertEqual(tags[0].value, 'value1')
tags = self.ec2_client.get_all_tags(filters={'key': 'value2'})
- self.assertEquals(len(tags), 0)
+ self.assertEqual(len(tags), 0)
for instance in reservation.instances:
instance.remove_tag('key1', value='value1')
tags = self.ec2_client.get_all_tags()
- self.assertEquals(len(tags), 0)
+ self.assertEqual(len(tags), 0)
for instance in reservation.instances:
instance.stop()
diff --git a/tempest/thirdparty/boto/utils/wait.py b/tempest/thirdparty/boto/utils/wait.py
index 1507deb..a44e283 100644
--- a/tempest/thirdparty/boto/utils/wait.py
+++ b/tempest/thirdparty/boto/utils/wait.py
@@ -54,8 +54,7 @@
raise TestCase.failureException("State change timeout exceeded!"
'(%ds) While waiting'
'for %s at "%s"' %
- (dtime,
- final_set, status))
+ (dtime, final_set, status))
time.sleep(default_check_interval)
old_status = status
status = lfunction()
@@ -78,8 +77,7 @@
raise TestCase.failureException('Pattern find timeout exceeded!'
'(%ds) While waiting for'
'"%s" pattern in "%s"' %
- (dtime,
- regexp, text))
+ (dtime, regexp, text))
time.sleep(default_check_interval)