From ddf5796900d9ae8381c8299325860f2f928567ff Mon Sep 17 00:00:00 2001 From: Bastien Nocera Date: Tue, 30 Nov 2021 16:00:19 +0100 Subject: ci: Fail CI when tests are skipped --- .ci/fail_skipped_tests.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100755 .ci/fail_skipped_tests.py (limited to '.ci') diff --git a/.ci/fail_skipped_tests.py b/.ci/fail_skipped_tests.py new file mode 100755 index 00000000..63499214 --- /dev/null +++ b/.ci/fail_skipped_tests.py @@ -0,0 +1,25 @@ +#!/usr/bin/python3 + +from lxml import etree +import sys + +def format_title(title): + """Put title in a box""" + box = { + 'tl': '╔', 'tr': '╗', 'bl': '╚', 'br': '╝', 'h': '═', 'v': '║', + } + hline = box['h'] * (len(title) + 2) + + return '\n'.join([ + f"{box['tl']}{hline}{box['tr']}", + f"{box['v']} {title} {box['v']}", + f"{box['bl']}{hline}{box['br']}", + ]) + +tree = etree.parse(sys.argv[1]) +for suite in tree.xpath('/testsuites/testsuite'): + skipped = suite.get('skipped') + if int(skipped) != 0: + print(format_title('Tests were skipped when they should not have been. All the tests must be run in the CI'), + end='\n\n', flush=True) + sys.exit(1) -- cgit v1.2.1