Fix role processing in Patrole
[functest.git] / functest / tests / unit / openstack / tempest / test_conf_utils.py
index 1d5f29a..8988e96 100644 (file)
@@ -13,7 +13,8 @@ import unittest
 
 import mock
 
-from functest.opnfv_tests.openstack.tempest import tempest, conf_utils
+from functest.opnfv_tests.openstack.tempest import conf_utils
+from functest.opnfv_tests.openstack.tempest import tempest
 from functest.utils import config
 from snaps.openstack.os_credentials import OSCreds
 
@@ -76,44 +77,21 @@ class OSTempestConfUtilsTesting(unittest.TestCase):
         # pylint: disable=unused-argument
         tempest_resources = tempest.TempestResourcesManager(
             os_creds=self.os_creds)
-
-        setattr(config.CONF, 'tempest_use_custom_flavors', 'True')
         with self.assertRaises(Exception) as context:
             tempest_resources.create()
         msg = 'Failed to create flavor'
         self.assertTrue(msg in context.exception, msg=str(context.exception))
 
-        setattr(config.CONF, 'tempest_use_custom_flavors', 'False')
-        with self.assertRaises(Exception) as context:
-            tempest_resources.create(use_custom_flavors=True)
-        msg = 'Failed to create flavor'
-        self.assertTrue(msg in context.exception, msg=str(context.exception))
-
-    @staticmethod
-    @mock.patch('functest.opnfv_tests.openstack.tempest.conf_utils'
-                '.LOGGER.info')
-    @mock.patch('functest.utils.functest_utils.execute_command_raise')
-    @mock.patch('functest.utils.functest_utils.execute_command')
-    def test_create_rally_deployment(mock_exec, mock_exec_raise,
-                                     mock_logger_info):
-
-        conf_utils.create_rally_deployment()
-
-        cmd = "rally deployment destroy opnfv-rally"
-        error_msg = "Deployment %s does not exist." % \
-                    getattr(config.CONF, 'rally_deployment_name')
-        mock_logger_info.assert_any_call("Creating Rally environment...")
-        mock_exec.assert_any_call(cmd, error_msg=error_msg, verbose=False)
-
-        cmd = "rally deployment create --fromenv --name="
-        cmd += getattr(config.CONF, 'rally_deployment_name')
-        error_msg = "Problem while creating Rally deployment"
-        mock_exec_raise.assert_any_call(cmd, error_msg=error_msg)
-
-        cmd = "rally deployment check"
-        error_msg = ("OpenStack not responding or "
-                     "faulty Rally deployment.")
-        mock_exec_raise.assert_any_call(cmd, error_msg=error_msg)
+    @mock.patch('subprocess.check_output')
+    def test_create_rally_deployment(self, mock_exec):
+        self.assertEqual(conf_utils.create_rally_deployment(), None)
+        calls = [
+            mock.call(['rally', 'deployment', 'destroy', '--deployment',
+                       str(getattr(config.CONF, 'rally_deployment_name'))]),
+            mock.call(['rally', 'deployment', 'create', '--fromenv', '--name',
+                       str(getattr(config.CONF, 'rally_deployment_name'))]),
+            mock.call(['rally', 'deployment', 'check'])]
+        mock_exec.assert_has_calls(calls)
 
     @mock.patch('functest.opnfv_tests.openstack.tempest.conf_utils'
                 '.LOGGER.debug')
@@ -124,8 +102,7 @@ class OSTempestConfUtilsTesting(unittest.TestCase):
         mock_popen.configure_mock(**attrs)
 
         setattr(config.CONF, 'tempest_verifier_name', 'test_verifier_name')
