aboutsummaryrefslogtreecommitdiffstats
path: root/test/framework.py
diff options
context:
space:
mode:
authorDave Wallace <dwallacelf@gmail.com>2022-09-18 22:28:44 -0400
committerAndrew Yourtchenko <ayourtch@gmail.com>2022-09-19 13:59:05 +0000
commite95b246c7b87bf2a1d51d2061c72a9824a6ff047 (patch)
treed2c230909f9ab5f1c9d3aed67b1824094767dfe1 /test/framework.py
parenta58dae61aea7e781a27ce65462dd38ab55e8599c (diff)
tests: skip tests failing on ubuntu 22.04
Type: test Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: I218059de5d05680d661f302293475b6c2a7bf81d
Diffstat (limited to 'test/framework.py')
-rw-r--r--test/framework.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/framework.py b/test/framework.py
index bfcc03086e5..230b2d57c55 100644
--- a/test/framework.py
+++ b/test/framework.py
@@ -200,6 +200,17 @@ def _is_platform_aarch64():
is_platform_aarch64 = _is_platform_aarch64()
+def _is_distro_ubuntu2204():
+ with open("/etc/os-release") as f:
+ for line in f.readlines():
+ if "jammy" in line:
+ return True
+ return False
+
+
+is_distro_ubuntu2204 = _is_distro_ubuntu2204()
+
+
class KeepAliveReporter(object):
"""
Singleton object which reports test start to parent process
@@ -245,6 +256,8 @@ class TestCaseTag(Enum):
FIXME_VPP_WORKERS = 2
# marks the suites broken when ASan is enabled
FIXME_ASAN = 3
+ # marks suites broken on Ubuntu-22.04
+ FIXME_UBUNTU2204 = 4
def create_tag_decorator(e):
@@ -261,6 +274,7 @@ def create_tag_decorator(e):
tag_run_solo = create_tag_decorator(TestCaseTag.RUN_SOLO)
tag_fixme_vpp_workers = create_tag_decorator(TestCaseTag.FIXME_VPP_WORKERS)
tag_fixme_asan = create_tag_decorator(TestCaseTag.FIXME_ASAN)
+tag_fixme_ubuntu2204 = create_tag_decorator(TestCaseTag.FIXME_UBUNTU2204)
class DummyVpp:
@@ -336,6 +350,12 @@ class VppTestCase(CPUInterface, unittest.TestCase):
cls = unittest.skip("Skipping @tag_fixme_asan tests")(cls)
@classmethod
+ def skip_fixme_ubuntu2204(cls):
+ """if distro is ubuntu 22.04 and @tag_fixme_ubuntu2204 mark for skip"""
+ if cls.has_tag(TestCaseTag.FIXME_UBUNTU2204):
+ cls = unittest.skip("Skipping @tag_fixme_ubuntu2204 tests")(cls)
+
+ @classmethod
def instance(cls):
"""Return the instance of this testcase"""
return cls.test_instance
@@ -1749,6 +1769,12 @@ class VppTestResult(unittest.TestResult):
test_title = colorize(f"FIXME with ASAN: {test_title}", RED)
test.skip_fixme_asan()
+ if is_distro_ubuntu2204 == True and test.has_tag(
+ TestCaseTag.FIXME_UBUNTU2204
+ ):
+ test_title = colorize(f"FIXME on Ubuntu-22.04: {test_title}", RED)
+ test.skip_fixme_ubuntu2204()
+
if hasattr(test, "vpp_worker_count"):
if test.vpp_worker_count == 0:
test_title += " [main thread only]"