From 43d6672e637a5b5b68ac4c382140996b4b9b17da Mon Sep 17 00:00:00 2001 From: Cédric Ollivier Date: Tue, 26 Jun 2018 08:23:25 +0200 Subject: Inherit rally from VmReady1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It also fixes clean(). Change-Id: I42d1305d5cdb5a717cfa7fce26798ac7102310f7 Signed-off-by: Cédric Ollivier --- functest/tests/unit/openstack/rally/test_rally.py | 169 +++------------------- functest/tests/unit/utils/test_functest_utils.py | 66 --------- 2 files changed, 19 insertions(+), 216 deletions(-) (limited to 'functest/tests') diff --git a/functest/tests/unit/openstack/rally/test_rally.py b/functest/tests/unit/openstack/rally/test_rally.py index f7523b4a0..28f6055bd 100644 --- a/functest/tests/unit/openstack/rally/test_rally.py +++ b/functest/tests/unit/openstack/rally/test_rally.py @@ -13,6 +13,7 @@ import os import unittest import mock +import munch from xtesting.core import testcase from functest.opnfv_tests.openstack.rally import rally @@ -21,19 +22,24 @@ from functest.opnfv_tests.openstack.rally import rally class OSRallyTesting(unittest.TestCase): # pylint: disable=too-many-public-methods def setUp(self): - with mock.patch('os_client_config.make_shade') as mock_make_shade: + with mock.patch('os_client_config.get_config') as mock_get_config, \ + mock.patch('shade.OpenStackCloud') as mock_shade: self.rally_base = rally.RallyBase() - self.assertTrue(mock_make_shade.called) + self.rally_base.image = munch.Munch(name='foo') + self.rally_base.flavor = munch.Munch(name='foo') + self.rally_base.flavor_alt = munch.Munch(name='bar') + self.assertTrue(mock_get_config.called) + self.assertTrue(mock_shade.called) def test_build_task_args_missing_floating_network(self): os.environ['OS_AUTH_URL'] = '' - self.rally_base.ext_net_name = '' + self.rally_base.ext_net = None task_args = self.rally_base._build_task_args('test_file_name') self.assertEqual(task_args['floating_network'], '') def test_build_task_args_missing_net_id(self): os.environ['OS_AUTH_URL'] = '' - self.rally_base.priv_net_id = '' + self.rally_base.network = None task_args = self.rally_base._build_task_args('test_file_name') self.assertEqual(task_args['netid'], '') @@ -279,138 +285,24 @@ class OSRallyTesting(unittest.TestCase): with self.assertRaises(Exception): self.rally_base._prepare_env() - @mock.patch('functest.utils.functest_utils.get_external_network') - def test_prepare_env_image_missing(self, *args): - # pylint: disable=unused-argument - self.rally_base.TESTS = ['test1', 'test2'] - self.rally_base.test_name = 'test1' - with mock.patch.object(self.rally_base.cloud, 'list_hypervisors'), \ - mock.patch.object(self.rally_base.cloud, 'create_image', - return_value=None): - with self.assertRaises(Exception): - self.rally_base._prepare_env() - - @mock.patch('functest.utils.functest_utils.get_external_network') - def test_prepare_env_network_creation_failed(self, *args): - # pylint: disable=unused-argument - self.rally_base.TESTS = ['test1', 'test2'] - self.rally_base.test_name = 'test1' - with mock.patch.object(self.rally_base.cloud, - 'list_hypervisors') as mock_list_hyperv, \ - mock.patch.object(self.rally_base.cloud, - 'create_image') as mock_create_img, \ - mock.patch.object(self.rally_base.cloud, 'create_network', - return_value=None) as mock_create_net: - with self.assertRaises(Exception): - self.rally_base._prepare_env() - mock_create_net.assert_called() - mock_create_img.assert_called() - mock_list_hyperv.assert_called() - - @mock.patch('functest.utils.functest_utils.get_external_network') - def test_prepare_env_subnet_creation_failed(self, *args): - # pylint: disable=unused-argument - self.rally_base.TESTS = ['test1', 'test2'] - self.rally_base.test_name = 'test1' - with mock.patch.object(self.rally_base.cloud, - 'list_hypervisors') as mock_list_hyperv, \ - mock.patch.object(self.rally_base.cloud, - 'create_image') as mock_create_img, \ - mock.patch.object(self.rally_base.cloud, - 'create_network') as mock_create_net, \ - mock.patch.object(self.rally_base.cloud, 'create_subnet', - return_value=None) as mock_create_subnet: - with self.assertRaises(Exception): - self.rally_base._prepare_env() - mock_create_subnet.assert_called() - mock_create_net.assert_called() - mock_create_img.assert_called() - mock_list_hyperv.assert_called() - - @mock.patch('functest.utils.functest_utils.get_external_network') - def test_prepare_env_router_creation_failed(self, *args): - # pylint: disable=unused-argument - self.rally_base.TESTS = ['test1', 'test2'] - self.rally_base.test_name = 'test1' - with mock.patch.object(self.rally_base.cloud, - 'list_hypervisors') as mock_list_hyperv, \ - mock.patch.object(self.rally_base.cloud, - 'create_image') as mock_create_img, \ - mock.patch.object(self.rally_base.cloud, - 'create_network') as mock_create_net, \ - mock.patch.object(self.rally_base.cloud, - 'create_subnet') as mock_create_subnet, \ - mock.patch.object(self.rally_base.cloud, 'create_router', - return_value=None) as mock_create_router: - with self.assertRaises(Exception): - self.rally_base._prepare_env() - mock_create_router.assert_called() - mock_create_subnet.assert_called() - mock_create_net.assert_called() - mock_create_img.assert_called() - mock_list_hyperv.assert_called() - - @mock.patch('functest.utils.functest_utils.get_external_network') - def test_prepare_env_flavor_creation_failed(self, *args): - # pylint: disable=unused-argument - self.rally_base.TESTS = ['test1', 'test2'] - self.rally_base.test_name = 'test1' - with mock.patch.object(self.rally_base.cloud, - 'list_hypervisors') as mock_list_hyperv, \ - mock.patch.object(self.rally_base.cloud, - 'create_image') as mock_create_img, \ - mock.patch.object(self.rally_base.cloud, - 'create_network') as mock_create_net, \ - mock.patch.object(self.rally_base.cloud, - 'create_subnet') as mock_create_subnet, \ - mock.patch.object(self.rally_base.cloud, - 'add_router_interface') as mock_add_router_if, \ - mock.patch.object(self.rally_base.cloud, - 'create_router') as mock_create_router, \ - mock.patch.object(self.rally_base.cloud, 'create_flavor', - return_value=None) as mock_create_flavor: - with self.assertRaises(Exception): - self.rally_base._prepare_env() - mock_create_flavor.assert_called_once() - mock_add_router_if.assert_called() - mock_create_router.assert_called() - mock_create_subnet.assert_called() - mock_create_net.assert_called() - mock_create_img.assert_called() - mock_list_hyperv.assert_called() - - @mock.patch('functest.utils.functest_utils.get_external_network') + @mock.patch('functest.opnfv_tests.openstack.rally.rally.RallyBase.' + 'get_external_network') def test_prepare_env_flavor_alt_creation_failed(self, *args): # pylint: disable=unused-argument self.rally_base.TESTS = ['test1', 'test2'] self.rally_base.test_name = 'test1' with mock.patch.object(self.rally_base.cloud, 'list_hypervisors') as mock_list_hyperv, \ - mock.patch.object(self.rally_base.cloud, - 'create_image') as mock_create_img, \ - mock.patch.object(self.rally_base.cloud, - 'create_network') as mock_create_net, \ - mock.patch.object(self.rally_base.cloud, - 'create_subnet') as mock_create_subnet, \ - mock.patch.object(self.rally_base.cloud, - 'add_router_interface') as mock_add_router_if, \ - mock.patch.object(self.rally_base.cloud, - 'create_router') as mock_create_router, \ mock.patch.object(self.rally_base.cloud, 'set_flavor_specs') as mock_set_flavor_specs, \ mock.patch.object(self.rally_base.cloud, 'create_flavor', - side_effect=[mock.Mock(), None]) \ + side_effect=Exception) \ as mock_create_flavor: with self.assertRaises(Exception): self.rally_base._prepare_env() - self.assertEqual(mock_create_flavor.call_count, 2) - mock_set_flavor_specs.assert_called_once() - mock_add_router_if.assert_called() - mock_create_router.assert_called() - mock_create_subnet.assert_called() - mock_create_net.assert_called() - mock_create_img.assert_called() - mock_list_hyperv.assert_called() + mock_list_hyperv.assert_called_once() + mock_create_flavor.assert_called_once() + mock_set_flavor_specs.assert_not_called() @mock.patch('functest.opnfv_tests.openstack.rally.rally.RallyBase.' '_run_task') @@ -431,31 +323,10 @@ class OSRallyTesting(unittest.TestCase): def test_clean_up_default(self): with mock.patch.object(self.rally_base.cloud, - 'delete_flavor') as mock_delete_flavor, \ - mock.patch.object(self.rally_base.cloud, - 'remove_router_interface') \ - as mock_remove_router_if, \ - mock.patch.object(self.rally_base.cloud, - 'delete_router') as mock_delete_router, \ - mock.patch.object(self.rally_base.cloud, - 'delete_subnet') as mock_delete_subnet, \ - mock.patch.object(self.rally_base.cloud, - 'delete_network') as mock_delete_net, \ - mock.patch.object(self.rally_base.cloud, - 'delete_image') as mock_delete_img: + 'delete_flavor') as mock_delete_flavor: self.rally_base.flavor_alt = mock.Mock() - self.rally_base.flavor = mock.Mock() - self.rally_base.router = mock.Mock() - self.rally_base.subnet = mock.Mock() - self.rally_base.network = mock.Mock() - self.rally_base.image = mock.Mock() - self.rally_base._clean_up() - self.assertEqual(mock_delete_flavor.call_count, 2) - mock_remove_router_if.assert_called() - mock_delete_router.assert_called() - mock_delete_subnet.assert_called() - mock_delete_net.assert_called() - mock_delete_img.assert_called() + self.rally_base.clean() + self.assertEqual(mock_delete_flavor.call_count, 1) @mock.patch('functest.opnfv_tests.openstack.tempest.conf_utils.' 'create_rally_deployment') @@ -465,8 +336,6 @@ class OSRallyTesting(unittest.TestCase): '_run_tests') @mock.patch('functest.opnfv_tests.openstack.rally.rally.RallyBase.' '_generate_report') - @mock.patch('functest.opnfv_tests.openstack.rally.rally.RallyBase.' - '_clean_up') def test_run_default(self, *args): self.assertEqual(self.rally_base.run(), testcase.TestCase.EX_OK) for func in args: diff --git a/functest/tests/unit/utils/test_functest_utils.py b/functest/tests/unit/utils/test_functest_utils.py index 7debcc1df..d35ed8ced 100644 --- a/functest/tests/unit/utils/test_functest_utils.py +++ b/functest/tests/unit/utils/test_functest_utils.py @@ -11,11 +11,9 @@ import logging import time -import os import unittest import mock -import munch import pkg_resources from functest.utils import functest_utils @@ -220,70 +218,6 @@ class FunctestUtilsTesting(unittest.TestCase): self.test_file), 'test_image_name') - def test_get_extnetwork_nocloud(self): - with self.assertRaises(AssertionError): - functest_utils.get_external_network(None) - - def test_get_extnetwork_env_ok1(self): - cloud = mock.Mock() - cloud.get_network.return_value = munch.Munch(name="dummy") - os.environ["EXTERNAL_NETWORK"] = 'dummy' - self.assertEqual( - functest_utils.get_external_network(cloud), - cloud.get_network.return_value) - cloud.get_network.assert_called_once_with( - 'dummy', {'router:external': True}) - cloud.list_networks.assert_not_called() - - def test_get_extnetwork_env_ok2(self): - cloud = mock.Mock() - cloud.get_network.return_value = None - cloud.list_networks.return_value = None - os.environ["EXTERNAL_NETWORK"] = 'dummy' - self.assertEqual(functest_utils.get_external_network(cloud), None) - cloud.get_network.assert_called_once_with( - 'dummy', {'router:external': True}) - cloud.list_networks.assert_called_once_with( - {'router:external': True}) - - def test_get_extnetwork_env_ko(self): - cloud = mock.Mock() - cloud.get_network.return_value = None - cloud.list_networks.return_value = [munch.Munch(name="dummy")] - os.environ["EXTERNAL_NETWORK"] = 'dummy' - self.assertEqual( - functest_utils.get_external_network(cloud), - cloud.list_networks.return_value[0]) - cloud.get_network.assert_called_once_with( - 'dummy', {'router:external': True}) - cloud.list_networks.assert_called_once_with( - {'router:external': True}) - - def test_get_extnetwork_noenv_ko(self): - try: - del os.environ["EXTERNAL_NETWORK"] - except Exception: # pylint: disable=broad-except - pass - cloud = mock.Mock() - cloud.list_networks.return_value = None - self.assertEqual(functest_utils.get_external_network(cloud), None) - cloud.get_network.assert_not_called() - cloud.list_networks.assert_called_once_with( - {'router:external': True}) - - def test_get_extnetwork_noenv_ok(self): - try: - del os.environ["EXTERNAL_NETWORK"] - except Exception: # pylint: disable=broad-except - pass - cloud = mock.Mock() - cloud.list_networks.return_value = [munch.Munch(name="dummy")] - self.assertEqual( - functest_utils.get_external_network(cloud), - cloud.list_networks.return_value[0]) - cloud.get_network.assert_not_called() - cloud.list_networks.assert_called_once_with( - {'router:external': True}) if __name__ == "__main__": logging.disable(logging.CRITICAL) -- cgit 1.2.3-korg