#!/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']}", ] ) # The log coloring causes the XML to be invalid, so set recover=True tree = etree.parse(sys.argv[1], etree.XMLParser(recover=True)) 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)