summaryrefslogtreecommitdiffstats
path: root/snaps
diff options
context:
space:
mode:
Diffstat (limited to 'snaps')
-rw-r--r--snaps/openstack/tests/os_source_file_test.py16
-rw-r--r--snaps/openstack/utils/tests/nova_utils_tests.py3
-rw-r--r--snaps/test_runner.py4
-rw-r--r--snaps/test_suite_builder.py8
4 files changed, 20 insertions, 11 deletions
diff --git a/snaps/openstack/tests/os_source_file_test.py b/snaps/openstack/tests/os_source_file_test.py
index c7d64d3..7e70ed0 100644
--- a/snaps/openstack/tests/os_source_file_test.py
+++ b/snaps/openstack/tests/os_source_file_test.py
@@ -31,7 +31,8 @@ dev_os_env_file = pkg_resources.resource_filename(
class OSComponentTestCase(unittest.TestCase):
def __init__(self, method_name='runTest', os_creds=None, ext_net_name=None,
- image_metadata=None, log_level=logging.DEBUG):
+ flavor_metadata=None, image_metadata=None,
+ log_level=logging.DEBUG):
"""
Super for test classes requiring a connection to OpenStack
:param method_name: default 'runTest'
@@ -39,6 +40,8 @@ class OSComponentTestCase(unittest.TestCase):
in the package snaps.openstack.tests.conf.os_env.yaml
:param ext_net_name: the name of the external network that is used for
creating routers for floating IPs
+ :param flavor_metadata: dict() to be sent directly into the Nova client
+ generally used for page sizes
:param image_metadata: ability to override images being used in the
tests (see examples/image-metadata)
:param log_level: the logging level of your test run (default DEBUG)
@@ -60,11 +63,13 @@ class OSComponentTestCase(unittest.TestCase):
test_conf = file_utils.read_yaml(dev_os_env_file)
self.ext_net_name = test_conf.get('ext_net')
+ self.flavor_metadata = flavor_metadata
self.image_metadata = image_metadata
@staticmethod
def parameterize(testcase_klass, os_creds, ext_net_name,
- image_metadata=None, log_level=logging.DEBUG):
+ flavor_metadata=None, image_metadata=None,
+ log_level=logging.DEBUG):
""" Create a suite containing all tests taken from the given
subclass, passing them the parameter 'param'.
"""
@@ -73,7 +78,7 @@ class OSComponentTestCase(unittest.TestCase):
suite = unittest.TestSuite()
for name in test_names:
suite.addTest(testcase_klass(name, os_creds, ext_net_name,
- image_metadata, log_level))
+ flavor_metadata, image_metadata, log_level))
return suite
def __clean__(self):
@@ -112,12 +117,11 @@ class OSIntegrationTestCase(OSComponentTestCase):
"""
super(OSIntegrationTestCase, self).__init__(
method_name=method_name, os_creds=os_creds,
- ext_net_name=ext_net_name, image_metadata=image_metadata,
- log_level=log_level)
+ ext_net_name=ext_net_name, flavor_metadata=flavor_metadata,
+ image_metadata=image_metadata, log_level=log_level)
self.netconf_override = netconf_override
self.use_keystone = use_keystone
self.keystone = None
- self.flavor_metadata = flavor_metadata
self.user_roles = None
@staticmethod
diff --git a/snaps/openstack/utils/tests/nova_utils_tests.py b/snaps/openstack/utils/tests/nova_utils_tests.py
index f5df865..881598a 100644
--- a/snaps/openstack/utils/tests/nova_utils_tests.py
+++ b/snaps/openstack/utils/tests/nova_utils_tests.py
@@ -399,7 +399,8 @@ class NovaUtilsInstanceVolumeTests(OSComponentTestCase):
self.flavor_creator = OpenStackFlavor(
self.os_creds,
FlavorConfig(
- name=guid + '-flavor-name', ram=256, disk=10, vcpus=1))
+ name=guid + '-flavor-name', ram=256, disk=10, vcpus=1,
+ metadata=self.flavor_metadata))
self.flavor_creator.create()
# Create Volume
diff --git a/snaps/test_runner.py b/snaps/test_runner.py
index 5eaea53..830881a 100644
--- a/snaps/test_runner.py
+++ b/snaps/test_runner.py
@@ -87,8 +87,8 @@ def __create_concurrent_test_suite(
if run_api_tests:
tsb.add_openstack_api_tests(
suite=suite, os_creds=os_creds, ext_net_name=ext_net_name,
- use_keystone=use_keystone, image_metadata=image_metadata,
- log_level=log_level)
+ use_keystone=use_keystone, flavor_metadata=flavor_metadata,
+ image_metadata=image_metadata, log_level=log_level)
# Long running integration type tests
if run_integration_tests:
diff --git a/snaps/test_suite_builder.py b/snaps/test_suite_builder.py
index e47becd..35a39f2 100644
--- a/snaps/test_suite_builder.py
+++ b/snaps/test_suite_builder.py
@@ -317,7 +317,8 @@ def add_openstack_client_tests(suite, os_creds, ext_net_name,
def add_openstack_api_tests(suite, os_creds, ext_net_name, use_keystone=True,
- image_metadata=None, log_level=logging.INFO):
+ flavor_metadata=None, image_metadata=None,
+ log_level=logging.INFO):
"""
Adds tests written to exercise all existing OpenStack APIs
:param suite: the unittest.TestSuite object to which to add the tests
@@ -328,6 +329,9 @@ def add_openstack_api_tests(suite, os_creds, ext_net_name, use_keystone=True,
:param use_keystone: when True, tests requiring direct access to Keystone
are added as these need to be running on a host that
has access to the cloud's private network
+ :param flavor_metadata: dict() object containing the metadata required by
+ your flavor based on your configuration:
+ (i.e. {'hw:mem_page_size': 'any'})
:param image_metadata: dict() object containing metadata for creating an
image with custom config
(see YAML files in examples/image-metadata)
@@ -383,7 +387,7 @@ def add_openstack_api_tests(suite, os_creds, ext_net_name, use_keystone=True,
suite.addTest(OSComponentTestCase.parameterize(
NovaUtilsInstanceVolumeTests, os_creds=os_creds,
ext_net_name=ext_net_name, log_level=log_level,
- image_metadata=image_metadata))
+ flavor_metadata=flavor_metadata, image_metadata=image_metadata))
suite.addTest(OSComponentTestCase.parameterize(
CreateFlavorTests, os_creds=os_creds, ext_net_name=ext_net_name,
log_level=log_level))