From 66b440e214a62dbcb49fc5850f8a52eddc24ad42 Mon Sep 17 00:00:00 2001 From: changzhi1990 Date: Mon, 18 Jan 2016 11:00:34 +0800 Subject: [PATCH] Refactor stethoclient unit test Change-Id: I239d498664fabca1fc82bb99a490af9ce3bc3e4a --- .../unit/stethoclient/test_stethoclient.py | 90 +++++++++++++++---- 1 file changed, 71 insertions(+), 19 deletions(-) diff --git a/stetho/tests/unit/stethoclient/test_stethoclient.py b/stetho/tests/unit/stethoclient/test_stethoclient.py index 9e30a47..5e02590 100644 --- a/stetho/tests/unit/stethoclient/test_stethoclient.py +++ b/stetho/tests/unit/stethoclient/test_stethoclient.py @@ -5,40 +5,92 @@ from stetho.stethoclient import agent_api from stetho.stethoclient.drivers import iperf_api +class Server(object): + + def get_interface(self): + pass + + def add_vlan_to_interface(self): + pass + + def ping(self): + pass + + def setup_link(self): + pass + + def check_ports_on_br(self): + pass + + def setup_iperf_server(self): + pass + + def start_iperf_client(self): + pass + + def teardown_iperf_server(self): + pass + + class TestStethoClientMethods(unittest.TestCase): + def setUp(self): + self.server = Server() + agent_api.setup_server = mock.Mock(return_value=self.server) + iperf_api.setup_server = mock.Mock(return_value=self.server) + def test_stethoclient_get_interface(self): - r = (('Field', 'Value'), []) - agent_api.GetInterface.take_action = mock.Mock(return_value=r) + r = {'message': '', 'code': 0, 'data': {'name': 'eth0'}} + self.server.get_interface = mock.Mock(return_value=r) shell.main(['get-interface', 'agent-64', 'eth0']) - self.assertEqual(agent_api.GetInterface.take_action.called, True) + self.assertEqual(self.server.get_interface.called, True) def test_stethoclient_add_vlan_to_interface(self): - r = (('Field', 'Value'), []) - agent_api.AddVlanToInterface.take_action = mock.Mock(return_value=r) + r = {u'message': '', 'code': 0, 'data': {}} + rr = {'message': '', 'code': 0, 'data': {'name': 'eth0'}} + self.server.add_vlan_to_interface = mock.Mock(return_value=r) + self.server.get_interface = mock.Mock(return_value=rr) shell.main(['add-vlan-to-interface', 'agent-64', 'eth0', '100']) - self.assertEqual(agent_api.AddVlanToInterface.take_action.called, True) + self.assertEqual(self.server.add_vlan_to_interface.called, True) def test_stethoclient_ping(self): - r = (('Destination', 'Packet Loss (%)'), []) - agent_api.AgentPing.take_action = mock.Mock(return_value=r) + r = {u'message': '', 'code': 0, 'data': {'1.2.4.8': 100}} + self.server.ping = mock.Mock(return_value=r) shell.main(['ping', 'agent-64', '1.2.4.8']) - self.assertEqual(agent_api.AgentPing.take_action.called, True) + self.assertEqual(self.server.ping.called, True) def test_stethoclient_setup_link(self): - r = (('Field', 'Value'), []) - agent_api.SetUpLink.take_action = mock.Mock(return_value=r) + r = {u'message': '', 'code': 0, 'data': {}} + rr = {'message': '', 'code': 0, 'data': {'name': 'eth0'}} + self.server.get_interface = mock.Mock(return_value=rr) + self.server.setup_link = mock.Mock(return_value=r) shell.main(['setup-link', 'agent-64', 'eth1', '192.168.10.10/24']) - self.assertEqual(agent_api.SetUpLink.take_action.called, True) + self.assertEqual(self.server.setup_link.called, True) def test_stethoclint_check_ports_on_br(self): - r = (('Port', 'Exists'), []) - agent_api.CheckPortsOnBr.take_action = mock.Mock(return_value=r) - shell.main(['check-ports-on-br', 'agent-64', 'br0', 'a']) - self.assertEqual(agent_api.CheckPortsOnBr.take_action.called, True) + r = {u'message': '', 'code': 0, 'data': {'ovs_port': True}} + self.server.check_ports_on_br = mock.Mock(return_value=r) + shell.main(['check-ports-on-br', 'agent-64', 'br0', 'ovs_port']) + self.assertEqual(self.server.check_ports_on_br.called, True) def test_check_iperf(self): - r = (('Field', 'Value'), []) - iperf_api.CheckIperf.take_action = mock.Mock(return_value=r) + iperf_server_r = {u'message': u'', u'code': 0, u'data': {u'pid': 1234}} + iperf_client_r = { + 'message': '', + 'code': 0, + 'data': { + 'Transfer': '1 GBytes', + 'Bandwidth': '1 Gbits/sec', + 'Interval': '5.0', + 'server_ip': 'localhost' + } + } + teardown_iperf_r = {u'message': u'', u'code': 0, u'data': {}} + self.server.setup_iperf_server = mock.Mock(return_value=iperf_server_r) + self.server.start_iperf_client = mock.Mock(return_value=iperf_client_r) + self.server.teardown_iperf_server = mock.Mock( + return_value=teardown_iperf_r) shell.main(['check-iperf', 'agent-64', 'agent-64']) - self.assertEqual(iperf_api.CheckIperf.take_action.called, True) + self.assertEqual(self.server.setup_iperf_server.called, True) + self.assertEqual(self.server.start_iperf_client.called, True) + self.assertEqual(self.server.teardown_iperf_server.called, True)