From 99abbb424007da2e01762f3c040a39c0157cbe1f Mon Sep 17 00:00:00 2001 From: Ross Brattain Date: Wed, 1 Mar 2017 17:28:46 -0800 Subject: standardize ssh auth we need to be following defautl paramiko rules, first use pkey, then key_filenames (autodetecting ~/.ssh/ keys), then password We have too much boilerplate redudant code everywhere, we need to standardize on a factory function that takes a node dict. Using Python3 ChainMap we can layer overrides and defaults. VNF descriptors have to default key_filename, password to Python None. The only way to do this is to omit key values if the variable is not defined, this way the dict will not have the value and it will default to Python None Add python2 chainmap backport Updated unittest mocking to use ssh.SSH.from_node Change-Id: I80b0cb606e593b33e317c9e5e8ed0b74da591514 Signed-off-by: Ross Brattain --- .../benchmark/scenarios/networking/test_iperf3.py | 52 +++++++++++----------- .../benchmark/scenarios/networking/test_netperf.py | 26 +++++------ .../scenarios/networking/test_netperf_node.py | 26 +++++------ .../scenarios/networking/test_netutilization.py | 18 ++++---- .../scenarios/networking/test_networkcapacity.py | 6 +-- .../benchmark/scenarios/networking/test_nstat.py | 8 ++-- .../benchmark/scenarios/networking/test_ping.py | 8 ++-- .../benchmark/scenarios/networking/test_ping6.py | 18 ++++---- .../benchmark/scenarios/networking/test_pktgen.py | 46 +++++++++---------- .../scenarios/networking/test_pktgen_dpdk.py | 34 +++++++------- .../benchmark/scenarios/networking/test_sfc.py | 36 +++++++-------- .../scenarios/networking/test_vnf_generic.py | 12 ++--- .../benchmark/scenarios/networking/test_vsperf.py | 20 ++++----- 13 files changed, 155 insertions(+), 155 deletions(-) (limited to 'tests/unit/benchmark/scenarios/networking') diff --git a/tests/unit/benchmark/scenarios/networking/test_iperf3.py b/tests/unit/benchmark/scenarios/networking/test_iperf3.py index ea53cb9ab..45ff1b779 100644 --- a/tests/unit/benchmark/scenarios/networking/test_iperf3.py +++ b/tests/unit/benchmark/scenarios/networking/test_iperf3.py @@ -45,29 +45,29 @@ class IperfTestCase(unittest.TestCase): def test_iperf_successful_setup(self, mock_ssh): p = iperf3.Iperf({}, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') p.setup() self.assertIsNotNone(p.target) self.assertIsNotNone(p.host) - mock_ssh.SSH().execute.assert_called_with("iperf3 -s -D") + mock_ssh.SSH.from_node().execute.assert_called_with("iperf3 -s -D") def test_iperf_unsuccessful_setup(self, mock_ssh): p = iperf3.Iperf({}, self.ctx) - mock_ssh.SSH().execute.return_value = (1, '', 'FOOBAR') + mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR') self.assertRaises(RuntimeError, p.setup) def test_iperf_successful_teardown(self, mock_ssh): p = iperf3.Iperf({}, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() - p.target = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() + p.target = mock_ssh.SSH.from_node() p.teardown() - self.assertTrue(mock_ssh.SSH().close.called) - mock_ssh.SSH().execute.assert_called_with("pkill iperf3") + self.assertTrue(mock_ssh.SSH.from_node().close.called) + mock_ssh.SSH.from_node().execute.assert_called_with("pkill iperf3") def test_iperf_successful_no_sla(self, mock_ssh): @@ -76,11 +76,11 @@ class IperfTestCase(unittest.TestCase): result = {} p = iperf3.Iperf(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() sample_output = self._read_sample_output(self.output_name_tcp) - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') expected_result = jsonutils.loads(sample_output) p.run(result) self.assertEqual(result, expected_result) @@ -95,11 +95,11 @@ class IperfTestCase(unittest.TestCase): result = {} p = iperf3.Iperf(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() sample_output = self._read_sample_output(self.output_name_tcp) - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') expected_result = jsonutils.loads(sample_output) p.run(result) self.assertEqual(result, expected_result) @@ -114,11 +114,11 @@ class IperfTestCase(unittest.TestCase): result = {} p = iperf3.Iperf(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() sample_output = self._read_sample_output(self.output_name_tcp) - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') self.assertRaises(AssertionError, p.run, result) def test_iperf_successful_sla_jitter(self, mock_ssh): @@ -130,11 +130,11 @@ class IperfTestCase(unittest.TestCase): result = {} p = iperf3.Iperf(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() sample_output = self._read_sample_output(self.output_name_udp) - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') expected_result = jsonutils.loads(sample_output) p.run(result) self.assertEqual(result, expected_result) @@ -148,11 +148,11 @@ class IperfTestCase(unittest.TestCase): result = {} p = iperf3.Iperf(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() sample_output = self._read_sample_output(self.output_name_udp) - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') self.assertRaises(AssertionError, p.run, result) def test_iperf_unsuccessful_script_error(self, mock_ssh): @@ -162,10 +162,10 @@ class IperfTestCase(unittest.TestCase): result = {} p = iperf3.Iperf(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() - mock_ssh.SSH().execute.return_value = (1, '', 'FOOBAR') + mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR') self.assertRaises(RuntimeError, p.run, result) def _read_sample_output(self, filename): diff --git a/tests/unit/benchmark/scenarios/networking/test_netperf.py b/tests/unit/benchmark/scenarios/networking/test_netperf.py index 1b5dd6472..d0f862fb5 100755 --- a/tests/unit/benchmark/scenarios/networking/test_netperf.py +++ b/tests/unit/benchmark/scenarios/networking/test_netperf.py @@ -43,7 +43,7 @@ class NetperfTestCase(unittest.TestCase): def test_netperf_successful_setup(self, mock_ssh): p = netperf.Netperf({}, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') p.setup() self.assertIsNotNone(p.server) @@ -57,11 +57,11 @@ class NetperfTestCase(unittest.TestCase): result = {} p = netperf.Netperf(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() sample_output = self._read_sample_output() - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') expected_result = jsonutils.loads(sample_output) p.run(result) self.assertEqual(result, expected_result) @@ -76,11 +76,11 @@ class NetperfTestCase(unittest.TestCase): result = {} p = netperf.Netperf(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() sample_output = self._read_sample_output() - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') expected_result = jsonutils.loads(sample_output) p.run(result) self.assertEqual(result, expected_result) @@ -95,11 +95,11 @@ class NetperfTestCase(unittest.TestCase): result = {} p = netperf.Netperf(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() sample_output = self._read_sample_output() - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') self.assertRaises(AssertionError, p.run, result) def test_netperf_unsuccessful_script_error(self, mock_ssh): @@ -109,10 +109,10 @@ class NetperfTestCase(unittest.TestCase): result = {} p = netperf.Netperf(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() - mock_ssh.SSH().execute.return_value = (1, '', 'FOOBAR') + mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR') self.assertRaises(RuntimeError, p.run, result) def _read_sample_output(self): diff --git a/tests/unit/benchmark/scenarios/networking/test_netperf_node.py b/tests/unit/benchmark/scenarios/networking/test_netperf_node.py index 29a7edf67..62874cc44 100755 --- a/tests/unit/benchmark/scenarios/networking/test_netperf_node.py +++ b/tests/unit/benchmark/scenarios/networking/test_netperf_node.py @@ -43,7 +43,7 @@ class NetperfNodeTestCase(unittest.TestCase): def test_netperf_node_successful_setup(self, mock_ssh): p = netperf_node.NetperfNode({}, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') p.setup() self.assertIsNotNone(p.server) @@ -57,11 +57,11 @@ class NetperfNodeTestCase(unittest.TestCase): result = {} p = netperf_node.NetperfNode(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() sample_output = self._read_sample_output() - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') expected_result = jsonutils.loads(sample_output) p.run(result) self.assertEqual(result, expected_result) @@ -76,11 +76,11 @@ class NetperfNodeTestCase(unittest.TestCase): result = {} p = netperf_node.NetperfNode(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() sample_output = self._read_sample_output() - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') expected_result = jsonutils.loads(sample_output) p.run(result) self.assertEqual(result, expected_result) @@ -95,11 +95,11 @@ class NetperfNodeTestCase(unittest.TestCase): result = {} p = netperf_node.NetperfNode(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() sample_output = self._read_sample_output() - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') self.assertRaises(AssertionError, p.run, result) def test_netperf_node_unsuccessful_script_error(self, mock_ssh): @@ -109,10 +109,10 @@ class NetperfNodeTestCase(unittest.TestCase): result = {} p = netperf_node.NetperfNode(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') - p.host = mock_ssh.SSH() + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + p.host = mock_ssh.SSH.from_node() - mock_ssh.SSH().execute.return_value = (1, '', 'FOOBAR') + mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR') self.assertRaises(RuntimeError, p.run, result) def _read_sample_output(self): diff --git a/tests/unit/benchmark/scenarios/networking/test_netutilization.py b/tests/unit/benchmark/scenarios/networking/test_netutilization.py index 7c04f5e9a..1227e056e 100644 --- a/tests/unit/benchmark/scenarios/networking/test_netutilization.py +++ b/tests/unit/benchmark/scenarios/networking/test_netutilization.py @@ -42,7 +42,7 @@ class NetUtilizationTestCase(unittest.TestCase): args = {'options': options} n = netutilization.NetUtilization(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') n.setup() self.assertIsNotNone(n.client) @@ -56,11 +56,11 @@ class NetUtilizationTestCase(unittest.TestCase): args = {'options': options} n = netutilization.NetUtilization(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') n.setup() expected_result = 'abcdefg' - mock_ssh.SSH().execute.return_value = (0, expected_result, '') + mock_ssh.SSH.from_node().execute.return_value = (0, expected_result, '') result = n._execute_command("foo") self.assertEqual(result, expected_result) @@ -72,10 +72,10 @@ class NetUtilizationTestCase(unittest.TestCase): args = {'options': options} n = netutilization.NetUtilization(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') n.setup() - mock_ssh.SSH().execute.return_value = (127, '', 'abcdefg') + mock_ssh.SSH.from_node().execute.return_value = (127, '', 'abcdefg') self.assertRaises(RuntimeError, n._execute_command, "failed") @@ -87,11 +87,11 @@ class NetUtilizationTestCase(unittest.TestCase): args = {'options': options} n = netutilization.NetUtilization(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') n.setup() mpstat_output = self._read_file("netutilization_sample_output1.txt") - mock_ssh.SSH().execute.return_value = (0, mpstat_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, mpstat_output, '') result = n._get_network_utilization() expected_result = \ @@ -157,11 +157,11 @@ class NetUtilizationTestCase(unittest.TestCase): args = {'options': options} n = netutilization.NetUtilization(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') n.setup() mpstat_output = self._read_file("netutilization_sample_output2.txt") - mock_ssh.SSH().execute.return_value = (0, mpstat_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, mpstat_output, '') result = n._get_network_utilization() expected_result = \ diff --git a/tests/unit/benchmark/scenarios/networking/test_networkcapacity.py b/tests/unit/benchmark/scenarios/networking/test_networkcapacity.py index 3f8d84e54..3e7a3c5ee 100644 --- a/tests/unit/benchmark/scenarios/networking/test_networkcapacity.py +++ b/tests/unit/benchmark/scenarios/networking/test_networkcapacity.py @@ -41,7 +41,7 @@ class NetworkCapacityTestCase(unittest.TestCase): def test_capacity_successful_setup(self, mock_ssh): c = networkcapacity.NetworkCapacity({}, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') c.setup() self.assertIsNotNone(c.client) self.assertTrue(c.setup_done) @@ -49,7 +49,7 @@ class NetworkCapacityTestCase(unittest.TestCase): def test_capacity_successful(self, mock_ssh): c = networkcapacity.NetworkCapacity({}, self.ctx) - mock_ssh.SSH().execute.return_value = (0, SAMPLE_OUTPUT, '') + mock_ssh.SSH.from_node().execute.return_value = (0, SAMPLE_OUTPUT, '') c.run(self.result) expected_result = jsonutils.loads(SAMPLE_OUTPUT) self.assertEqual(self.result, expected_result) @@ -57,5 +57,5 @@ class NetworkCapacityTestCase(unittest.TestCase): def test_capacity_unsuccessful_script_error(self, mock_ssh): c = networkcapacity.NetworkCapacity({}, self.ctx) - mock_ssh.SSH().execute.return_value = (1, '', 'FOOBAR') + mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR') self.assertRaises(RuntimeError, c.run, self.result) diff --git a/tests/unit/benchmark/scenarios/networking/test_nstat.py b/tests/unit/benchmark/scenarios/networking/test_nstat.py index 87a766302..131716727 100644 --- a/tests/unit/benchmark/scenarios/networking/test_nstat.py +++ b/tests/unit/benchmark/scenarios/networking/test_nstat.py @@ -36,7 +36,7 @@ class NstatTestCase(unittest.TestCase): n = nstat.Nstat({}, self.ctx) n.setup() - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') self.assertIsNotNone(n.client) self.assertEqual(n.setup_done, True) @@ -53,7 +53,7 @@ class NstatTestCase(unittest.TestCase): sample_output = '#kernel\nIpInReceives 1837 0.0\nIpInHdrErrors 0 0.0\nIpInAddrErrors 2 0.0\nIcmpInMsgs 319 0.0\nIcmpInErrors 0 0.0\nTcpInSegs 36 0.0\nTcpInErrs 0 0.0\nUdpInDatagrams 1318 0.0\nUdpInErrors 0 0.0\n' - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') n.run(result) expected_result = {"TcpInErrs": 0, "UdpInDatagrams": 1318, @@ -81,7 +81,7 @@ class NstatTestCase(unittest.TestCase): sample_output = '#kernel\nIpInReceives 1837 0.0\nIpInHdrErrors 0 0.0\nIpInAddrErrors 2 0.0\nIcmpInMsgs 319 0.0\nIcmpInErrors 0 0.0\nTcpInSegs 36 0.0\nTcpInErrs 0 0.0\nUdpInDatagrams 1318 0.0\nUdpInErrors 0 0.0\n' - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') n.run(result) expected_result = {"TcpInErrs": 0, "UdpInDatagrams": 1318, @@ -107,7 +107,7 @@ class NstatTestCase(unittest.TestCase): n = nstat.Nstat(args, self.ctx) result = {} - mock_ssh.SSH().execute.return_value = (1, '', 'FOOBAR') + mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR') self.assertRaises(RuntimeError, n.run, result) diff --git a/tests/unit/benchmark/scenarios/networking/test_ping.py b/tests/unit/benchmark/scenarios/networking/test_ping.py index 5535a79a9..5269309c2 100644 --- a/tests/unit/benchmark/scenarios/networking/test_ping.py +++ b/tests/unit/benchmark/scenarios/networking/test_ping.py @@ -43,7 +43,7 @@ class PingTestCase(unittest.TestCase): p = ping.Ping(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '100', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '100', '') p.run(result) self.assertEqual(result, {'rtt': {'ares': 100.0}}) @@ -59,7 +59,7 @@ class PingTestCase(unittest.TestCase): p = ping.Ping(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '100', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '100', '') p.run(result) self.assertEqual(result, {'rtt': {'ares': 100.0}}) @@ -75,7 +75,7 @@ class PingTestCase(unittest.TestCase): p = ping.Ping(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '100', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '100', '') self.assertRaises(AssertionError, p.run, result) @mock.patch('yardstick.benchmark.scenarios.networking.ping.ssh') @@ -90,7 +90,7 @@ class PingTestCase(unittest.TestCase): p = ping.Ping(args, self.ctx) - mock_ssh.SSH().execute.return_value = (1, '', 'FOOBAR') + mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR') self.assertRaises(RuntimeError, p.run, result) diff --git a/tests/unit/benchmark/scenarios/networking/test_ping6.py b/tests/unit/benchmark/scenarios/networking/test_ping6.py index e22cacb36..ecce7cee5 100644 --- a/tests/unit/benchmark/scenarios/networking/test_ping6.py +++ b/tests/unit/benchmark/scenarios/networking/test_ping6.py @@ -56,7 +56,7 @@ class PingTestCase(unittest.TestCase): 'sla': {'max_rtt': 50} } p = ping6.Ping6(args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '0', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '0', '') p.setup() self.assertEqual(p.setup_done, True) @@ -70,8 +70,8 @@ class PingTestCase(unittest.TestCase): result = {} p = ping6.Ping6(args, self.ctx) - p.client = mock_ssh.SSH() - mock_ssh.SSH().execute.side_effect = [(0, 'host1', ''), (0, 100, '')] + p.client = mock_ssh.SSH.from_node() + mock_ssh.SSH.from_node().execute.side_effect = [(0, 'host1', ''), (0, 100, '')] p.run(result) self.assertEqual(result, {'rtt': 100.0}) @@ -84,8 +84,8 @@ class PingTestCase(unittest.TestCase): result = {} p = ping6.Ping6(args, self.ctx) - p.client = mock_ssh.SSH() - mock_ssh.SSH().execute.side_effect = [(0, 'host1', ''), (0, 100, '')] + p.client = mock_ssh.SSH.from_node() + mock_ssh.SSH.from_node().execute.side_effect = [(0, 'host1', ''), (0, 100, '')] p.run(result) self.assertEqual(result, {'rtt': 100.0}) @@ -98,8 +98,8 @@ class PingTestCase(unittest.TestCase): result = {} p = ping6.Ping6(args, self.ctx) - p.client = mock_ssh.SSH() - mock_ssh.SSH().execute.side_effect = [(0, 'host1', ''), (0, 100, '')] + p.client = mock_ssh.SSH.from_node() + mock_ssh.SSH.from_node().execute.side_effect = [(0, 'host1', ''), (0, 100, '')] self.assertRaises(AssertionError, p.run, result) @mock.patch('yardstick.benchmark.scenarios.networking.ping6.ssh') @@ -112,8 +112,8 @@ class PingTestCase(unittest.TestCase): result = {} p = ping6.Ping6(args, self.ctx) - p.client = mock_ssh.SSH() - mock_ssh.SSH().execute.side_effect = [ + p.client = mock_ssh.SSH.from_node() + mock_ssh.SSH.from_node().execute.side_effect = [ (0, 'host1', ''), (1, '', 'FOOBAR')] self.assertRaises(RuntimeError, p.run, result) diff --git a/tests/unit/benchmark/scenarios/networking/test_pktgen.py b/tests/unit/benchmark/scenarios/networking/test_pktgen.py index 989c5b712..d4eb1246f 100644 --- a/tests/unit/benchmark/scenarios/networking/test_pktgen.py +++ b/tests/unit/benchmark/scenarios/networking/test_pktgen.py @@ -47,7 +47,7 @@ class PktgenTestCase(unittest.TestCase): p = pktgen.Pktgen(args, self.ctx) p.setup() - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') self.assertIsNotNone(p.server) self.assertIsNotNone(p.client) self.assertEqual(p.setup_done, True) @@ -58,14 +58,14 @@ class PktgenTestCase(unittest.TestCase): 'options': {'packetsize': 60, 'number_of_ports': 10}, } p = pktgen.Pktgen(args, self.ctx) - p.server = mock_ssh.SSH() + p.server = mock_ssh.SSH.from_node() p.number_of_ports = args['options']['number_of_ports'] - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') p._iptables_setup() - mock_ssh.SSH().execute.assert_called_with( + mock_ssh.SSH.from_node().execute.assert_called_with( "sudo iptables -F; " "sudo iptables -A INPUT -p udp --dport 1000:%s -j DROP" % 1010) @@ -77,10 +77,10 @@ class PktgenTestCase(unittest.TestCase): } p = pktgen.Pktgen(args, self.ctx) - p.server = mock_ssh.SSH() + p.server = mock_ssh.SSH.from_node() p.number_of_ports = args['options']['number_of_ports'] - mock_ssh.SSH().execute.return_value = (1, '', 'FOOBAR') + mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR') self.assertRaises(RuntimeError, p._iptables_setup) def test_pktgen_successful_iptables_get_result(self, mock_ssh): @@ -90,13 +90,13 @@ class PktgenTestCase(unittest.TestCase): } p = pktgen.Pktgen(args, self.ctx) - p.server = mock_ssh.SSH() + p.server = mock_ssh.SSH.from_node() p.number_of_ports = args['options']['number_of_ports'] - mock_ssh.SSH().execute.return_value = (0, '150000', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '150000', '') p._iptables_get_result() - mock_ssh.SSH().execute.assert_called_with( + mock_ssh.SSH.from_node().execute.assert_called_with( "sudo iptables -L INPUT -vnx |" "awk '/dpts:1000:%s/ {{printf \"%%s\", $1}}'" % 1010) @@ -109,10 +109,10 @@ class PktgenTestCase(unittest.TestCase): p = pktgen.Pktgen(args, self.ctx) - p.server = mock_ssh.SSH() + p.server = mock_ssh.SSH.from_node() p.number_of_ports = args['options']['number_of_ports'] - mock_ssh.SSH().execute.return_value = (1, '', 'FOOBAR') + mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR') self.assertRaises(RuntimeError, p._iptables_get_result) def test_pktgen_successful_no_sla(self, mock_ssh): @@ -124,8 +124,8 @@ class PktgenTestCase(unittest.TestCase): p = pktgen.Pktgen(args, self.ctx) - p.server = mock_ssh.SSH() - p.client = mock_ssh.SSH() + p.server = mock_ssh.SSH.from_node() + p.client = mock_ssh.SSH.from_node() mock_iptables_result = mock.Mock() mock_iptables_result.return_value = 149300 @@ -133,7 +133,7 @@ class PktgenTestCase(unittest.TestCase): sample_output = '{"packets_per_second": 9753, "errors": 0, \ "packets_sent": 149776, "packetsize": 60, "flows": 110}' - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') p.run(result) expected_result = jsonutils.loads(sample_output) @@ -150,8 +150,8 @@ class PktgenTestCase(unittest.TestCase): p = pktgen.Pktgen(args, self.ctx) - p.server = mock_ssh.SSH() - p.client = mock_ssh.SSH() + p.server = mock_ssh.SSH.from_node() + p.client = mock_ssh.SSH.from_node() mock_iptables_result = mock.Mock() mock_iptables_result.return_value = 149300 @@ -159,7 +159,7 @@ class PktgenTestCase(unittest.TestCase): sample_output = '{"packets_per_second": 9753, "errors": 0, \ "packets_sent": 149776, "packetsize": 60, "flows": 110}' - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') p.run(result) expected_result = jsonutils.loads(sample_output) @@ -176,8 +176,8 @@ class PktgenTestCase(unittest.TestCase): p = pktgen.Pktgen(args, self.ctx) - p.server = mock_ssh.SSH() - p.client = mock_ssh.SSH() + p.server = mock_ssh.SSH.from_node() + p.client = mock_ssh.SSH.from_node() mock_iptables_result = mock.Mock() mock_iptables_result.return_value = 149300 @@ -185,7 +185,7 @@ class PktgenTestCase(unittest.TestCase): sample_output = '{"packets_per_second": 9753, "errors": 0, \ "packets_sent": 149776, "packetsize": 60, "flows": 110}' - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') self.assertRaises(AssertionError, p.run, result) def test_pktgen_unsuccessful_script_error(self, mock_ssh): @@ -198,10 +198,10 @@ class PktgenTestCase(unittest.TestCase): p = pktgen.Pktgen(args, self.ctx) - p.server = mock_ssh.SSH() - p.client = mock_ssh.SSH() + p.server = mock_ssh.SSH.from_node() + p.client = mock_ssh.SSH.from_node() - mock_ssh.SSH().execute.return_value = (1, '', 'FOOBAR') + mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR') self.assertRaises(RuntimeError, p.run, result) diff --git a/tests/unit/benchmark/scenarios/networking/test_pktgen_dpdk.py b/tests/unit/benchmark/scenarios/networking/test_pktgen_dpdk.py index 7ba4db9d9..496ee770c 100644 --- a/tests/unit/benchmark/scenarios/networking/test_pktgen_dpdk.py +++ b/tests/unit/benchmark/scenarios/networking/test_pktgen_dpdk.py @@ -45,7 +45,7 @@ class PktgenDPDKLatencyTestCase(unittest.TestCase): p = pktgen_dpdk.PktgenDPDKLatency(args, self.ctx) p.setup() - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') self.assertIsNotNone(p.server) self.assertIsNotNone(p.client) self.assertEqual(p.setup_done, True) @@ -56,13 +56,13 @@ class PktgenDPDKLatencyTestCase(unittest.TestCase): 'options': {'packetsize': 60}, } p = pktgen_dpdk.PktgenDPDKLatency(args, self.ctx) - p.server = mock_ssh.SSH() + p.server = mock_ssh.SSH.from_node() - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') p.get_port_ip(p.server, "eth1") - mock_ssh.SSH().execute.assert_called_with( + mock_ssh.SSH.from_node().execute.assert_called_with( "ifconfig eth1 |grep 'inet addr' |awk '{print $2}' \ |cut -d ':' -f2 ") @@ -73,9 +73,9 @@ class PktgenDPDKLatencyTestCase(unittest.TestCase): } p = pktgen_dpdk.PktgenDPDKLatency(args, self.ctx) - p.server = mock_ssh.SSH() + p.server = mock_ssh.SSH.from_node() - mock_ssh.SSH().execute.return_value = (1, '', 'FOOBAR') + mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR') self.assertRaises(RuntimeError, p.get_port_ip, p.server, "eth1") def test_pktgen_dpdk_successful_get_port_mac(self, mock_ssh): @@ -84,13 +84,13 @@ class PktgenDPDKLatencyTestCase(unittest.TestCase): 'options': {'packetsize': 60}, } p = pktgen_dpdk.PktgenDPDKLatency(args, self.ctx) - p.server = mock_ssh.SSH() + p.server = mock_ssh.SSH.from_node() - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') p.get_port_mac(p.server, "eth1") - mock_ssh.SSH().execute.assert_called_with( + mock_ssh.SSH.from_node().execute.assert_called_with( "ifconfig |grep HWaddr |grep eth1 |awk '{print $5}' ") def test_pktgen_dpdk_unsuccessful_get_port_mac(self, mock_ssh): @@ -100,9 +100,9 @@ class PktgenDPDKLatencyTestCase(unittest.TestCase): } p = pktgen_dpdk.PktgenDPDKLatency(args, self.ctx) - p.server = mock_ssh.SSH() + p.server = mock_ssh.SSH.from_node() - mock_ssh.SSH().execute.return_value = (1, '', 'FOOBAR') + mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR') self.assertRaises(RuntimeError, p.get_port_mac, p.server, "eth1") def test_pktgen_dpdk_successful_no_sla(self, mock_ssh): @@ -115,7 +115,7 @@ class PktgenDPDKLatencyTestCase(unittest.TestCase): p = pktgen_dpdk.PktgenDPDKLatency(args, self.ctx) sample_output = '100\n110\n112\n130\n149\n150\n90\n150\n200\n162\n' - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') p.run(result) # with python 3 we get float, might be due python division changes @@ -135,7 +135,7 @@ class PktgenDPDKLatencyTestCase(unittest.TestCase): p = pktgen_dpdk.PktgenDPDKLatency(args, self.ctx) sample_output = '100\n100\n100\n100\n100\n100\n100\n100\n100\n100\n' - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') p.run(result) @@ -151,11 +151,11 @@ class PktgenDPDKLatencyTestCase(unittest.TestCase): p = pktgen_dpdk.PktgenDPDKLatency(args, self.ctx) - p.server = mock_ssh.SSH() - p.client = mock_ssh.SSH() + p.server = mock_ssh.SSH.from_node() + p.client = mock_ssh.SSH.from_node() sample_output = '100\n110\n112\n130\n149\n150\n90\n150\n200\n162\n' - mock_ssh.SSH().execute.return_value = (0, sample_output, '') + mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '') self.assertRaises(AssertionError, p.run, result) def test_pktgen_dpdk_unsuccessful_script_error(self, mock_ssh): @@ -168,7 +168,7 @@ class PktgenDPDKLatencyTestCase(unittest.TestCase): p = pktgen_dpdk.PktgenDPDKLatency(args, self.ctx) - mock_ssh.SSH().execute.return_value = (1, '', 'FOOBAR') + mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR') self.assertRaises(RuntimeError, p.run, result) diff --git a/tests/unit/benchmark/scenarios/networking/test_sfc.py b/tests/unit/benchmark/scenarios/networking/test_sfc.py index 224a43bd8..78c0352dd 100644 --- a/tests/unit/benchmark/scenarios/networking/test_sfc.py +++ b/tests/unit/benchmark/scenarios/networking/test_sfc.py @@ -21,22 +21,22 @@ from yardstick.benchmark.scenarios.networking import sfc class SfcTestCase(unittest.TestCase): def setUp(self): - scenario_cfg = dict() - context_cfg = dict() - - # Used in Sfc.setup() - context_cfg['target'] = dict() - context_cfg['target']['user'] = 'root' - context_cfg['target']['password'] = 'opnfv' - context_cfg['target']['ip'] = '127.0.0.1' - - # Used in Sfc.run() - context_cfg['host'] = dict() - context_cfg['host']['user'] = 'root' - context_cfg['host']['password'] = 'opnfv' - context_cfg['host']['ip'] = None - context_cfg['target'] = dict() - context_cfg['target']['ip'] = '127.0.0.1' + scenario_cfg = {} + context_cfg = { + # Used in Sfc.setup() + 'target': { + 'user': 'root', + 'password': 'opnfv', + 'ip': '127.0.0.1', + }, + + # Used in Sfc.run() + 'host': { + 'user': 'root', + 'password': 'opnfv', + 'ip': None, + } + } self.sfc = sfc.Sfc(scenario_cfg=scenario_cfg, context_cfg=context_cfg) @@ -45,7 +45,7 @@ class SfcTestCase(unittest.TestCase): @mock.patch('yardstick.benchmark.scenarios.networking.sfc.subprocess') def test_run_for_success(self, mock_subprocess, mock_openstack, mock_ssh): # Mock a successfull SSH in Sfc.setup() and Sfc.run() - mock_ssh.SSH().execute.return_value = (0, '100', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '100', '') mock_openstack.get_an_IP.return_value = "127.0.0.1" mock_subprocess.call.return_value = 'mocked!' @@ -59,7 +59,7 @@ class SfcTestCase(unittest.TestCase): @mock.patch('yardstick.benchmark.scenarios.networking.sfc.subprocess') def test2_run_for_success(self, mock_subprocess, mock_openstack, mock_ssh): # Mock a successfull SSH in Sfc.setup() and Sfc.run() - mock_ssh.SSH().execute.return_value = ( + mock_ssh.SSH.from_node().execute.return_value = ( 0, 'vxlan_tool.py', 'succeeded timed out') mock_openstack.get_an_IP.return_value = "127.0.0.1" mock_subprocess.call.return_value = 'mocked!' diff --git a/tests/unit/benchmark/scenarios/networking/test_vnf_generic.py b/tests/unit/benchmark/scenarios/networking/test_vnf_generic.py index 1b02b6eff..4167d6f3b 100644 --- a/tests/unit/benchmark/scenarios/networking/test_vnf_generic.py +++ b/tests/unit/benchmark/scenarios/networking/test_vnf_generic.py @@ -316,7 +316,7 @@ class TestNetworkServiceTestCase(unittest.TestCase): ssh_mock = mock.Mock(autospec=ssh.SSH) ssh_mock.execute = \ mock.Mock(return_value=(0, SYS_CLASS_NET + IP_ADDR_SHOW, "")) - ssh.return_value = ssh_mock + ssh.from_node.return_value = ssh_mock for node, node_dict in self.context_cfg["nodes"].items(): with SshManager(node_dict) as conn: self.assertIsNotNone(conn) @@ -357,7 +357,7 @@ class TestNetworkServiceTestCase(unittest.TestCase): ssh_mock = mock.Mock(autospec=ssh.SSH) ssh_mock.execute = \ mock.Mock(return_value=(0, SYS_CLASS_NET + IP_ADDR_SHOW, "")) - ssh.return_value = ssh_mock + ssh.from_node.return_value = ssh_mock self.s.map_topology_to_infrastructure(self.context_cfg, self.topology) self.assertEqual("tg_trex_tpl.yaml", @@ -371,7 +371,7 @@ class TestNetworkServiceTestCase(unittest.TestCase): ssh_mock = mock.Mock(autospec=ssh.SSH) ssh_mock.execute = \ mock.Mock(return_value=(1, SYS_CLASS_NET + IP_ADDR_SHOW, "")) - ssh.return_value = ssh_mock + ssh.from_node.return_value = ssh_mock self.assertRaises(IncorrectSetup, self.s.map_topology_to_infrastructure, @@ -384,7 +384,7 @@ class TestNetworkServiceTestCase(unittest.TestCase): ssh_mock = mock.Mock(autospec=ssh.SSH) ssh_mock.execute = \ mock.Mock(return_value=(0, SYS_CLASS_NET + IP_ADDR_SHOW, "")) - ssh.return_value = ssh_mock + ssh.from_node.return_value = ssh_mock self.assertRaises(IncorrectConfig, self.s.map_topology_to_infrastructure, @@ -395,7 +395,7 @@ class TestNetworkServiceTestCase(unittest.TestCase): ssh_mock = mock.Mock(autospec=ssh.SSH) ssh_mock.execute = \ mock.Mock(return_value=(0, SYS_CLASS_NET + IP_ADDR_SHOW, "")) - ssh.return_value = ssh_mock + ssh.from_node.return_value = ssh_mock del self.context_cfg['nodes'] self.assertRaises(IncorrectConfig, self.s._resolve_topology, @@ -428,7 +428,7 @@ class TestNetworkServiceTestCase(unittest.TestCase): ssh_mock = mock.Mock(autospec=ssh.SSH) ssh_mock.execute = \ mock.Mock(return_value=(0, SYS_CLASS_NET + IP_ADDR_SHOW, "")) - ssh.return_value = ssh_mock + ssh.from_node.return_value = ssh_mock tgen = mock.Mock(autospec=GenericTrafficGen) tgen.traffic_finished = True diff --git a/tests/unit/benchmark/scenarios/networking/test_vsperf.py b/tests/unit/benchmark/scenarios/networking/test_vsperf.py index 76d2afdc0..348aa4a63 100644 --- a/tests/unit/benchmark/scenarios/networking/test_vsperf.py +++ b/tests/unit/benchmark/scenarios/networking/test_vsperf.py @@ -63,7 +63,7 @@ class VsperfTestCase(unittest.TestCase): def test_vsperf_setup(self, mock_ssh, mock_subprocess): p = vsperf.Vsperf(self.args, self.ctx) - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') mock_subprocess.call().execute.return_value = None p.setup() @@ -74,7 +74,7 @@ class VsperfTestCase(unittest.TestCase): p = vsperf.Vsperf(self.args, self.ctx) # setup() specific mocks - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') mock_subprocess.call().execute.return_value = None p.setup() @@ -88,12 +88,12 @@ class VsperfTestCase(unittest.TestCase): p = vsperf.Vsperf(self.args, self.ctx) # setup() specific mocks - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') mock_subprocess.call().execute.return_value = None # run() specific mocks - mock_ssh.SSH().execute.return_value = (0, '', '') - mock_ssh.SSH().execute.return_value = ( + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = ( 0, 'throughput_rx_fps\r\n14797660.000\r\n', '') result = {} @@ -106,11 +106,11 @@ class VsperfTestCase(unittest.TestCase): p = vsperf.Vsperf(self.args, self.ctx) # setup() specific mocks - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') mock_subprocess.call().execute.return_value = None # run() specific mocks - mock_ssh.SSH().execute.return_value = (1, '', '') + mock_ssh.SSH.from_node().execute.return_value = (1, '', '') result = {} self.assertRaises(RuntimeError, p.run, result) @@ -119,12 +119,12 @@ class VsperfTestCase(unittest.TestCase): p = vsperf.Vsperf(self.args, self.ctx) # setup() specific mocks - mock_ssh.SSH().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') mock_subprocess.call().execute.return_value = None # run() specific mocks - mock_ssh.SSH().execute.return_value = (0, '', '') - mock_ssh.SSH().execute.return_value = (1, '', '') + mock_ssh.SSH.from_node().execute.return_value = (0, '', '') + mock_ssh.SSH.from_node().execute.return_value = (1, '', '') result = {} self.assertRaises(RuntimeError, p.run, result) -- cgit 1.2.3-korg