tests: skip tests failing on ubuntu 22.04
Type: test
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I218059de5d05680d661f302293475b6c2a7bf81d
diff --git a/test/framework.py b/test/framework.py
index bfcc030..230b2d5 100644
--- a/test/framework.py
+++ b/test/framework.py
@@ -200,6 +200,17 @@
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 @@
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 @@
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 @@
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 @@
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]"