Merge "add BaseV2ComputeTest as the base class of nova v2 api tests"

This commit is contained in:
Jenkins 2013-10-22 16:47:11 +00:00 committed by Gerrit Code Review
commit 18dae645a6
49 changed files with 80 additions and 73 deletions

View File

@ -22,7 +22,7 @@ from tempest import exceptions
from tempest.test import attr
class AggregatesAdminTestJSON(base.BaseComputeAdminTest):
class AggregatesAdminTestJSON(base.BaseV2ComputeAdminTest):
"""
Tests Aggregates API that require admin privileges

View File

@ -20,7 +20,7 @@ from tempest import exceptions
from tempest.test import attr
class AvailabilityZoneAdminTestJSON(base.BaseComputeAdminTest):
class AvailabilityZoneAdminTestJSON(base.BaseV2ComputeAdminTest):
"""
Tests Availability Zone API List that require admin privileges

View File

@ -20,7 +20,7 @@ from tempest import exceptions
from tempest.test import attr
class FixedIPsTestJson(base.BaseComputeAdminTest):
class FixedIPsTestJson(base.BaseV2ComputeAdminTest):
_interface = 'json'
@classmethod

View File

@ -24,7 +24,7 @@ from tempest.test import attr
from tempest.test import skip_because
class FlavorsAdminTestJSON(base.BaseComputeAdminTest):
class FlavorsAdminTestJSON(base.BaseV2ComputeAdminTest):
"""
Tests Flavors API Create and Delete that require admin privileges

View File

@ -25,7 +25,7 @@ from tempest import exceptions
from tempest.test import attr
class FlavorsAccessTestJSON(base.BaseComputeAdminTest):
class FlavorsAccessTestJSON(base.BaseV2ComputeAdminTest):
"""
Tests Flavor Access API extension.

View File

@ -23,7 +23,7 @@ from tempest import exceptions
from tempest.test import attr
class FlavorsExtraSpecsTestJSON(base.BaseComputeAdminTest):
class FlavorsExtraSpecsTestJSON(base.BaseV2ComputeAdminTest):
"""
Tests Flavor Extra Spec API extension.

View File

@ -21,7 +21,7 @@ from tempest import exceptions
from tempest.test import attr
class HostsAdminTestJSON(base.BaseComputeAdminTest):
class HostsAdminTestJSON(base.BaseV2ComputeAdminTest):
"""
Tests hosts API using admin privileges.

View File

@ -19,7 +19,7 @@ from tempest.api.compute import base
from tempest.test import attr
class HypervisorAdminTestJSON(base.BaseComputeAdminTest):
class HypervisorAdminTestJSON(base.BaseV2ComputeAdminTest):
"""
Tests Hypervisors API that require admin privileges

View File

@ -23,7 +23,7 @@ from tempest.test import attr
from tempest.test import skip_because
class QuotasAdminTestJSON(base.BaseComputeAdminTest):
class QuotasAdminTestJSON(base.BaseV2ComputeAdminTest):
_interface = 'json'
@classmethod

View File

@ -22,7 +22,7 @@ from tempest.test import attr
from tempest.test import skip_because
class ServersAdminTestJSON(base.BaseComputeAdminTest):
class ServersAdminTestJSON(base.BaseV2ComputeAdminTest):
"""
Tests Servers API using admin privileges

View File

