From: Heinrich Schuchardt <[email protected]>

We invoke the ut command in test_ut.py. Currently we only check for
failures. Instead we should also indicate if sub-tests were skipped.

With this change we will get output like the following for skipped tests:

test/py/tests/test_ut.py ..sssss......ss..............s.sssss.s.s...
================================ short test summary info 
================================
SKIPPED [1] test/py/tests/test_ut.py:597: Test addrmap addrmap_test_basic has 1 
skipped sub-test(s).
SKIPPED [1] test/py/tests/test_ut.py:597: Test bdinfo bdinfo_test_eth has 4 
skipped sub-test(s).

Signed-off-by: Heinrich Schuchardt <[email protected]>
---
 test/py/tests/test_ut.py | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/test/py/tests/test_ut.py b/test/py/tests/test_ut.py
index cdf54adc600..6d535b5206d 100644
--- a/test/py/tests/test_ut.py
+++ b/test/py/tests/test_ut.py
@@ -11,6 +11,7 @@ import collections
 import gzip
 import os
 import os.path
+import re
 import pytest
 
 import utils
@@ -589,3 +590,9 @@ def test_ut(ubman, ut_subtest):
     else:
         output = ubman.run_command('ut ' + ut_subtest)
     assert output.endswith('failures: 0')
+    lastline = output.splitlines()[-1]
+    if "skipped: 0," not in lastline:
+        match = re.search(r'skipped:\s*(\d+),', lastline)
+        if match:
+            count = match.group(1)
+            pytest.skip(f'Test {ut_subtest} has {count} skipped sub-test(s).')
-- 
2.51.0

Reply via email to