9 from vstf.agent.unittest.perf import model
10 from vstf.agent.perf import pktgen
13 class TestPktgen(model.Model):
15 super(TestPktgen, self).setUp()
18 super(TestPktgen, self).tearDown()
20 def test_single_thread(self):
21 perf = pktgen.Pktgen()
22 print perf.receive_start()
25 {"iface": self.device_list[0], "mac": self.mac_list[0]}
28 {"mac": self.mac_list[1]}
34 ret = perf.send_start(**send)
35 self.assertEqual((0, 'start pktgen send success'), ret, "send_start failed, ret=%s" % str(ret))
37 ret = perf.send_stop()
38 self.assertEqual([(0, '')], ret, "send_start failed, ret=%s" % ret)
39 ret = perf.receive_stop()
40 self.assertEqual((0, 'pktgen neednt receive stop'), ret, "send_stop failed, ret=%s" % str(ret))
42 def test_single_thread_bidirectional(self):
43 perf = pktgen.Pktgen()
44 print perf.receive_start()
47 {"iface": self.device_list[0], "mac": self.mac_list[0]},
48 {"iface": self.device_list[1], "mac": self.mac_list[1]}
51 {"mac": self.mac_list[1]},
52 {"mac": self.mac_list[0]}
58 ret = perf.send_start(**send)
59 self.assertEqual((0, 'start pktgen send success'), ret, "send_start failed, ret=%s" % str(ret))
61 ret = perf.send_stop()
62 self.assertEqual([(0, '')], ret, "send_start failed, ret=%s" % ret)
63 ret = perf.receive_stop()
64 self.assertEqual((0, 'pktgen neednt receive stop'), ret, "send_stop failed, ret=%s" % str(ret))
67 perf = pktgen.Pktgen()
68 print perf.receive_start()
71 {"iface": self.device_list[0], "mac": self.mac_list[0]}
74 {"mac": self.mac_list[1]}
80 ret = perf.send_start(**send)
81 self.assertEqual((0, 'start pktgen send success'), ret, "send_start failed, ret=%s" % str(ret))
85 if __name__ == "__main__":
88 logging.getLogger(__name__)
89 logging.basicConfig(level=logging.DEBUG)