From 06f328129a01276858fff1086215478fa106dd8e Mon Sep 17 00:00:00 2001 From: Andrew Yourtchenko Date: Thu, 14 Jan 2021 10:19:08 +0000 Subject: tests: add generalized tags for tests, use them for run-solo tests We have accumulated several scenarios in prod or wishlists where it would be useful to have a general infra to say yes/no about a certain test, and potentially make decisions based on that, for example: - runs solo (aka 'time-dependent') - (wishlist) part of quick smoke-test set - (wishlist) intermittent failure unrelated to timing - (wishlist) test broken with a multi-worker config in vpp Refactor the current "run-solo" code to allow for this extension. Type: test Change-Id: Ia5b3810e57c0543753c8e0dc4dc0cfb4a30b36ac Signed-off-by: Andrew Yourtchenko Signed-off-by: Klement Sekera --- src/vnet/bfd/test/test_bfd.py | 31 +++++++------------------------ 1 file changed, 7 insertions(+), 24 deletions(-) (limited to 'src/vnet/bfd') diff --git a/src/vnet/bfd/test/test_bfd.py b/src/vnet/bfd/test/test_bfd.py index 784cdadb24d..71904a89f7f 100644 --- a/src/vnet/bfd/test/test_bfd.py +++ b/src/vnet/bfd/test/test_bfd.py @@ -22,6 +22,7 @@ from scapy.packet import Raw from bfd import VppBFDAuthKey, BFD, BFDAuthType, VppBFDUDPSession, \ BFDDiagCode, BFDState, BFD_vpp_echo from framework import VppTestCase, VppTestRunner, running_extended_tests +from framework import tag_run_solo from util import ppp from vpp_ip import DpoProto from vpp_ip_route import VppIpRoute, VppRoutePath @@ -677,6 +678,7 @@ def wait_for_bfd_packet(test, timeout=1, pcap_time_min=None, is_tunnel=False): return p +@tag_run_solo class BFD4TestCase(VppTestCase): """Bidirectional Forwarding Detection (BFD)""" @@ -685,10 +687,6 @@ class BFD4TestCase(VppTestCase): vpp_session = None test_session = None - @classmethod - def force_solo(cls): - return True - @classmethod def setUpClass(cls): super(BFD4TestCase, cls).setUpClass() @@ -1489,6 +1487,7 @@ class BFD4TestCase(VppTestCase): self.assertFalse(vpp_session.query_vpp_config()) +@tag_run_solo class BFD6TestCase(VppTestCase): """Bidirectional Forwarding Detection (BFD) (IPv6) """ @@ -1497,10 +1496,6 @@ class BFD6TestCase(VppTestCase): vpp_session = None test_session = None - @classmethod - def force_solo(cls): - return True - @classmethod def setUpClass(cls): super(BFD6TestCase, cls).setUpClass() @@ -1706,16 +1701,13 @@ class BFD6TestCase(VppTestCase): self.assertFalse(vpp_session.query_vpp_config()) +@tag_run_solo class BFDFIBTestCase(VppTestCase): """ BFD-FIB interactions (IPv6) """ vpp_session = None test_session = None - @classmethod - def force_solo(cls): - return True - @classmethod def setUpClass(cls): super(BFDFIBTestCase, cls).setUpClass() @@ -1896,6 +1888,7 @@ class BFDTunTestCase(VppTestCase): bfd_session_down(self) +@tag_run_solo class BFDSHA1TestCase(VppTestCase): """Bidirectional Forwarding Detection (BFD) (SHA1 auth) """ @@ -1904,10 +1897,6 @@ class BFDSHA1TestCase(VppTestCase): vpp_session = None test_session = None - @classmethod - def force_solo(cls): - return True - @classmethod def setUpClass(cls): super(BFDSHA1TestCase, cls).setUpClass() @@ -2131,6 +2120,7 @@ class BFDSHA1TestCase(VppTestCase): bfd_session_up(self) +@tag_run_solo class BFDAuthOnOffTestCase(VppTestCase): """Bidirectional Forwarding Detection (BFD) (changing auth) """ @@ -2138,10 +2128,6 @@ class BFDAuthOnOffTestCase(VppTestCase): vpp_session = None test_session = None - @classmethod - def force_solo(cls): - return True - @classmethod def setUpClass(cls): super(BFDAuthOnOffTestCase, cls).setUpClass() @@ -2347,14 +2333,11 @@ class BFDAuthOnOffTestCase(VppTestCase): "number of bfd events") +@tag_run_solo class BFDCLITestCase(VppTestCase): """Bidirectional Forwarding Detection (BFD) (CLI) """ pg0 = None - @classmethod - def force_solo(cls): - return True - @classmethod def setUpClass(cls): super(BFDCLITestCase, cls).setUpClass() -- cgit 1.2.3-korg