eddd8e3588
- Generate copyright year and version instead of using hard-coded data Type: refactor Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: I6058f5025323b3aa483f5df4a2c4371e27b5914e
161 lines
6.0 KiB
Python
161 lines
6.0 KiB
Python
#!/usr/bin/env python3
|
|
|
|
import unittest
|
|
|
|
from framework import VppTestCase, VppTestRunner, running_gcov_tests
|
|
from vpp_ip_route import VppIpTable, VppIpRoute, VppRoutePath
|
|
|
|
|
|
class TestMactime(VppTestCase):
|
|
""" Mactime Unit Test Cases """
|
|
|
|
@classmethod
|
|
def setUpClass(cls):
|
|
super(TestMactime, cls).setUpClass()
|
|
|
|
@classmethod
|
|
def tearDownClass(cls):
|
|
super(TestMactime, cls).tearDownClass()
|
|
|
|
def setUp(self):
|
|
super(TestMactime, self).setUp()
|
|
|
|
def tearDown(self):
|
|
super(TestMactime, self).tearDown()
|
|
|
|
def test_mactime_range_unittest(self):
|
|
""" Time Range Test """
|
|
error = self.vapi.cli("test time-range")
|
|
|
|
if error:
|
|
self.logger.critical(error)
|
|
self.assertNotIn('FAILED', error)
|
|
|
|
@unittest.skipUnless(running_gcov_tests, "part of code coverage tests")
|
|
def test_mactime_unittest(self):
|
|
""" Mactime Plugin Code Coverage Test """
|
|
cmds = ["loopback create",
|
|
"mactime enable-disable disable",
|
|
"mactime enable-disable loop0",
|
|
"mactime enable-disable loop0 disable",
|
|
"mactime enable-disable sw_if_index 9999",
|
|
"bin mactime_enable_disable loop0",
|
|
"bin mactime_enable_disable loop0 disable",
|
|
"bin mactime_enable_disable sw_if_index 1",
|
|
"set interface state loop0 up",
|
|
"clear mactime",
|
|
"set ip neighbor loop0 192.168.1.1 00:d0:2d:5e:86:85",
|
|
"bin mactime_add_del_range name sallow "
|
|
"mac 00:d0:2d:5e:86:85 allow-static del",
|
|
"bin mactime_add_del_range name sallow "
|
|
"mac 00:d0:2d:5e:86:85 allow-static",
|
|
"bin mactime_add_del_range name sallow "
|
|
"mac 00:d0:2d:5e:86:85 allow-static del",
|
|
"bin mactime_add_del_range name sallow "
|
|
"mac 00:d0:2d:5e:86:85 allow-static",
|
|
"bin mactime_add_del_range name sblock "
|
|
"mac 01:00:5e:7f:ff:fa drop-static",
|
|
"bin mactime_add_del_range name ddrop "
|
|
"mac c8:bc:c8:5a:ba:f3 drop-range Sun - Sat "
|
|
"00:00 - 23:59",
|
|
"bin mactime_add_del_range name dallow "
|
|
"mac c8:bc:c8:5a:ba:f4 allow-range Sun - Sat "
|
|
"00:00 - 23:59",
|
|
"bin mactime_add_del_range name multi "
|
|
"mac c8:bc:c8:f0:f0:f0 allow-range Sun - Mon "
|
|
"00:00 - 23:59 Tue - Sat 00:00 - 23:59",
|
|
"bin mactime_add_del_range bogus",
|
|
"bin mactime_add_del_range mac 01:00:5e:7f:f0:f0 allow-static",
|
|
"bin mactime_add_del_range "
|
|
"name tooloooooooooooooooooooooooooooooooooooooooooooooooo"
|
|
"nnnnnnnnnnnnnnnnnnnnnnnnnnnng mac 00:00:de:ad:be:ef "
|
|
"allow-static",
|
|
"packet-generator new {\n"
|
|
" name allow\n"
|
|
" limit 15\n"
|
|
" size 128-128\n"
|
|
" interface loop0\n"
|
|
" node ethernet-input\n"
|
|
" data {\n"
|
|
" IP6: 00:d0:2d:5e:86:85 -> 00:0d:ea:d0:00:00\n"
|
|
" ICMP: db00::1 -> db00::2\n"
|
|
" incrementing 30\n"
|
|
" }\n",
|
|
"}\n",
|
|
"packet-generator new {\n"
|
|
" name deny\n"
|
|
" limit 15\n"
|
|
" size 128-128\n"
|
|
" interface loop0\n"
|
|
" node ethernet-input\n"
|
|
" data {\n"
|
|
" IP6: 01:00:5e:7f:ff:fa -> 00:0d:ea:d0:00:00\n"
|
|
" ICMP: db00::1 -> db00::2\n"
|
|
" incrementing 30\n"
|
|
" }\n",
|
|
"}\n",
|
|
"packet-generator new {\n"
|
|
" name ddrop\n"
|
|
" limit 15\n"
|
|
" size 128-128\n"
|
|
" interface loop0\n"
|
|
" node ethernet-input\n"
|
|
" data {\n"
|
|
" IP6: c8:bc:c8:5a:ba:f3 -> 00:0d:ea:d0:00:00\n"
|
|
" ICMP: db00::1 -> db00::2\n"
|
|
" incrementing 30\n"
|
|
" }\n",
|
|
"}\n",
|
|
"packet-generator new {\n"
|
|
" name dallow\n"
|
|
" limit 15\n"
|
|
" size 128-128\n"
|
|
" interface loop0\n"
|
|
" node ethernet-input\n"
|
|
" data {\n"
|
|
" IP6: c8:bc:c8:5a:ba:f4 -> 00:0d:ea:d0:00:00\n"
|
|
" ICMP: db00::1 -> db00::2\n"
|
|
" incrementing 30\n"
|
|
" }\n"
|
|
"}\n"
|
|
"packet-generator new {\n"
|
|
" name makeentry\n"
|
|
" limit 15\n"
|
|
" size 128-128\n"
|
|
" interface loop0\n"
|
|
" node ethernet-input\n"
|
|
" data {\n"
|
|
" IP6: c8:bc:c8:5a:b0:0b -> 00:0d:ea:d0:00:00\n"
|
|
" ICMP: db00::1 -> db00::2\n"
|
|
" incrementing 30\n"
|
|
" }\n"
|
|
"}\n"
|
|
"packet-generator new {\n"
|
|
" name tx\n"
|
|
" limit 15\n"
|
|
" size 128-128\n"
|
|
" interface local0\n"
|
|
" tx-interface loop0\n"
|
|
" node loop0-output\n"
|
|
" data {\n"
|
|
" hex 0x01005e7ffffa000dead000000800"
|
|
"0102030405060708090a0b0c0d0e0f0102030405\n"
|
|
" }\n"
|
|
"}\n"
|
|
"trace add pg-input 2",
|
|
"pa en",
|
|
"show mactime verbose 2",
|
|
"show trace",
|
|
"show error"]
|
|
|
|
for cmd in cmds:
|
|
r = self.vapi.cli_return_response(cmd)
|
|
if r.retval != 0:
|
|
if hasattr(r, 'reply'):
|
|
self.logger.info(cmd + " FAIL reply " + r.reply)
|
|
else:
|
|
self.logger.info(cmd + " FAIL retval " + str(r.retval))
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main(testRunner=VppTestRunner)
|