diff options
author | Ross Brattain <ross.b.brattain@intel.com> | 2016-12-05 16:11:54 -0500 |
---|---|---|
committer | Ross Brattain <ross.b.brattain@intel.com> | 2017-01-12 18:25:04 -0800 |
commit | f036e9898a69f5041f9cde02e3652c29e2de1643 (patch) | |
tree | 36e5eea75811bb640bb30f442f5a3c617e945909 /tests/unit/benchmark/core | |
parent | 5f0b3d417244397b2d5e61c7a6ddd145f1d25046 (diff) |
Add support for Python 3
Porting to Python3 using Openstack guidelines:
https://wiki.openstack.org/wiki/Python3
This passes unittests on Python 3.5 and passes opnfv_smoke suite
Updates:
use six for urlparse and urlopen
fix exception.message attribute removal
run unittests on python3
use unitest.mock on python 3
fix open mock for vsperf
fix float division by using delta/eplison comparison
use unicode in StringIO
use plugin/sample_config.yaml relative path from test case
fixed apexlake unittests
upgraded to mock 2.0.0 to match python3 unittest.mock features
fixed flake8 issues
implement safe JSON decode with oslo_serialization.jsonutils.dump_as_bytes()
implement safe unicode encode/decode with oslo_utils.encodeutils
heat: convert pub key file from bytes to unicode
pkg_resources returns raw bytes, in python3
we have to decode this to utf-8 unicode
so JSON can encode it for heat template
JIRA: YARDSTICK-452
Change-Id: Ib80dd1d0c0eb0592acd832b82f6a7f8f7c20bfda
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
Diffstat (limited to 'tests/unit/benchmark/core')
-rw-r--r-- | tests/unit/benchmark/core/test_plugin.py | 17 | ||||
-rw-r--r-- | tests/unit/benchmark/core/test_task.py | 34 | ||||
-rw-r--r-- | tests/unit/benchmark/core/test_testcase.py | 2 |
3 files changed, 37 insertions, 16 deletions
diff --git a/tests/unit/benchmark/core/test_plugin.py b/tests/unit/benchmark/core/test_plugin.py index 441116a25..edc103415 100644 --- a/tests/unit/benchmark/core/test_plugin.py +++ b/tests/unit/benchmark/core/test_plugin.py @@ -10,16 +10,27 @@ ############################################################################## # Unittest for yardstick.benchmark.core.plugin - -import mock +from __future__ import absolute_import +import os +from os.path import dirname as dirname + +try: + from unittest import mock +except ImportError: + import mock import unittest from yardstick.benchmark.core import plugin class Arg(object): + def __init__(self): - self.input_file = ('plugin/sample_config.yaml',) + # self.input_file = ('plugin/sample_config.yaml',) + self.input_file = [ + os.path.join(os.path.abspath( + dirname(dirname(dirname(dirname(dirname(__file__)))))), + 'plugin/sample_config.yaml')] @mock.patch('yardstick.benchmark.core.plugin.ssh') diff --git a/tests/unit/benchmark/core/test_task.py b/tests/unit/benchmark/core/test_task.py index 463c43e1f..5dd32ea17 100644 --- a/tests/unit/benchmark/core/test_task.py +++ b/tests/unit/benchmark/core/test_task.py @@ -11,10 +11,18 @@ # Unittest for yardstick.benchmark.core.task +from __future__ import print_function + +from __future__ import absolute_import import os -import mock import unittest +try: + from unittest import mock +except ImportError: + import mock + + from yardstick.benchmark.core import task @@ -28,9 +36,9 @@ class TaskTestCase(unittest.TestCase): } scenario_cfg = {"nodes": nodes} server_info = { - "ip": "10.20.0.3", - "user": "root", - "key_filename": "/root/.ssh/id_rsa" + "ip": "10.20.0.3", + "user": "root", + "key_filename": "/root/.ssh/id_rsa" } mock_context.get_server.return_value = server_info context_cfg = task.parse_nodes_with_context(scenario_cfg) @@ -48,7 +56,7 @@ class TaskTestCase(unittest.TestCase): 'duration': 60, 'interval': 1, 'type': 'Duration' - }, + }, 'type': 'Ping' } @@ -82,8 +90,8 @@ class TaskTestCase(unittest.TestCase): t = task.TaskParser(self._get_file_abspath(SAMPLE_SCENARIO_PATH)) mock_environ.get.side_effect = ['huawei-pod1', 'compass'] task_files, task_args, task_args_fnames = t.parse_suite() - print ("files=%s, args=%s, fnames=%s" % (task_files, task_args, - task_args_fnames)) + print("files=%s, args=%s, fnames=%s" % (task_files, task_args, + task_args_fnames)) self.assertEqual(task_files[0], 'tests/opnfv/test_cases/opnfv_yardstick_tc037.yaml') self.assertEqual(task_files[1], @@ -99,8 +107,8 @@ class TaskTestCase(unittest.TestCase): t = task.TaskParser(self._get_file_abspath(SAMPLE_SCENARIO_PATH)) mock_environ.get.side_effect = ['huawei-pod1', 'compass'] task_files, task_args, task_args_fnames = t.parse_suite() - print ("files=%s, args=%s, fnames=%s" % (task_files, task_args, - task_args_fnames)) + print("files=%s, args=%s, fnames=%s" % (task_files, task_args, + task_args_fnames)) self.assertEqual(task_files[0], 'tests/opnfv/test_cases/opnfv_yardstick_tc037.yaml') self.assertEqual(task_files[1], @@ -117,8 +125,8 @@ class TaskTestCase(unittest.TestCase): t = task.TaskParser(self._get_file_abspath(SAMPLE_SCENARIO_PATH)) mock_environ.get.side_effect = ['huawei-pod1', 'compass'] task_files, task_args, task_args_fnames = t.parse_suite() - print ("files=%s, args=%s, fnames=%s" % (task_files, task_args, - task_args_fnames)) + print("files=%s, args=%s, fnames=%s" % (task_files, task_args, + task_args_fnames)) self.assertEqual(task_files[0], 'tests/opnfv/test_cases/opnfv_yardstick_tc037.yaml') self.assertEqual(task_files[1], @@ -134,8 +142,8 @@ class TaskTestCase(unittest.TestCase): t = task.TaskParser(self._get_file_abspath(SAMPLE_SCENARIO_PATH)) mock_environ.get.side_effect = ['huawei-pod1', 'compass'] task_files, task_args, task_args_fnames = t.parse_suite() - print ("files=%s, args=%s, fnames=%s" % (task_files, task_args, - task_args_fnames)) + print("files=%s, args=%s, fnames=%s" % (task_files, task_args, + task_args_fnames)) self.assertEqual(task_files[0], 'tests/opnfv/test_cases/opnfv_yardstick_tc037.yaml') self.assertEqual(task_files[1], diff --git a/tests/unit/benchmark/core/test_testcase.py b/tests/unit/benchmark/core/test_testcase.py index 6e0473cc1..c7da2de7c 100644 --- a/tests/unit/benchmark/core/test_testcase.py +++ b/tests/unit/benchmark/core/test_testcase.py @@ -11,12 +11,14 @@ # Unittest for yardstick.cmd.commands.testcase +from __future__ import absolute_import import unittest from yardstick.benchmark.core import testcase class Arg(object): + def __init__(self): self.casename = ('opnfv_yardstick_tc001',) |