port certificates tests into nova v3 part2
this ports the certificates tests and corresponding client
into v3 version.
Partially implements blueprint nova-v3-api-tests
Change-Id: I28c19ac4b105940cafd1aa091bd52aa072961c0e
diff --git a/tempest/api/compute/base.py b/tempest/api/compute/base.py
index d18b749..9cb425a 100644
--- a/tempest/api/compute/base.py
+++ b/tempest/api/compute/base.py
@@ -267,6 +267,7 @@
cls.hypervisor_client = cls.os.hypervisor_v3_client
cls.tenant_usages_client = cls.os.tenant_usages_v3_client
cls.volumes_client = cls.os.volumes_client
+ cls.certificates_client = cls.os.certificates_v3_client
@classmethod
def create_image_from_server(cls, server_id, **kwargs):
diff --git a/tempest/api/compute/v3/certificates/test_certificates.py b/tempest/api/compute/v3/certificates/test_certificates.py
index 4be1cff..fa6f191 100644
--- a/tempest/api/compute/v3/certificates/test_certificates.py
+++ b/tempest/api/compute/v3/certificates/test_certificates.py
@@ -19,14 +19,14 @@
from tempest.test import attr
-class CertificatesTestJSON(base.BaseV2ComputeTest):
+class CertificatesV3TestJSON(base.BaseV3ComputeTest):
_interface = 'json'
@attr(type='gate')
def test_create_and_get_root_certificate(self):
# create certificates
resp, create_body = self.certificates_client.create_certificate()
- self.assertEqual(200, resp.status)
+ self.assertEqual(201, resp.status)
self.assertIn('data', create_body)
self.assertIn('private_key', create_body)
# get the root certificate
@@ -36,5 +36,5 @@
self.assertIn('private_key', body)
-class CertificatesTestXML(CertificatesTestJSON):
+class CertificatesV3TestXML(CertificatesV3TestJSON):
_interface = 'xml'
diff --git a/tempest/clients.py b/tempest/clients.py
index ac79ce0..22ed825 100644
--- a/tempest/clients.py
+++ b/tempest/clients.py
@@ -52,6 +52,8 @@
VolumesExtensionsClientJSON
from tempest.services.compute.v3.json.availability_zone_client import \
AvailabilityZoneV3ClientJSON
+from tempest.services.compute.v3.json.certificates_client import \
+ CertificatesV3ClientJSON
from tempest.services.compute.v3.json.extensions_client import \
ExtensionsV3ClientJSON
from tempest.services.compute.v3.json.hypervisor_client import \
@@ -66,6 +68,8 @@
TenantUsagesV3ClientJSON
from tempest.services.compute.v3.xml.availability_zone_client import \
AvailabilityZoneV3ClientXML
+from tempest.services.compute.v3.xml.certificates_client import \
+ CertificatesV3ClientXML
from tempest.services.compute.v3.xml.extensions_client import \
ExtensionsV3ClientXML
from tempest.services.compute.v3.xml.hypervisor_client import \
@@ -206,6 +210,7 @@
if interface == 'xml':
self.certificates_client = CertificatesClientXML(*client_args)
+ self.certificates_v3_client = CertificatesV3ClientXML(*client_args)
self.servers_client = ServersClientXML(*client_args)
self.servers_v3_client = ServersV3ClientXML(*client_args)
self.limits_client = LimitsClientXML(*client_args)
@@ -257,6 +262,8 @@
elif interface == 'json':
self.certificates_client = CertificatesClientJSON(*client_args)
+ self.certificates_v3_client = CertificatesV3ClientJSON(
+ *client_args)
self.servers_client = ServersClientJSON(*client_args)
self.servers_v3_client = ServersV3ClientJSON(*client_args)
self.limits_client = LimitsClientJSON(*client_args)
diff --git a/tempest/services/compute/v3/json/certificates_client.py b/tempest/services/compute/v3/json/certificates_client.py
index 9fdce17..bf0152b 100644
--- a/tempest/services/compute/v3/json/certificates_client.py
+++ b/tempest/services/compute/v3/json/certificates_client.py
@@ -20,13 +20,13 @@
from tempest.common.rest_client import RestClient
-class CertificatesClientJSON(RestClient):
+class CertificatesV3ClientJSON(RestClient):
def __init__(self, config, username, password, auth_url, tenant_name=None):
- super(CertificatesClientJSON, self).__init__(config, username,
- password,
- auth_url, tenant_name)
- self.service = self.config.compute.catalog_type
+ super(CertificatesV3ClientJSON, self).__init__(config, username,
+ password,
+ auth_url, tenant_name)
+ self.service = self.config.compute.catalog_v3_type
def get_certificate(self, id):
url = "os-certificates/%s" % (id)
diff --git a/tempest/services/compute/v3/xml/certificates_client.py b/tempest/services/compute/v3/xml/certificates_client.py
index 7523352..99dc337 100644
--- a/tempest/services/compute/v3/xml/certificates_client.py
+++ b/tempest/services/compute/v3/xml/certificates_client.py
@@ -19,12 +19,13 @@
from tempest.common.rest_client import RestClientXML
-class CertificatesClientXML(RestClientXML):
+class CertificatesV3ClientXML(RestClientXML):
def __init__(self, config, username, password, auth_url, tenant_name=None):
- super(CertificatesClientXML, self).__init__(config, username, password,
- auth_url, tenant_name)
- self.service = self.config.compute.catalog_type
+ super(CertificatesV3ClientXML, self).__init__(config, username,
+ password,
+ auth_url, tenant_name)
+ self.service = self.config.compute.catalog_v3_type
def get_certificate(self, id):
url = "os-certificates/%s" % (id)