-        with mock.patch('functest.utils.functest_utils.execute_command_raise',
-                        side_effect=Exception), \
+        with mock.patch('subprocess.Popen', side_effect=Exception), \
                 self.assertRaises(Exception):
             conf_utils.create_verifier()
             mock_logger_debug.assert_any_call("Tempest test_verifier_name"
@@ -211,43 +188,6 @@ class OSTempestConfUtilsTesting(unittest.TestCase):
             self.assertTrue(mock_get_vid.called)
             self.assertTrue(mock_get_did.called)
 
-    def test_backup_config_default(self):
-        with mock.patch('functest.opnfv_tests.openstack.tempest.'
-                        'conf_utils.os.path.exists',
-                        return_value=False), \
-            mock.patch('functest.opnfv_tests.openstack.tempest.'
-                       'conf_utils.os.makedirs') as mock_makedirs, \
-            mock.patch('functest.opnfv_tests.openstack.tempest.'
-                       'conf_utils.shutil.copyfile') as mock_copyfile:
-            conf_utils.backup_tempest_config('test_conf_file')
-            self.assertTrue(mock_makedirs.called)
-            self.assertTrue(mock_copyfile.called)
-
-        with mock.patch('functest.opnfv_tests.openstack.tempest.'
-                        'conf_utils.os.path.exists',
-                        return_value=True), \
-            mock.patch('functest.opnfv_tests.openstack.tempest.'
-                       'conf_utils.shutil.copyfile') as mock_copyfile:
-            conf_utils.backup_tempest_config('test_conf_file')
-            self.assertTrue(mock_copyfile.called)
-
-    def test_conf_tempest_def(self):
-        with mock.patch('functest.opnfv_tests.openstack.tempest.'
-                        'conf_utils.configure_verifier',
-                        return_value='test_conf_file'), \
-            mock.patch('functest.opnfv_tests.openstack.tempest.'
-                       'conf_utils.configure_tempest_update_params')\
-                as mock_upd:
-            conf_utils.configure_tempest('test_dep_dir')
-            self.assertTrue(mock_upd.called)
-
-    def test_gen_test_accounts_file_def(self):
-        with mock.patch("__builtin__.open", mock.mock_open()), \
-            mock.patch('functest.opnfv_tests.openstack.tempest.conf_utils.'
-                       'yaml.dump') as mock_dump:
-            conf_utils.generate_test_accounts_file('test_tenant_id')
-            self.assertTrue(mock_dump.called)
-
     def _test_missing_param(self, params, image_id, flavor_id):
         with mock.patch('functest.opnfv_tests.openstack.tempest.'
                         'conf_utils.ConfigParser.RawConfigParser.'
@@ -259,13 +199,12 @@ class OSTempestConfUtilsTesting(unittest.TestCase):
                        'conf_utils.ConfigParser.RawConfigParser.'
                        'write') as mwrite, \
             mock.patch('__builtin__.open', mock.mock_open()), \
-            mock.patch('functest.opnfv_tests.openstack.tempest.'
-                       'conf_utils.backup_tempest_config'), \
             mock.patch('functest.utils.functest_utils.yaml.safe_load',
                        return_value={'validation': {'ssh_timeout': 300}}):
             os.environ['OS_ENDPOINT_TYPE'] = ''
             conf_utils.configure_tempest_update_params(
-                'test_conf_file', image_id=image_id, flavor_id=flavor_id)
+                'test_conf_file', image_id=image_id,
+                flavor_id=flavor_id)
             mset.assert_any_call(params[0], params[1], params[2])
             self.assertTrue(mread.called)
             self.assertTrue(mwrite.called)
@@ -294,11 +233,10 @@ class OSTempestConfUtilsTesting(unittest.TestCase):
         with mock.patch('functest.opnfv_tests.openstack.tempest.'
                         'conf_utils.os.path.isfile',
                         return_value=False), \
-                mock.patch('functest.opnfv_tests.openstack.tempest.'
-                           'conf_utils.ft_utils.execute_command') as mexe, \
+                mock.patch('subprocess.check_output') as mexe, \
                 self.assertRaises(Exception) as context:
             conf_utils.configure_verifier('test_dep_dir')
-            mexe.assert_any_call("rally verify configure-verifier")
+            mexe.assert_called_once_with("rally verify configure-verifier")
             msg = ("Tempest configuration file 'test_dep_dir/tempest.conf'"
                    " NOT found.")
             self.assertTrue(msg in context.exception)
@@ -307,12 +245,12 @@ class OSTempestConfUtilsTesting(unittest.TestCase):
         with mock.patch('functest.opnfv_tests.openstack.tempest.'
                         'conf_utils.os.path.isfile',
                         return_value=True), \
-            mock.patch('functest.opnfv_tests.openstack.tempest.'
-                       'conf_utils.ft_utils.execute_command') as mexe:
+                mock.patch('subprocess.check_output') as mexe:
             self.assertEqual(conf_utils.configure_verifier('test_dep_dir'),
                              'test_dep_dir/tempest.conf')
-            mexe.assert_any_call("rally verify configure-verifier "
-                                 "--reconfigure")
+            mexe.assert_called_once_with(
+                ['rally', 'verify', 'configure-verifier', '--reconfigure',
+                 '--id', str(getattr(config.CONF, 'tempest_verifier_name'))])
 
 
 if __name__ == "__main__":