Refactor stethoclient unit test

Change-Id: I239d498664fabca1fc82bb99a490af9ce3bc3e4a
This commit is contained in:
changzhi1990 2016-01-18 11:00:34 +08:00
parent 955884ceeb
commit 66b440e214

View File

@ -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)