Ranger tempest plugin python3
More python 3 fixes These fixes are conducive towards verifying the functionality of ranger in python3.6/stein development. Change-Id: Iadb889a02658c49667a0e83ca5136323791693e1
This commit is contained in:
parent
aadf73a575
commit
3801aa3f18
@ -15,7 +15,6 @@
|
|||||||
|
|
||||||
from oslo_log import log as logging
|
from oslo_log import log as logging
|
||||||
from ranger_tempest_plugin import clients
|
from ranger_tempest_plugin import clients
|
||||||
from ranger_tempest_plugin.services import base_client
|
|
||||||
from tempest import config
|
from tempest import config
|
||||||
from tempest import test
|
from tempest import test
|
||||||
|
|
||||||
@ -31,25 +30,10 @@ class BaseOrmTest(test.BaseTestCase):
|
|||||||
build_timeout = 120
|
build_timeout = 120
|
||||||
build_interval = 10
|
build_interval = 10
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def setup_credentials(cls):
|
|
||||||
cls.set_network_resources(network=False, subnet=False, router=False)
|
|
||||||
super(BaseOrmTest, cls).setup_credentials()
|
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def setup_clients(cls):
|
def setup_clients(cls):
|
||||||
super(BaseOrmTest, cls).setup_clients()
|
super(BaseOrmTest, cls).setup_clients()
|
||||||
cls.identity_client = cls.os_admin.projects_client
|
cls.identity_client = cls.os_admin.projects_client
|
||||||
try:
|
|
||||||
auth_agent = \
|
|
||||||
base_client.RangerAuthProvider(cls.os_primary.credentials)
|
|
||||||
auth_agent.auth_request("GET",
|
|
||||||
CONF.ranger.ranger_rms_base_url,
|
|
||||||
headers=[])
|
|
||||||
except Exception as auth_exception:
|
|
||||||
skip_msg = ("Ranger was unable to authenticate against keystone."
|
|
||||||
"due to exception: %s" % str(auth_exception))
|
|
||||||
raise cls.skipException(skip_msg)
|
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def skip_checks(cls):
|
def skip_checks(cls):
|
||||||
|
@ -40,13 +40,14 @@ class TestTempestCms(cms_base.CmsBaseOrmTest):
|
|||||||
cls._create_cust_validate_creation_on_dcp_and_lcp(
|
cls._create_cust_validate_creation_on_dcp_and_lcp(
|
||||||
**cls.bare_customer)
|
**cls.bare_customer)
|
||||||
|
|
||||||
super(TestTempestCms, cls).resource_setup()
|
cls.addClassResourceCleanup(
|
||||||
|
cls._del_cust_validate_deletion_on_dcp_and_lcp,
|
||||||
|
cls.setup_customer_id)
|
||||||
|
cls.addClassResourceCleanup(
|
||||||
|
cls._del_cust_validate_deletion_on_dcp_and_lcp,
|
||||||
|
cls.bare_customer_id)
|
||||||
|
|
||||||
@classmethod
|
super(TestTempestCms, cls).resource_setup()
|
||||||
def resource_cleanup(cls):
|
|
||||||
cls._del_cust_validate_deletion_on_dcp_and_lcp(cls.setup_customer_id)
|
|
||||||
cls._del_cust_validate_deletion_on_dcp_and_lcp(cls.bare_customer_id)
|
|
||||||
super(TestTempestCms, cls).resource_cleanup()
|
|
||||||
|
|
||||||
def _delete_customer(self, id_, region):
|
def _delete_customer(self, id_, region):
|
||||||
"""Try to delete customer from dcp only"""
|
"""Try to delete customer from dcp only"""
|
||||||
|
@ -24,6 +24,7 @@ class TestTempestCmsNegative(base.BaseOrmTest):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def setup_credentials(cls):
|
def setup_credentials(cls):
|
||||||
|
cls.set_network_resources()
|
||||||
super(TestTempestCmsNegative, cls).setup_credentials()
|
super(TestTempestCmsNegative, cls).setup_credentials()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
@ -19,7 +19,6 @@ import uuid
|
|||||||
from ranger_tempest_plugin import data_utils as orm_data_utils
|
from ranger_tempest_plugin import data_utils as orm_data_utils
|
||||||
from ranger_tempest_plugin.tests.api import fms_base
|
from ranger_tempest_plugin.tests.api import fms_base
|
||||||
from tempest import config
|
from tempest import config
|
||||||
from tempest import test
|
|
||||||
|
|
||||||
from tempest.lib import decorators
|
from tempest.lib import decorators
|
||||||
from tempest.lib import exceptions
|
from tempest.lib import exceptions
|
||||||
@ -33,6 +32,7 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def setup_credentials(cls):
|
def setup_credentials(cls):
|
||||||
|
cls.set_network_resources()
|
||||||
super(TestTempestFms, cls).setup_credentials()
|
super(TestTempestFms, cls).setup_credentials()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
@ -45,6 +45,9 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
|
|
||||||
# create flavor then save off flavor_id for use in test cases
|
# create flavor then save off flavor_id for use in test cases
|
||||||
body = cls._get_flavor_params()
|
body = cls._get_flavor_params()
|
||||||
|
cls.addClassResourceCleanup(
|
||||||
|
cls._del_flv_and_validate_deletion_on_dcp_and_lcp,
|
||||||
|
body['id'])
|
||||||
cls.flavor = cls._create_flv_and_validate_creation_on_dcp_and_lcp(
|
cls.flavor = cls._create_flv_and_validate_creation_on_dcp_and_lcp(
|
||||||
**body)
|
**body)
|
||||||
|
|
||||||
@ -64,7 +67,6 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
cls.custom_es = {'os_extra_specs': {'g': 'guava', 'h': 'honeydew'}}
|
cls.custom_es = {'os_extra_specs': {'g': 'guava', 'h': 'honeydew'}}
|
||||||
cls.client.add_extra_specs(cls.flavor_id, cls.custom_es)
|
cls.client.add_extra_specs(cls.flavor_id, cls.custom_es)
|
||||||
cls._wait_for_flavor_status_on_dcp(cls.flavor_id, 'Success')
|
cls._wait_for_flavor_status_on_dcp(cls.flavor_id, 'Success')
|
||||||
|
|
||||||
super(TestTempestFms, cls).resource_setup()
|
super(TestTempestFms, cls).resource_setup()
|
||||||
|
|
||||||
def _get_flavor_details(self, flavor_id):
|
def _get_flavor_details(self, flavor_id):
|
||||||
@ -76,7 +78,7 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
**orm_data_utils.rand_region_group([CONF.identity.region])
|
**orm_data_utils.rand_region_group([CONF.identity.region])
|
||||||
)
|
)
|
||||||
group_id = body['group']['id']
|
group_id = body['group']['id']
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self.rms_client.delete_region_group,
|
self.rms_client.delete_region_group,
|
||||||
group_id)
|
group_id)
|
||||||
return group_id
|
return group_id
|
||||||
@ -84,7 +86,7 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
def _data_setup(self, post_body):
|
def _data_setup(self, post_body):
|
||||||
flavor = self._create_flv_and_validate_creation_on_dcp_and_lcp(
|
flavor = self._create_flv_and_validate_creation_on_dcp_and_lcp(
|
||||||
**post_body)
|
**post_body)
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._del_flv_and_validate_deletion_on_dcp_and_lcp,
|
self._del_flv_and_validate_deletion_on_dcp_and_lcp,
|
||||||
flavor["id"])
|
flavor["id"])
|
||||||
return flavor
|
return flavor
|
||||||
@ -140,7 +142,7 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
self._wait_for_flavor_status_on_dcp(test_flvr_id, 'Success')
|
self._wait_for_flavor_status_on_dcp(test_flvr_id, 'Success')
|
||||||
|
|
||||||
# add flavor to tempest cleanup
|
# add flavor to tempest cleanup
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._del_flv_and_validate_deletion_on_dcp_and_lcp,
|
self._del_flv_and_validate_deletion_on_dcp_and_lcp,
|
||||||
test_flvr_id)
|
test_flvr_id)
|
||||||
|
|
||||||
@ -150,14 +152,6 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
self.assertEqual(flavor["regions"][0]["name"], CONF.identity.region)
|
self.assertEqual(flavor["regions"][0]["name"], CONF.identity.region)
|
||||||
self.assertEqual(flavor["status"], "Success")
|
self.assertEqual(flavor["status"], "Success")
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def resource_cleanup(cls):
|
|
||||||
flavor_id = cls.flavor['id']
|
|
||||||
test.addClassResourceCleanup(
|
|
||||||
cls._del_flv_and_validate_deletion_on_dcp_and_lcp,
|
|
||||||
flavor_id)
|
|
||||||
super(TestTempestFms, cls).resource_cleanup()
|
|
||||||
|
|
||||||
def _create_region(self, status='functional'):
|
def _create_region(self, status='functional'):
|
||||||
region_name = data_utils.rand_name()
|
region_name = data_utils.rand_name()
|
||||||
_, region = self.os_admin.rms_client.create_region(
|
_, region = self.os_admin.rms_client.create_region(
|
||||||
@ -166,7 +160,7 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
'status': status,
|
'status': status,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self.os_admin.rms_client.delete_region,
|
self.os_admin.rms_client.delete_region,
|
||||||
region_name)
|
region_name)
|
||||||
return region
|
return region
|
||||||
@ -244,7 +238,7 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
replace_tag_body = {"tags": {"ee": "ff", "gg": "hh"}}
|
replace_tag_body = {"tags": {"ee": "ff", "gg": "hh"}}
|
||||||
self._exec_tags_function(self.flavor_id, replace_tag_body,
|
self._exec_tags_function(self.flavor_id, replace_tag_body,
|
||||||
'update', None)
|
'update', None)
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._restore_default_tags,
|
self._restore_default_tags,
|
||||||
self.flavor_id)
|
self.flavor_id)
|
||||||
_, tag_body = self.client.get_tags(self.flavor_id)
|
_, tag_body = self.client.get_tags(self.flavor_id)
|
||||||
@ -271,7 +265,7 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
# test delete_all_tags command - run get_tag again and confirm
|
# test delete_all_tags command - run get_tag again and confirm
|
||||||
# that the tag dict is now empty
|
# that the tag dict is now empty
|
||||||
self._exec_tags_function(self.flavor_id, None, 'delete', None)
|
self._exec_tags_function(self.flavor_id, None, 'delete', None)
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._restore_default_tags,
|
self._restore_default_tags,
|
||||||
self.flavor_id)
|
self.flavor_id)
|
||||||
_, tag_body = self.client.get_tags(self.flavor_id)
|
_, tag_body = self.client.get_tags(self.flavor_id)
|
||||||
@ -327,7 +321,7 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
replace_es_body,
|
replace_es_body,
|
||||||
'update',
|
'update',
|
||||||
None)
|
None)
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._restore_custom_es,
|
self._restore_custom_es,
|
||||||
self.flavor_id)
|
self.flavor_id)
|
||||||
|
|
||||||
@ -359,7 +353,7 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
# run delete ALL extra specs - note that this will only
|
# run delete ALL extra specs - note that this will only
|
||||||
# delete custom extra specs, NOT the default extra specs
|
# delete custom extra specs, NOT the default extra specs
|
||||||
self._exec_ex_spec_function(self.flavor_id, None, 'delete', None)
|
self._exec_ex_spec_function(self.flavor_id, None, 'delete', None)
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._restore_custom_es,
|
self._restore_custom_es,
|
||||||
self.flavor_id)
|
self.flavor_id)
|
||||||
_, flvr_ex_specs = self.client.get_extra_specs(self.flavor_id)
|
_, flvr_ex_specs = self.client.get_extra_specs(self.flavor_id)
|
||||||
@ -409,7 +403,7 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
test_flvr_id = flavor['id']
|
test_flvr_id = flavor['id']
|
||||||
|
|
||||||
# delete the data and do get_flavor to ensure 404-NotFound response
|
# delete the data and do get_flavor to ensure 404-NotFound response
|
||||||
test.addResourceCleanup(
|
self.addCleanup(
|
||||||
self._del_flv_and_validate_deletion_on_dcp_and_lcp,
|
self._del_flv_and_validate_deletion_on_dcp_and_lcp,
|
||||||
test_flvr_id)
|
test_flvr_id)
|
||||||
self.assertRaises(exceptions.NotFound, self.client.get_flavor,
|
self.assertRaises(exceptions.NotFound, self.client.get_flavor,
|
||||||
@ -476,7 +470,7 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
**orm_data_utils.rand_region_group([CONF.identity.region])
|
**orm_data_utils.rand_region_group([CONF.identity.region])
|
||||||
)
|
)
|
||||||
group_id = body['group']['id']
|
group_id = body['group']['id']
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self.rms_client.delete_region_group,
|
self.rms_client.delete_region_group,
|
||||||
group_id)
|
group_id)
|
||||||
|
|
||||||
@ -564,7 +558,7 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
|
|
||||||
self.assertIn('id', body['flavor'])
|
self.assertIn('id', body['flavor'])
|
||||||
test_flvr_id = body['flavor']['id']
|
test_flvr_id = body['flavor']['id']
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._delete_flavor,
|
self._delete_flavor,
|
||||||
test_flvr_id)
|
test_flvr_id)
|
||||||
|
|
||||||
@ -582,7 +576,7 @@ class TestTempestFms(fms_base.FmsBaseOrmTest):
|
|||||||
_, body = self.client.create_flavor(**post_body)
|
_, body = self.client.create_flavor(**post_body)
|
||||||
self.assertIn('id', body['flavor'])
|
self.assertIn('id', body['flavor'])
|
||||||
test_flvr_id = body['flavor']['id']
|
test_flvr_id = body['flavor']['id']
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._delete_flavor,
|
self._delete_flavor,
|
||||||
test_flvr_id)
|
test_flvr_id)
|
||||||
|
|
||||||
|
@ -24,6 +24,7 @@ class TestTempestFmsNegative(base.BaseOrmTest):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def setup_credentials(cls):
|
def setup_credentials(cls):
|
||||||
|
cls.set_network_resources()
|
||||||
super(TestTempestFmsNegative, cls).setup_credentials()
|
super(TestTempestFmsNegative, cls).setup_credentials()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
@ -18,7 +18,6 @@ import uuid
|
|||||||
from ranger_tempest_plugin.data_utils import data_utils
|
from ranger_tempest_plugin.data_utils import data_utils
|
||||||
from ranger_tempest_plugin.tests.api import ims_base
|
from ranger_tempest_plugin.tests.api import ims_base
|
||||||
from tempest import config
|
from tempest import config
|
||||||
from tempest import test
|
|
||||||
|
|
||||||
from tempest.lib import decorators
|
from tempest.lib import decorators
|
||||||
from tempest.lib import exceptions
|
from tempest.lib import exceptions
|
||||||
@ -30,6 +29,7 @@ class TestTempestIms(ims_base.ImsBaseOrmTest):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def setup_credentials(cls):
|
def setup_credentials(cls):
|
||||||
|
cls.set_network_resources()
|
||||||
super(TestTempestIms, cls).setup_credentials()
|
super(TestTempestIms, cls).setup_credentials()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
@ -39,32 +39,36 @@ class TestTempestIms(ims_base.ImsBaseOrmTest):
|
|||||||
@classmethod
|
@classmethod
|
||||||
def resource_setup(cls):
|
def resource_setup(cls):
|
||||||
# setup public image for tempest testing
|
# setup public image for tempest testing
|
||||||
cls.image_params = \
|
cls.image_params_public = \
|
||||||
cls._get_image_params(set_private=False)
|
cls._get_image_params(set_private=False)
|
||||||
|
cls.image_params_private = \
|
||||||
|
cls._get_image_params(set_enabled=False)
|
||||||
|
|
||||||
|
cls.addClassResourceCleanup(
|
||||||
|
cls._del_img_validate_deletion_on_dcp_and_lcp,
|
||||||
|
cls.image_params_public['id'])
|
||||||
|
cls.addClassResourceCleanup(
|
||||||
|
cls._del_img_validate_deletion_on_dcp_and_lcp,
|
||||||
|
cls.image_params_private['id'])
|
||||||
|
|
||||||
|
# setup public image for tempest testing
|
||||||
cls.public_image = \
|
cls.public_image = \
|
||||||
cls._create_img_and_validate_creation_on_dcp_and_lcp(
|
cls._create_img_and_validate_creation_on_dcp_and_lcp(
|
||||||
**cls.image_params)
|
**cls.image_params_public)
|
||||||
|
|
||||||
# setup private image for tempest testing
|
# setup private image for tempest testing
|
||||||
cls.image_params = cls._get_image_params(set_enabled=False)
|
|
||||||
cls.private_image = \
|
cls.private_image = \
|
||||||
cls._create_img_and_validate_creation_on_dcp_and_lcp(
|
cls._create_img_and_validate_creation_on_dcp_and_lcp(
|
||||||
**cls.image_params)
|
**cls.image_params_private)
|
||||||
|
|
||||||
super(TestTempestIms, cls).resource_setup()
|
super(TestTempestIms, cls).resource_setup()
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def resource_cleanup(cls):
|
|
||||||
cls._del_img_validate_deletion_on_dcp_and_lcp(cls.public_image['id'])
|
|
||||||
cls._del_img_validate_deletion_on_dcp_and_lcp(cls.private_image['id'])
|
|
||||||
super(TestTempestIms, cls).resource_cleanup()
|
|
||||||
|
|
||||||
def _data_setup(self, post_body):
|
def _data_setup(self, post_body):
|
||||||
|
self.addCleanup(
|
||||||
|
self._del_img_validate_deletion_on_dcp_and_lcp,
|
||||||
|
post_body["id"])
|
||||||
image = self._create_img_and_validate_creation_on_dcp_and_lcp(
|
image = self._create_img_and_validate_creation_on_dcp_and_lcp(
|
||||||
**post_body)
|
**post_body)
|
||||||
test.addClassResourceCleanup(
|
|
||||||
self._del_img_validate_deletion_on_dcp_and_lcp,
|
|
||||||
image["id"])
|
|
||||||
# only check for Success image status if "regions" is not empty
|
# only check for Success image status if "regions" is not empty
|
||||||
if image["regions"]:
|
if image["regions"]:
|
||||||
self._wait_for_image_status_on_dcp(image["id"], 'Success')
|
self._wait_for_image_status_on_dcp(image["id"], 'Success')
|
||||||
@ -79,15 +83,17 @@ class TestTempestIms(ims_base.ImsBaseOrmTest):
|
|||||||
|
|
||||||
def _create_region(self, status='functional'):
|
def _create_region(self, status='functional'):
|
||||||
region_name = data_utils.rand_name()
|
region_name = data_utils.rand_name()
|
||||||
|
self.addCleanup(
|
||||||
|
self.os_admin.rms_client.delete_region,
|
||||||
|
region_name)
|
||||||
|
|
||||||
_, region = self.os_admin.rms_client.create_region(
|
_, region = self.os_admin.rms_client.create_region(
|
||||||
**{
|
**{
|
||||||
'region_id': region_name,
|
'region_id': region_name,
|
||||||
'status': status,
|
'status': status,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
test.addClassResourceCleanup(
|
|
||||||
self.os_admin.rms_client.delete_region,
|
|
||||||
region_name)
|
|
||||||
return region
|
return region
|
||||||
|
|
||||||
@decorators.idempotent_id('2b1bb28b-4151-4e75-ae1b-d21089c3418c')
|
@decorators.idempotent_id('2b1bb28b-4151-4e75-ae1b-d21089c3418c')
|
||||||
@ -234,7 +240,7 @@ class TestTempestIms(ims_base.ImsBaseOrmTest):
|
|||||||
self._wait_for_image_status_on_dcp(test_image_id, 'Success')
|
self._wait_for_image_status_on_dcp(test_image_id, 'Success')
|
||||||
|
|
||||||
# do not forget to add this account to tempest cleanup
|
# do not forget to add this account to tempest cleanup
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._del_img_validate_deletion_on_dcp_and_lcp,
|
self._del_img_validate_deletion_on_dcp_and_lcp,
|
||||||
test_image_id)
|
test_image_id)
|
||||||
# verify image record created successfully
|
# verify image record created successfully
|
||||||
@ -248,7 +254,7 @@ class TestTempestIms(ims_base.ImsBaseOrmTest):
|
|||||||
post_body = self._get_image_params(set_region=False)
|
post_body = self._get_image_params(set_region=False)
|
||||||
image = self._data_setup(post_body)
|
image = self._data_setup(post_body)
|
||||||
test_image_id = image['id']
|
test_image_id = image['id']
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._del_img_validate_deletion_on_dcp_and_lcp,
|
self._del_img_validate_deletion_on_dcp_and_lcp,
|
||||||
test_image_id)
|
test_image_id)
|
||||||
|
|
||||||
@ -315,18 +321,10 @@ class TestTempestIms(ims_base.ImsBaseOrmTest):
|
|||||||
test_image_id = body['image']['id']
|
test_image_id = body['image']['id']
|
||||||
|
|
||||||
# add image to tempest cleanup
|
# add image to tempest cleanup
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._del_img_validate_deletion_on_dcp_and_lcp,
|
self._del_img_validate_deletion_on_dcp_and_lcp,
|
||||||
test_image_id)
|
test_image_id)
|
||||||
|
|
||||||
# jh629g: changed out below code for above,
|
|
||||||
# on first glance seems to be stronger
|
|
||||||
# validation of deletion, which should be good
|
|
||||||
# for stopping resource leaks
|
|
||||||
|
|
||||||
# do not forget to add this account to tempest cleanup
|
|
||||||
# test.addClassResourceCleanup(self._delete_image, test_image_id)
|
|
||||||
|
|
||||||
_, body = self.client.get_image(test_image_id)
|
_, body = self.client.get_image(test_image_id)
|
||||||
# since region is building it will give error
|
# since region is building it will give error
|
||||||
# Notification to ORD failed
|
# Notification to ORD failed
|
||||||
@ -347,7 +345,7 @@ class TestTempestIms(ims_base.ImsBaseOrmTest):
|
|||||||
test_image_id = body['image']['id']
|
test_image_id = body['image']['id']
|
||||||
|
|
||||||
# add image to tempest cleanup
|
# add image to tempest cleanup
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._del_img_validate_deletion_on_dcp_and_lcp,
|
self._del_img_validate_deletion_on_dcp_and_lcp,
|
||||||
test_image_id)
|
test_image_id)
|
||||||
_, body = self.client.get_image(test_image_id)
|
_, body = self.client.get_image(test_image_id)
|
||||||
@ -400,7 +398,7 @@ class TestTempestIms(ims_base.ImsBaseOrmTest):
|
|||||||
self._wait_for_image_status_on_dcp(test_image_id, 'Success')
|
self._wait_for_image_status_on_dcp(test_image_id, 'Success')
|
||||||
|
|
||||||
# add image to temepst cleanup
|
# add image to temepst cleanup
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._del_img_validate_deletion_on_dcp_and_lcp,
|
self._del_img_validate_deletion_on_dcp_and_lcp,
|
||||||
test_image_id)
|
test_image_id)
|
||||||
# verify image record created successfully
|
# verify image record created successfully
|
||||||
@ -436,7 +434,7 @@ class TestTempestIms(ims_base.ImsBaseOrmTest):
|
|||||||
self._wait_for_image_status_on_dcp(test_image_id, 'Success')
|
self._wait_for_image_status_on_dcp(test_image_id, 'Success')
|
||||||
|
|
||||||
# add image to tempest cleanup
|
# add image to tempest cleanup
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._del_img_validate_deletion_on_dcp_and_lcp,
|
self._del_img_validate_deletion_on_dcp_and_lcp,
|
||||||
test_image_id)
|
test_image_id)
|
||||||
# verify image record created successfully
|
# verify image record created successfully
|
||||||
@ -449,22 +447,23 @@ class TestTempestIms(ims_base.ImsBaseOrmTest):
|
|||||||
def test_create_image_with_uuid(self):
|
def test_create_image_with_uuid(self):
|
||||||
post_body = self._get_image_params()
|
post_body = self._get_image_params()
|
||||||
# set uuid
|
# set uuid
|
||||||
str_uuid = uuid.uuid4().hex
|
post_body['id'] = uuid.uuid4().hex
|
||||||
post_body['id'] = str_uuid
|
|
||||||
|
# add image to tempest cleanup
|
||||||
|
self.addCleanup(
|
||||||
|
self._del_img_validate_deletion_on_dcp_and_lcp,
|
||||||
|
post_body['id'])
|
||||||
|
|
||||||
# call client create_IMAGE and wait till status equals 'Success'
|
# call client create_IMAGE and wait till status equals 'Success'
|
||||||
_, body = self.client.create_image(**post_body)
|
_, body = self.client.create_image(**post_body)
|
||||||
image = body["image"]
|
image = body["image"]
|
||||||
test_image_id = image["id"]
|
|
||||||
self._wait_for_image_status_on_dcp(test_image_id, 'Success')
|
|
||||||
|
|
||||||
# add image to tempest cleanup
|
self._wait_for_image_status_on_dcp(post_body['id'], 'Success')
|
||||||
test.addClassResourceCleanup(
|
|
||||||
self._del_img_validate_deletion_on_dcp_and_lcp,
|
|
||||||
test_image_id)
|
|
||||||
# verify image record created successfully
|
# verify image record created successfully
|
||||||
_, body = self.client.get_image(test_image_id)
|
_, body = self.client.get_image(post_body['id'])
|
||||||
image = body["image"]
|
image = body["image"]
|
||||||
self.assertEqual(image["regions"][0]["id"], str_uuid)
|
self.assertEqual(image["regions"][0]["id"], post_body['id'])
|
||||||
|
|
||||||
@decorators.idempotent_id('ae1223b5-cb75-442b-82eb-488969acc978')
|
@decorators.idempotent_id('ae1223b5-cb75-442b-82eb-488969acc978')
|
||||||
def test_create_flavor_with_region_group(self):
|
def test_create_flavor_with_region_group(self):
|
||||||
@ -480,7 +479,7 @@ class TestTempestIms(ims_base.ImsBaseOrmTest):
|
|||||||
self._wait_for_image_status_on_dcp(test_image_id, 'Success')
|
self._wait_for_image_status_on_dcp(test_image_id, 'Success')
|
||||||
|
|
||||||
# add image to tempest cleanup
|
# add image to tempest cleanup
|
||||||
test.addClassResourceCleanup(
|
self.addCleanup(
|
||||||
self._del_img_validate_deletion_on_dcp_and_lcp,
|
self._del_img_validate_deletion_on_dcp_and_lcp,
|
||||||
test_image_id)
|
test_image_id)
|
||||||
# verify image record created successfully
|
# verify image record created successfully
|
||||||
|
@ -24,6 +24,7 @@ class TestTempestImsNegative(base.BaseOrmTest):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def setup_credentials(cls):
|
def setup_credentials(cls):
|
||||||
|
cls.set_network_resources()
|
||||||
super(TestTempestImsNegative, cls).setup_credentials()
|
super(TestTempestImsNegative, cls).setup_credentials()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
@ -30,6 +30,7 @@ class TestTempestRegionGroup(base.BaseOrmTest):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def setup_credentials(cls):
|
def setup_credentials(cls):
|
||||||
|
cls.set_network_resources()
|
||||||
super(TestTempestRegionGroup, cls).setup_credentials()
|
super(TestTempestRegionGroup, cls).setup_credentials()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
@ -49,23 +50,20 @@ class TestTempestRegionGroup(base.BaseOrmTest):
|
|||||||
cls.setup_ids.append(cls.region_2['id'])
|
cls.setup_ids.append(cls.region_2['id'])
|
||||||
|
|
||||||
_, cls.group_1 = cls.client.create_region_group(
|
_, cls.group_1 = cls.client.create_region_group(
|
||||||
**orm_data_utils.rand_region_group([cls.setup_ids[0]])
|
**orm_data_utils.rand_region_group(cls.setup_ids))
|
||||||
)
|
|
||||||
cls.group_ids.append(cls.group_1['group']['id'])
|
cls.group_ids.append(cls.group_1['group']['id'])
|
||||||
|
|
||||||
_, cls.group_2 = cls.client.create_region_group(
|
_, cls.group_2 = cls.client.create_region_group(
|
||||||
**orm_data_utils.rand_region_group(cls.setup_ids)
|
**orm_data_utils.rand_region_group(cls.setup_ids))
|
||||||
)
|
|
||||||
cls.group_ids.append(cls.group_2['group']['id'])
|
cls.group_ids.append(cls.group_2['group']['id'])
|
||||||
|
|
||||||
super(TestTempestRegionGroup, cls).resource_setup()
|
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def resource_cleanup(cls):
|
|
||||||
for region_id in cls.setup_ids:
|
for region_id in cls.setup_ids:
|
||||||
cls.client.delete_region(region_id)
|
cls.addClassResourceCleanup(cls.client.delete_region, region_id)
|
||||||
for group_id in cls.group_ids:
|
for group_id in cls.group_ids:
|
||||||
cls.client.delete_region_group(group_id)
|
cls.addClassResourceCleanup(cls.client.delete_region_group,
|
||||||
super(TestTempestRegionGroup, cls).resource_cleanup()
|
group_id)
|
||||||
|
|
||||||
|
super(TestTempestRegionGroup, cls).resource_setup()
|
||||||
|
|
||||||
@decorators.idempotent_id('0d377eb2-754d-49c1-9a4f-c7019dfe80ca')
|
@decorators.idempotent_id('0d377eb2-754d-49c1-9a4f-c7019dfe80ca')
|
||||||
def test_update_group(self):
|
def test_update_group(self):
|
||||||
@ -95,12 +93,18 @@ class TestTempestRegionGroup(base.BaseOrmTest):
|
|||||||
_, region_group_details = self.client.get_region_group(
|
_, region_group_details = self.client.get_region_group(
|
||||||
region_group['group']['id']
|
region_group['group']['id']
|
||||||
)
|
)
|
||||||
self.assertEqual(
|
self.assertIn(
|
||||||
region_group_details['regions'],
|
self.setup_ids[0],
|
||||||
[self.region_1['id'], self.region_2['id']]
|
region_group_details['regions']
|
||||||
)
|
)
|
||||||
# add to cleanup
|
self.assertIn(
|
||||||
self.group_ids.append(region_group['group']['id'])
|
self.setup_ids[1],
|
||||||
|
region_group_details['regions']
|
||||||
|
)
|
||||||
|
|
||||||
|
self.addCleanup(
|
||||||
|
self.client.delete_region_group,
|
||||||
|
region_group['group']['id'])
|
||||||
|
|
||||||
@decorators.idempotent_id('504cc5cb-bc19-48ea-9456-16f5b24c9530')
|
@decorators.idempotent_id('504cc5cb-bc19-48ea-9456-16f5b24c9530')
|
||||||
def test_delete_region_group(self):
|
def test_delete_region_group(self):
|
||||||
@ -110,9 +114,14 @@ class TestTempestRegionGroup(base.BaseOrmTest):
|
|||||||
_, region_group_details = self.client.get_region_group(
|
_, region_group_details = self.client.get_region_group(
|
||||||
region_group['group']['id']
|
region_group['group']['id']
|
||||||
)
|
)
|
||||||
self.assertEqual(
|
|
||||||
region_group_details['regions'],
|
self.assertIn(
|
||||||
[self.region_1['id'], self.region_2['id']]
|
self.setup_ids[0],
|
||||||
|
region_group_details['regions']
|
||||||
|
)
|
||||||
|
self.assertIn(
|
||||||
|
self.setup_ids[1],
|
||||||
|
region_group_details['regions']
|
||||||
)
|
)
|
||||||
|
|
||||||
self.client.delete_region_group(region_group['group']['id'])
|
self.client.delete_region_group(region_group['group']['id'])
|
||||||
|
@ -24,6 +24,7 @@ class TestTempestRegGroupNegative(base.BaseOrmTest):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def setup_credentials(cls):
|
def setup_credentials(cls):
|
||||||
|
cls.set_network_resources()
|
||||||
super(TestTempestRegGroupNegative, cls).setup_credentials()
|
super(TestTempestRegGroupNegative, cls).setup_credentials()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
@ -51,13 +51,10 @@ class TestTempestRegion(rms_base.RmsBaseOrmTest):
|
|||||||
'designType': 'large'})
|
'designType': 'large'})
|
||||||
cls.setup_ids.append(cls.region_3['id'])
|
cls.setup_ids.append(cls.region_3['id'])
|
||||||
|
|
||||||
super(TestTempestRegion, cls).resource_setup()
|
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def resource_cleanup(cls):
|
|
||||||
for region_id in cls.setup_ids:
|
for region_id in cls.setup_ids:
|
||||||
cls.client.delete_region(region_id)
|
cls.addClassResourceCleanup(cls.client.delete_region, region_id)
|
||||||
super(TestTempestRegion, cls).resource_cleanup()
|
|
||||||
|
super(TestTempestRegion, cls).resource_setup()
|
||||||
|
|
||||||
@decorators.idempotent_id('829c7da0-2332-4f80-ad35-24306b67ed0e')
|
@decorators.idempotent_id('829c7da0-2332-4f80-ad35-24306b67ed0e')
|
||||||
def test_create_and_delete_region(self):
|
def test_create_and_delete_region(self):
|
||||||
|
@ -24,6 +24,7 @@ class TestTempestRegionsNegative(base.BaseOrmTest):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def setup_credentials(cls):
|
def setup_credentials(cls):
|
||||||
|
cls.set_network_resources()
|
||||||
super(TestTempestRegionsNegative, cls).setup_credentials()
|
super(TestTempestRegionsNegative, cls).setup_credentials()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
Loading…
x
Reference in New Issue
Block a user