X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=test%2Ftest_bihash.py;h=b57485a3e9a24ad3acfd8b03f151801e5d1a4336;hb=d3456b8d85160167c56b1fbc900b11ad67e033a8;hp=a5cf065735fe83737235c3b38f70612005f087ec;hpb=8b5dc4fd5e6698870ca33f50079b7277aa11f24e;p=vpp.git diff --git a/test/test_bihash.py b/test/test_bihash.py index a5cf065735f..b57485a3e9a 100644 --- a/test/test_bihash.py +++ b/test/test_bihash.py @@ -1,40 +1,81 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import unittest +from config import config from framework import VppTestCase, VppTestRunner from vpp_ip_route import VppIpTable, VppIpRoute, VppRoutePath -class TestTCP(VppTestCase): - """ Bihash Test Cases """ +class TestBihash(VppTestCase): + """Bihash Test Cases""" @classmethod def setUpClass(cls): - super(TestTCP, cls).setUpClass() + # increase vapi timeout, to avoid spurious "test bihash ..." + # failures reported on aarch64 w/ test-debug + cls.vapi_response_timeout = 20 + super(TestBihash, cls).setUpClass() + + @classmethod + def tearDownClass(cls): + super(TestBihash, cls).tearDownClass() def setUp(self): - super(TestTCP, self).setUp() + super(TestBihash, self).setUp() def tearDown(self): - super(TestTCP, self).tearDown() + super(TestBihash, self).tearDown() def test_bihash_unittest(self): - """ Bihash Add/Del Test """ - error = self.vapi.cli("test bihash ") + """Bihash Add/Del Test""" + error = self.vapi.cli("test bihash careful 0 verbose 0") if error: self.logger.critical(error) - self.assertEqual(error.find("failed"), -1) + self.assertNotIn("failed", error) def test_bihash_thread(self): - """ Bihash Thread Test """ + """Bihash Thread Test""" + + error = self.vapi.cli( + "test bihash threads 2 nbuckets" + " 64000 careful 0 verbose 0" + ) + + if error: + self.logger.critical(error) + self.assertNotIn("failed", error) + + def test_bihash_vec64(self): + """Bihash vec64 Test""" + + error = self.vapi.cli("test bihash vec64") - error = self.vapi.cli("test bihash threads 2 nbuckets 64000") + if error: + self.logger.critical(error) + self.assertNotIn("failed", error) + + @unittest.skipUnless(config.gcov, "part of code coverage tests") + def test_bihash_coverage(self): + """Improve Code Coverage""" + + error = self.vapi.cli( + "test bihash nitems 10 ncycles 3" + + "search 2 careful 1 verbose 2 non-random-keys" + ) if error: self.logger.critical(error) - self.assertEqual(error.find("failed"), -1) + self.assertNotIn("failed", error) + + error = self.vapi.cli( + "test bihash nitems 10 nbuckets 1 ncycles 3" + + "search 2 careful 1 verbose 2 non-random-keys" + ) + if error: + self.logger.critical(error) + self.assertNotIn("failed", error) + -if __name__ == '__main__': +if __name__ == "__main__": unittest.main(testRunner=VppTestRunner)