diff options
author | Feng Pan <fpan@redhat.com> | 2017-08-23 17:26:53 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@opnfv.org> | 2017-08-23 17:26:53 +0000 |
commit | c6f04a5dee991a131a49c2fde9c5990fe2edac4e (patch) | |
tree | 6385096492e6526bf091bae4f3b956a1e865fbba /apex/tests/test_apex_deploy_settings.py | |
parent | 52b4c2556b909a1e61b50f0ff75778bed962ba85 (diff) | |
parent | f4d388ea508ba00771e43a219ac64e0d430b73bd (diff) |
Merge "Migrates Apex to Python"
Diffstat (limited to 'apex/tests/test_apex_deploy_settings.py')
-rw-r--r-- | apex/tests/test_apex_deploy_settings.py | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/apex/tests/test_apex_deploy_settings.py b/apex/tests/test_apex_deploy_settings.py new file mode 100644 index 00000000..312c1f3a --- /dev/null +++ b/apex/tests/test_apex_deploy_settings.py @@ -0,0 +1,101 @@ +############################################################################## +# Copyright (c) 2016 Dan Radez (Red Hat) +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## + +# https://docs.python.org/3/library/io.html +import os +import tempfile + +from nose.tools import assert_equal +from nose.tools import assert_is_instance +from nose.tools import assert_raises + +from apex.settings.deploy_settings import DeploySettings +from apex.settings.deploy_settings import DeploySettingsException +from apex.tests.constants import TEST_CONFIG_DIR + +deploy_files = ('deploy_settings.yaml', + 'os-nosdn-nofeature-noha.yaml', + 'os-nosdn-ovs_dpdk-noha.yaml', + 'os-ocl-nofeature-ha.yaml', + 'os-odl-bgpvpn-ha.yaml', + 'os-odl-bgpvpn-noha.yaml', + 'os-odl-nofeature-ha.yaml', + 'os-nosdn-nofeature-ha.yaml', + 'os-nosdn-ovs_dpdk-ha.yaml', + 'os-nosdn-performance-ha.yaml', + 'os-odl-nofeature-ha.yaml', + 'os-onos-nofeature-ha.yaml', + 'os-onos-sfc-ha.yaml') + +test_deploy_content = ( + 'global_params:', + 'deploy_options: string', + """deploy_options: string +global_params:""", + """global_params: +deploy_options: + error: error +""", + """global_params: +deploy_options: + performance: string +""", + """global_params: +deploy_options: + dataplane: invalid +""", + """global_params: +deploy_options: + performance: + Controller: + error: error +""", + """global_params: +deploy_options: + performance: + InvalidRole: + error: error +""",) + + +class TestIpUtils(object): + @classmethod + def setup_class(klass): + """This method is run once for each class before any tests are run""" + + @classmethod + def teardown_class(klass): + """This method is run once for each class _after_ all tests are run""" + + def setUp(self): + """This method is run once before _each_ test method is executed""" + + def teardown(self): + """This method is run once after _each_ test method is executed""" + + def test_init(self): + for f in deploy_files: + ds = DeploySettings(os.path.join(TEST_CONFIG_DIR, 'deploy', f)) + ds = DeploySettings(ds) + + def test__validate_settings(self): + for c in test_deploy_content: + try: + f = tempfile.NamedTemporaryFile(mode='w') + f.write(c) + f.flush() + assert_raises(DeploySettingsException, + DeploySettings, f.name) + finally: + f.close() + + def test_exception(self): + e = DeploySettingsException("test") + print(e) + assert_is_instance(e, DeploySettingsException) |