@ -21,7 +21,7 @@ from tempest import exceptions
from tempest.test import attr
class ServicesAdminTestJSON(base.BaseComputeAdminTest):
class ServicesAdminTestJSON(base.BaseV2ComputeAdminTest):
"""
Tests Services API. List and Enable/Disable require admin privileges.

View File

@ -23,7 +23,7 @@ from tempest.test import attr
import time
class TenantUsagesTestJSON(base.BaseComputeAdminTest):
class TenantUsagesTestJSON(base.BaseV2ComputeAdminTest):
_interface = 'json'

View File

@ -54,37 +54,19 @@ class BaseComputeTest(tempest.test.BaseTestCase):
os = clients.Manager(interface=cls._interface)
cls.os = os
cls.servers_client = os.servers_client
cls.flavors_client = os.flavors_client
cls.images_client = os.images_client
cls.extensions_client = os.extensions_client
cls.floating_ips_client = os.floating_ips_client
cls.keypairs_client = os.keypairs_client
cls.security_groups_client = os.security_groups_client
cls.quotas_client = os.quotas_client
cls.limits_client = os.limits_client
cls.volumes_extensions_client = os.volumes_extensions_client
cls.volumes_client = os.volumes_client
cls.interfaces_client = os.interfaces_client
cls.fixed_ips_client = os.fixed_ips_client
cls.availability_zone_client = os.availability_zone_client
cls.aggregates_client = os.aggregates_client
cls.services_client = os.services_client
cls.hypervisor_client = os.hypervisor_client
cls.build_interval = cls.config.compute.build_interval
cls.build_timeout = cls.config.compute.build_timeout
cls.ssh_user = cls.config.compute.ssh_user
cls.image_ssh_user = cls.config.compute.image_ssh_user
cls.image_ssh_password = cls.config.compute.image_ssh_password
cls.image_ref = cls.config.compute.image_ref
cls.image_ref_alt = cls.config.compute.image_ref_alt
cls.flavor_ref = cls.config.compute.flavor_ref
cls.flavor_ref_alt = cls.config.compute.flavor_ref_alt
cls.image_ssh_user = cls.config.compute.image_ssh_user
cls.image_ssh_password = cls.config.compute.image_ssh_password
cls.servers = []
cls.images = []
cls.servers_client_v3_auth = os.servers_client_v3_auth
@classmethod
def clear_servers(cls):
for server in cls.servers:
@ -162,7 +144,7 @@ class BaseComputeTest(tempest.test.BaseTestCase):
@classmethod
def create_image_from_server(cls, server_id, **kwargs):
"""Wrapper utility that returns a test server."""
"""Wrapper utility that returns an image created from the server."""
name = rand_name(cls.__name__ + "-image")
if 'name' in kwargs:
name = kwargs.pop('name')
@ -195,12 +177,37 @@ class BaseComputeTest(tempest.test.BaseTestCase):
time.sleep(self.build_interval)
class BaseComputeAdminTest(BaseComputeTest):
"""Base test case class for all Compute Admin API tests."""
class BaseV2ComputeTest(BaseComputeTest):
@classmethod
def setUpClass(cls):
super(BaseComputeAdminTest, cls).setUpClass()
super(BaseV2ComputeTest, cls).setUpClass()
cls.servers_client = cls.os.servers_client
cls.flavors_client = cls.os.flavors_client
cls.images_client = cls.os.images_client
cls.extensions_client = cls.os.extensions_client
cls.floating_ips_client = cls.os.floating_ips_client
cls.keypairs_client = cls.os.keypairs_client
cls.security_groups_client = cls.os.security_groups_client
cls.quotas_client = cls.os.quotas_client
cls.limits_client = cls.os.limits_client
cls.volumes_extensions_client = cls.os.volumes_extensions_client
cls.volumes_client = cls.os.volumes_client
cls.interfaces_client = cls.os.interfaces_client
cls.fixed_ips_client = cls.os.fixed_ips_client
cls.availability_zone_client = cls.os.availability_zone_client
cls.aggregates_client = cls.os.aggregates_client
cls.services_client = cls.os.services_client
cls.hypervisor_client = cls.os.hypervisor_client
cls.servers_client_v3_auth = cls.os.servers_client_v3_auth
class BaseV2ComputeAdminTest(BaseV2ComputeTest):
"""Base test case class for Compute Admin V2 API tests."""
@classmethod
def setUpClass(cls):
super(BaseV2ComputeAdminTest, cls).setUpClass()
admin_username = cls.config.compute_admin.username
admin_password = cls.config.compute_admin.password
admin_tenant = cls.config.compute_admin.tenant_name

View File

@ -20,7 +20,7 @@ from tempest import exceptions
from tempest.test import attr
class FlavorsTestJSON(base.BaseComputeTest):
class FlavorsTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -23,7 +23,7 @@ from tempest import exceptions
from tempest.test import attr
class FloatingIPsTestJSON(base.BaseComputeTest):
class FloatingIPsTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
server_id = None
floating_ip = None

View File

@ -23,7 +23,7 @@ from tempest import exceptions
from tempest.test import attr
class FloatingIPDetailsTestJSON(base.BaseComputeTest):
class FloatingIPDetailsTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -21,7 +21,7 @@ from tempest import exceptions
from tempest.test import attr
class ImagesMetadataTestJSON(base.BaseComputeTest):
class ImagesMetadataTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -23,7 +23,7 @@ from tempest import exceptions
from tempest.test import attr
class ImagesTestJSON(base.BaseComputeTest):
class ImagesTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -30,7 +30,7 @@ from tempest.test import skip_because
LOG = logging.getLogger(__name__)
class ImagesOneServerTestJSON(base.BaseComputeTest):
class ImagesOneServerTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
def tearDown(self):

View File

@ -25,7 +25,7 @@ from tempest.test import attr
LOG = logging.getLogger(__name__)
class ListImageFiltersTestJSON(base.BaseComputeTest):
class ListImageFiltersTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -19,7 +19,7 @@ from tempest.api.compute import base
from tempest.test import attr
class ListImagesTestJSON(base.BaseComputeTest):
class ListImagesTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -21,7 +21,7 @@ from tempest import exceptions
from tempest.test import attr
class KeyPairsTestJSON(base.BaseComputeTest):
class KeyPairsTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -20,7 +20,7 @@ from tempest import exceptions
from tempest.test import attr
class AbsoluteLimitsTestJSON(base.BaseComputeTest):
class AbsoluteLimitsTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -23,7 +23,7 @@ from tempest.test import attr
from tempest.test import skip_because
class SecurityGroupRulesTestJSON(base.BaseComputeTest):
class SecurityGroupRulesTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -25,7 +25,7 @@ from tempest.test import attr
from tempest.test import skip_because
class SecurityGroupsTestJSON(base.BaseComputeTest):
class SecurityGroupsTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -19,7 +19,7 @@ from tempest.test import attr
import time
class AttachInterfacesTestJSON(base.BaseComputeTest):
class AttachInterfacesTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -28,7 +28,7 @@ import tempest.config
from tempest.test import attr
class ServersTestJSON(base.BaseComputeTest):
class ServersTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
run_ssh = tempest.config.TempestConfig().compute.run_ssh
disk_config = 'AUTO'

View File

@ -22,7 +22,7 @@ from tempest.api.compute import base
from tempest.test import attr
class ServerDiskConfigTestJSON(base.BaseComputeTest):
class ServerDiskConfigTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -20,7 +20,7 @@ from tempest import exceptions
from tempest.test import attr
class InstanceActionsTestJSON(base.BaseComputeTest):
class InstanceActionsTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -24,7 +24,7 @@ from tempest.test import attr
from tempest.test import skip_because
class ListServerFiltersTestJSON(base.BaseComputeTest):
class ListServerFiltersTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -24,7 +24,7 @@ from tempest import exceptions
from tempest.test import attr
class ListServersNegativeTestJSON(base.BaseComputeTest):
class ListServersNegativeTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -21,7 +21,7 @@ from tempest import exceptions
from tempest.test import attr
class MultipleCreateTestJSON(base.BaseComputeTest):
class MultipleCreateTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
_name = 'multiple-create-test'

View File

@ -30,7 +30,7 @@ from tempest.test import attr
from tempest.test import skip_because
class ServerActionsTestJSON(base.BaseComputeTest):
class ServerActionsTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
resize_available = tempest.config.TempestConfig().compute.resize_available
run_ssh = tempest.config.TempestConfig().compute.run_ssh

View File

@ -20,7 +20,7 @@ from tempest import exceptions
from tempest.test import attr
class ServerAddressesTest(base.BaseComputeTest):
class ServerAddressesTest(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -20,7 +20,7 @@ from tempest import exceptions
from tempest.test import attr
class ServerMetadataTestJSON(base.BaseComputeTest):
class ServerMetadataTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -22,7 +22,7 @@ from tempest import exceptions
from tempest.test import attr
class ServerPersonalityTestJSON(base.BaseComputeTest):
class ServerPersonalityTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -22,7 +22,7 @@ from tempest import exceptions
from tempest.test import attr
class ServerRescueTestJSON(base.BaseComputeTest):
class ServerRescueTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
run_ssh = tempest.config.TempestConfig().compute.run_ssh

View File

@ -20,7 +20,7 @@ from tempest.common.utils.data_utils import rand_name
from tempest.test import attr
class ServersTestJSON(base.BaseComputeTest):
class ServersTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -26,7 +26,7 @@ from tempest import exceptions
from tempest.test import attr
class ServersNegativeTestJSON(base.BaseComputeTest):
class ServersNegativeTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
def setUp(self):

View File

@ -25,7 +25,7 @@ from tempest.test import attr
from tempest.test import skip_because
class VirtualInterfacesTestJSON(base.BaseComputeTest):
class VirtualInterfacesTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
CONF = config.TempestConfig()

View File

@ -19,7 +19,7 @@ from tempest.api.compute import base
import tempest.config as config
class AuthTokenTestJSON(base.BaseComputeTest):
class AuthTokenTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -27,7 +27,7 @@ from tempest.test import attr
LOG = logging.getLogger(__name__)
class AuthorizationTestJSON(base.BaseComputeTest):
class AuthorizationTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -20,7 +20,7 @@ from tempest.api.compute import base
from tempest.test import attr
class ExtensionsTestJSON(base.BaseComputeTest):
class ExtensionsTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@attr(type='gate')

View File

@ -26,7 +26,7 @@ from tempest import exceptions
from tempest.test import attr
class LiveBlockMigrationTestJSON(base.BaseComputeAdminTest):
class LiveBlockMigrationTestJSON(base.BaseV2ComputeAdminTest):
_host_key = 'OS-EXT-SRV-ATTR:host'
_interface = 'json'

View File

@ -19,7 +19,7 @@ from tempest.api.compute import base
from tempest.test import attr
class QuotasTestJSON(base.BaseComputeTest):
class QuotasTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod

View File

@ -23,7 +23,7 @@ import tempest.config
from tempest.test import attr
class AttachVolumeTestJSON(base.BaseComputeTest):
class AttachVolumeTestJSON(base.BaseV2ComputeTest):
_interface = 'json'
run_ssh = tempest.config.TempestConfig().compute.run_ssh

View File

@ -20,7 +20,7 @@ from tempest.common.utils.data_utils import rand_name
from tempest.test import attr
class VolumesGetTestJSON(base.BaseComputeTest):
class VolumesGetTestJSON(base.BaseV2ComputeTest):
_interface = 'json'

View File

@ -20,7 +20,7 @@ from tempest.common.utils.data_utils import rand_name
from tempest.test import attr
class VolumesTestJSON(base.BaseComputeTest):
class VolumesTestJSON(base.BaseV2ComputeTest):
"""
This test creates a number of 1G volumes. To run successfully,

View File

@ -23,7 +23,7 @@ from tempest import exceptions
from tempest.test import attr
class VolumesNegativeTest(base.BaseComputeTest):
class VolumesNegativeTest(base.BaseV2ComputeTest):
_interface = 'json'
@classmethod