From f036e9898a69f5041f9cde02e3652c29e2de1643 Mon Sep 17 00:00:00 2001 From: Ross Brattain Date: Mon, 5 Dec 2016 16:11:54 -0500 Subject: 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 --- .../benchmark/scenarios/networking/test_ping6.py | 52 +++++++++++----------- 1 file changed, 26 insertions(+), 26 deletions(-) (limited to 'tests/unit/benchmark/scenarios/networking/test_ping6.py') diff --git a/tests/unit/benchmark/scenarios/networking/test_ping6.py b/tests/unit/benchmark/scenarios/networking/test_ping6.py index 0b8fba268..e22cacb36 100644 --- a/tests/unit/benchmark/scenarios/networking/test_ping6.py +++ b/tests/unit/benchmark/scenarios/networking/test_ping6.py @@ -11,6 +11,7 @@ # Unittest for yardstick.benchmark.scenarios.networking.ping.Ping +from __future__ import absolute_import import mock import unittest @@ -21,37 +22,37 @@ class PingTestCase(unittest.TestCase): def setUp(self): self.ctx = { - 'nodes':{ - 'host1': { - 'ip': '172.16.0.137', - 'user': 'cirros', - 'role': "Controller", - 'key_filename': "mykey.key", - 'password': "root" + 'nodes': { + 'host1': { + 'ip': '172.16.0.137', + 'user': 'cirros', + 'role': "Controller", + 'key_filename': "mykey.key", + 'password': "root" }, - 'host2': { - "ip": "172.16.0.138", - "key_filename": "/root/.ssh/id_rsa", - "role": "Compute", - "name": "node3.IPV6", - "user": "root" + 'host2': { + "ip": "172.16.0.138", + "key_filename": "/root/.ssh/id_rsa", + "role": "Compute", + "name": "node3.IPV6", + "user": "root" }, } } def test_get_controller_node(self): args = { - 'options': {'host': 'host1','packetsize': 200, 'ping_count': 5}, + 'options': {'host': 'host1', 'packetsize': 200, 'ping_count': 5}, 'sla': {'max_rtt': 50} } p = ping6.Ping6(args, self.ctx) - controller_node = p._get_controller_node(['host1','host2']) + controller_node = p._get_controller_node(['host1', 'host2']) self.assertEqual(controller_node, 'host1') @mock.patch('yardstick.benchmark.scenarios.networking.ping6.ssh') def test_ping_successful_setup(self, mock_ssh): args = { - 'options': {'host': 'host1','packetsize': 200, 'ping_count': 5}, + 'options': {'host': 'host1', 'packetsize': 200, 'ping_count': 5}, 'sla': {'max_rtt': 50} } p = ping6.Ping6(args, self.ctx) @@ -63,58 +64,57 @@ class PingTestCase(unittest.TestCase): @mock.patch('yardstick.benchmark.scenarios.networking.ping6.ssh') def test_ping_successful_no_sla(self, mock_ssh): args = { - 'options': {'host': 'host1','packetsize': 200, 'ping_count': 5}, + 'options': {'host': 'host1', 'packetsize': 200, 'ping_count': 5}, } result = {} p = ping6.Ping6(args, self.ctx) p.client = mock_ssh.SSH() - mock_ssh.SSH().execute.side_effect = [(0, 'host1', ''),(0, 100, '')] + mock_ssh.SSH().execute.side_effect = [(0, 'host1', ''), (0, 100, '')] p.run(result) self.assertEqual(result, {'rtt': 100.0}) @mock.patch('yardstick.benchmark.scenarios.networking.ping6.ssh') def test_ping_successful_sla(self, mock_ssh): - args = { - 'options': {'host': 'host1','packetsize': 200, 'ping_count': 5}, + 'options': {'host': 'host1', 'packetsize': 200, 'ping_count': 5}, 'sla': {'max_rtt': 150} } result = {} p = ping6.Ping6(args, self.ctx) p.client = mock_ssh.SSH() - mock_ssh.SSH().execute.side_effect = [(0, 'host1', ''),(0, 100, '')] + mock_ssh.SSH().execute.side_effect = [(0, 'host1', ''), (0, 100, '')] p.run(result) self.assertEqual(result, {'rtt': 100.0}) @mock.patch('yardstick.benchmark.scenarios.networking.ping6.ssh') def test_ping_unsuccessful_sla(self, mock_ssh): - args = { - 'options': {'host': 'host1','packetsize': 200, 'ping_count': 5}, + 'options': {'host': 'host1', 'packetsize': 200, 'ping_count': 5}, 'sla': {'max_rtt': 50} } result = {} p = ping6.Ping6(args, self.ctx) p.client = mock_ssh.SSH() - mock_ssh.SSH().execute.side_effect = [(0, 'host1', ''),(0, 100, '')] + mock_ssh.SSH().execute.side_effect = [(0, 'host1', ''), (0, 100, '')] self.assertRaises(AssertionError, p.run, result) @mock.patch('yardstick.benchmark.scenarios.networking.ping6.ssh') def test_ping_unsuccessful_script_error(self, mock_ssh): args = { - 'options': {'host': 'host1','packetsize': 200, 'ping_count': 5}, + 'options': {'host': 'host1', 'packetsize': 200, 'ping_count': 5}, 'sla': {'max_rtt': 150} } result = {} p = ping6.Ping6(args, self.ctx) p.client = mock_ssh.SSH() - mock_ssh.SSH().execute.side_effect = [(0, 'host1', ''),(1, '', 'FOOBAR')] + mock_ssh.SSH().execute.side_effect = [ + (0, 'host1', ''), (1, '', 'FOOBAR')] self.assertRaises(RuntimeError, p.run, result) -- cgit 1.2.3-korg