Execute volume tests only when cinder is available
This change makes sure that the scenario tests which require cinder are skipped when the [service_available] cinder option is False. Change-Id: I94c48ecd28acadda39abf4ef794434a72e9a7002
This commit is contained in:
parent
c4b871a79e
commit
1e6b38807e
@ -109,6 +109,22 @@ def requires_resource_type(resource_type):
|
|||||||
return decorator
|
return decorator
|
||||||
|
|
||||||
|
|
||||||
|
def requires_service(service):
|
||||||
|
'''Decorator for tests requiring a specific service being available.
|
||||||
|
|
||||||
|
The decorated test will be skipped when a service is not available. This
|
||||||
|
based on the [service_available] options implemented in tempest
|
||||||
|
'''
|
||||||
|
def decorator(test_method):
|
||||||
|
if not getattr(config.CONF.service_available, service, True):
|
||||||
|
skipper = testtools.skip(
|
||||||
|
"%s service not available, skipping test." % service)
|
||||||
|
return skipper(test_method)
|
||||||
|
else:
|
||||||
|
return test_method
|
||||||
|
return decorator
|
||||||
|
|
||||||
|
|
||||||
def requires_service_type(service_type):
|
def requires_service_type(service_type):
|
||||||
'''Decorator for tests requiring a specific service being available.
|
'''Decorator for tests requiring a specific service being available.
|
||||||
|
|
||||||
@ -125,7 +141,7 @@ def requires_service_type(service_type):
|
|||||||
service_type, conf.region, conf.endpoint_type)
|
service_type, conf.region, conf.endpoint_type)
|
||||||
except kc_exceptions.EndpointNotFound:
|
except kc_exceptions.EndpointNotFound:
|
||||||
skipper = testtools.skip(
|
skipper = testtools.skip(
|
||||||
"%s service not available, skipping test." % service_type)
|
"%s service type not available, skipping test." % service_type)
|
||||||
return skipper(test_method)
|
return skipper(test_method)
|
||||||
else:
|
else:
|
||||||
return test_method
|
return test_method
|
||||||
|
@ -17,6 +17,7 @@ from heat_tempest_plugin.common import test
|
|||||||
from heat_tempest_plugin.tests.scenario import scenario_base
|
from heat_tempest_plugin.tests.scenario import scenario_base
|
||||||
|
|
||||||
|
|
||||||
|
@test.requires_service('cinder')
|
||||||
class BasicResourcesTest(scenario_base.ScenarioTestsBase):
|
class BasicResourcesTest(scenario_base.ScenarioTestsBase):
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
|
@ -25,6 +25,7 @@ LOG = logging.getLogger(__name__)
|
|||||||
|
|
||||||
|
|
||||||
@test.requires_service_feature('volume', 'backup')
|
@test.requires_service_feature('volume', 'backup')
|
||||||
|
@test.requires_service('cinder')
|
||||||
class VolumeBackupRestoreIntegrationTest(scenario_base.ScenarioTestsBase):
|
class VolumeBackupRestoreIntegrationTest(scenario_base.ScenarioTestsBase):
|
||||||
"""Class is responsible for testing of volume backup."""
|
"""Class is responsible for testing of volume backup."""
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user