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/common | |
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/common')
-rw-r--r-- | tests/unit/common/test_httpClient.py | 10 | ||||
-rw-r--r-- | tests/unit/common/test_openstack_utils.py | 1 | ||||
-rw-r--r-- | tests/unit/common/test_template_format.py | 1 | ||||
-rw-r--r-- | tests/unit/common/test_utils.py | 8 |
4 files changed, 14 insertions, 6 deletions
diff --git a/tests/unit/common/test_httpClient.py b/tests/unit/common/test_httpClient.py index 94ac1c891..eb09d1a52 100644 --- a/tests/unit/common/test_httpClient.py +++ b/tests/unit/common/test_httpClient.py @@ -6,9 +6,12 @@ # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## +from __future__ import absolute_import + import unittest + import mock -import json +from oslo_serialization import jsonutils from yardstick.common import httpClient @@ -21,8 +24,9 @@ class HttpClientTestCase(unittest.TestCase): data = {'hello': 'world'} headers = {'Content-Type': 'application/json'} httpClient.HttpClient().post(url, data) - mock_requests.post.assert_called_with(url, data=json.dumps(data), - headers=headers) + mock_requests.post.assert_called_with( + url, data=jsonutils.dump_as_bytes(data), + headers=headers) @mock.patch('yardstick.common.httpClient.requests') def test_get(self, mock_requests): diff --git a/tests/unit/common/test_openstack_utils.py b/tests/unit/common/test_openstack_utils.py index ef619aace..d610e181c 100644 --- a/tests/unit/common/test_openstack_utils.py +++ b/tests/unit/common/test_openstack_utils.py @@ -11,6 +11,7 @@ # Unittest for yardstick.common.openstack_utils +from __future__ import absolute_import import unittest import mock diff --git a/tests/unit/common/test_template_format.py b/tests/unit/common/test_template_format.py index 0e1a1a57d..2a7d80b4d 100644 --- a/tests/unit/common/test_template_format.py +++ b/tests/unit/common/test_template_format.py @@ -12,6 +12,7 @@ # yardstick: this file is copied from python-heatclient and slightly modified +from __future__ import absolute_import import mock import unittest import yaml diff --git a/tests/unit/common/test_utils.py b/tests/unit/common/test_utils.py index a64c1f1ab..267c71312 100644 --- a/tests/unit/common/test_utils.py +++ b/tests/unit/common/test_utils.py @@ -9,6 +9,7 @@ # Unittest for yardstick.common.utils +from __future__ import absolute_import import os import mock import unittest @@ -17,9 +18,10 @@ from yardstick.common import utils class IterSubclassesTestCase(unittest.TestCase): -# Disclaimer: this class is a modified copy from -# rally/tests/unit/common/plugin/test_discover.py -# Copyright 2015: Mirantis Inc. + # Disclaimer: this class is a modified copy from + # rally/tests/unit/common/plugin/test_discover.py + # Copyright 2015: Mirantis Inc. + def test_itersubclasses(self): class A(object): pass |