From 3bd97a3b821b8094a50d4c33a944bc3a21342195 Mon Sep 17 00:00:00 2001 From: baldurk Date: Thu, 15 Dec 2022 13:34:36 +0000 Subject: [PATCH] Show sections as failed with their own failed status --- util/test/rdtest/logging.py | 8 ++++++-- util/test/rdtest/testresults.css | 4 ++-- util/test/rdtest/testresults.js | 8 +++++--- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/util/test/rdtest/logging.py b/util/test/rdtest/logging.py index 75ae06143..5ec44211f 100644 --- a/util/test/rdtest/logging.py +++ b/util/test/rdtest/logging.py @@ -28,6 +28,7 @@ class TestLogger: self.test_name = '' self.outputs = [sys.stdout] self.failed = False + self.section_failed = False def subprocess_print(self, line: str): for o in self.outputs: @@ -85,8 +86,11 @@ class TestLogger: def begin_section(self, name: str): self.rawprint(">> Section {}".format(name)) self.indent() + self.section_failed = False def end_section(self, name: str): + if self.section_failed: + self.rawprint("$$ FAILED") self.dedent() self.rawprint("<< Section {}".format(name)) @@ -104,12 +108,12 @@ class TestLogger: self.rawprint("** " + message) def error(self, message): - self.failed = True + self.failed = self.section_failed = True self.rawprint("!! " + message) def failure(self, ex): - self.failed = True + self.failed = self.section_failed = True if ex is TestFailureException: self.rawprint("!+ FAILURE in {}: {}".format(self.test_name, str(ex))) diff --git a/util/test/rdtest/testresults.css b/util/test/rdtest/testresults.css index 5fc2b99ed..00b7565ef 100644 --- a/util/test/rdtest/testresults.css +++ b/util/test/rdtest/testresults.css @@ -8,8 +8,8 @@ div.test { background: linear-gradient(#afa 0px, #fff 3em); } -div.test.failed { - background: linear-gradient(#faa 0px, #fff 3em); +div.failed { + background: linear-gradient(#faa 0px, #fff 3em) !important; } div.diff pre { diff --git a/util/test/rdtest/testresults.js b/util/test/rdtest/testresults.js index 30dda04bd..256eb8198 100644 --- a/util/test/rdtest/testresults.js +++ b/util/test/rdtest/testresults.js @@ -204,7 +204,7 @@ document.body.onload = function() { } } else if(m[1] == '$$') { if(m[2] == 'FAILED') { - failed_tests.push(test_name) + html += '
'; } } } else { @@ -226,8 +226,10 @@ document.body.onload = function() { document.body.innerHTML += html; document.body.style.visibility = 'inherit'; - for(var i=0; i < failed_tests.length; i++) { - var test = document.getElementById(failed_tests[i]); + var failed = document.getElementsByClassName('failed'); + + for(var i=0; i < failed.length; i++) { + var test = failed[i].parentElement.parentElement; test.classList.add('failed'); }