[FFmpeg-devel] [PATCH] [FATE] Properly list test errors when there are no failed tests

Martin Storsjö martin at martin.st
Fri May 16 11:10:58 EEST 2025


If there were failures while running tests, e.g. if failing to
compile checkasm or any other of the test programs, there are no
failed tests per se, and the number of succeessful tests is
equal to the total number of tests.

For these cases, check the job status code instead of declaring
them as a full success.
---
 history.cgi | 2 +-
 index.cgi   | 2 +-
 report.cgi  | 6 +++++-
 3 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/history.cgi b/history.cgi
index 533999c..d0a855d 100755
--- a/history.cgi
+++ b/history.cgi
@@ -76,7 +76,7 @@ for my $date ((sort { $b cmp $a } @reps)[0..49]) {
     td $$rep{nwarn};
     if ($npass) {
         $rtext  = "$npass / $ntest";
-        $rclass = $npass==$ntest? 'pass' : $npass? 'warn' : 'fail';
+        $rclass = $$rep{status}==0? 'pass' : $npass? 'warn' : 'fail';
     } elsif (!$ntest and !$$rep{status}) {
         $rtext  = "build only";
         $rclass = $$rep{status}? 'fail' : 'pass';
diff --git a/index.cgi b/index.cgi
index 25c61e9..89e599a 100755
--- a/index.cgi
+++ b/index.cgi
@@ -286,7 +286,7 @@ for my $rep (sort repcmp @reps) {
     td $$rep{comment}, class => 'comment';
     if ($npass) {
         $rtext  = "$npass / $ntest";
-        $rclass = $npass==$ntest? 'pass' : $npass? 'warn' : 'fail';
+        $rclass = $$rep{status}==0? 'pass' : $npass? 'warn' : 'fail';
     } elsif (!$ntest and !$$rep{status}) {
         $rtext  = "build only";
         $rclass = $$rep{status}? 'fail' : 'pass';
diff --git a/report.cgi b/report.cgi
index 5a2394d..ca003b1 100755
--- a/report.cgi
+++ b/report.cgi
@@ -183,7 +183,11 @@ if ($nfail) {
     }
     end 'tbody';
 } elsif ($ntest) {
-    start 'tr', class => 'pass'; th 'All tests successful', colspan => 3; end;
+    if ($$hdr{status}) {
+        start 'tr', class => 'fail'; th 'Failure building tests', colspan => 3; end;
+    } else {
+        start 'tr', class => 'pass'; th 'All tests successful', colspan => 3; end;
+    }
 } else {
     my $class = $$hdr{status}? 'fail' : 'pass';
     start 'tr', class => $class; th 'No tests were run',    colspan => 3; end;
-- 
2.43.0



More information about the ffmpeg-devel mailing list