Francois Gouget : testbot/LogUtils: Better deal with garbled result lines.

Alexandre Julliard julliard at winehq.org
Fri Nov 15 10:41:28 CST 2019


Module: tools
Branch: master
Commit: f3bdf1781b5c79a529f8e09dad2fc063e255b495
URL:    https://source.winehq.org/git/tools.git/?a=commit;h=f3bdf1781b5c79a529f8e09dad2fc063e255b495

Author: Francois Gouget <fgouget at codeweavers.com>
Date:   Fri Nov 15 12:55:44 2019 +0100

testbot/LogUtils: Better deal with garbled result lines.

The garbage may look like it is part of the dll or unit name, for
instance 09d4comdlg32 or dd3d10core. So preferentially match lines
using the current dll or unit name and only use regular matches to
detect misplaced lines.

Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 testbot/lib/WineTestBot/LogUtils.pm | 36 ++++++++++++++++++------------------
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/testbot/lib/WineTestBot/LogUtils.pm b/testbot/lib/WineTestBot/LogUtils.pm
index 5e5af0e..282906e 100644
--- a/testbot/lib/WineTestBot/LogUtils.pm
+++ b/testbot/lib/WineTestBot/LogUtils.pm
@@ -379,23 +379,23 @@ sub ParseWineTestReport($$$)
         _AddError($Parser, "Misplaced $SubUnit subtest\n");
       }
     }
-    elsif ($Line =~ /^([_a-z0-9]+)\.c:\d+: Test (?:failed|succeeded inside todo block): / or
-           ($Cur->{Unit} ne "" and
-            $Line =~ /($Cur->{UnitsRE})\.c:\d+: Test (?:failed|succeeded inside todo block): /))
+    elsif (($Cur->{Unit} ne "" and
+            $Line =~ /($Cur->{UnitsRE})\.c:\d+: Test (?:failed|succeeded inside todo block): /) or
+           $Line =~ /^([_a-z0-9]+)\.c:\d+: Test (?:failed|succeeded inside todo block): /)
     {
       _CheckUnit($Parser, $Cur, $1, "failure");
       $Cur->{LineFailures}++;
     }
-    elsif ($Line =~ /^([_a-z0-9]+)\.c:\d+: Test marked todo: / or
-           ($Cur->{Unit} ne "" and
-            $Line =~ /($Cur->{UnitsRE})\.c:\d+: Test marked todo: /))
+    elsif (($Cur->{Unit} ne "" and
+            $Line =~ /($Cur->{UnitsRE})\.c:\d+: Test marked todo: /) or
+           $Line =~ /^([_a-z0-9]+)\.c:\d+: Test marked todo: /)
     {
       _CheckUnit($Parser, $Cur, $1, "todo");
       $Cur->{LineTodos}++;
     }
-    elsif ($Line =~ /^([_a-z0-9]+)\.c:\d+: Tests skipped: / or
-           ($Cur->{Unit} ne "" and
-            $Line =~ /($Cur->{UnitsRE})\.c:\d+: Tests skipped: /))
+    elsif (($Cur->{Unit} ne "" and
+            $Line =~ /($Cur->{UnitsRE})\.c:\d+: Tests skipped: /) or
+           $Line =~ /^([_a-z0-9]+)\.c:\d+: Tests skipped: /)
     {
       my $Unit = $1;
       # Don't complain and don't count misplaced skips. Only complain if they
@@ -414,9 +414,9 @@ sub ParseWineTestReport($$$)
 
       $Cur->{LineFailures}++;
     }
-    elsif ($Line =~ /^([0-9a-f]+):([_.a-z0-9]+): unhandled exception [0-9a-fA-F]{8} at / or
-           ($Cur->{Unit} ne "" and
-            $Line =~ /([0-9a-f]+):($Cur->{UnitsRE}): unhandled exception [0-9a-fA-F]{8} at /))
+    elsif (($Cur->{Unit} ne "" and
+            $Line =~ /([0-9a-f]+):($Cur->{UnitsRE}): unhandled exception [0-9a-fA-F]{8} at /) or
+           $Line =~ /^([0-9a-f]+):([_.a-z0-9]+): unhandled exception [0-9a-fA-F]{8} at /)
     {
       my ($Pid, $Unit) = ($1, $2);
 
@@ -429,9 +429,9 @@ sub ParseWineTestReport($$$)
       _CheckUnit($Parser, $Cur, $Unit, "unhandled exception");
       $Cur->{LineFailures}++;
     }
-    elsif ($Line =~ /^([0-9a-f]+):([_a-z0-9]+): \d+ tests? executed \((\d+) marked as todo, (\d+) failures?\), (\d+) skipped\./ or
-           ($Cur->{Unit} ne "" and
-            $Line =~ /([0-9a-f]+):($Cur->{Unit}): \d+ tests? executed \((\d+) marked as todo, (\d+) failures?\), (\d+) skipped\./))
+    elsif (($Cur->{Unit} ne "" and
+            $Line =~ /([0-9a-f]+):($Cur->{Unit}): \d+ tests? executed \((\d+) marked as todo, (\d+) failures?\), (\d+) skipped\./) or
+           $Line =~ /^([0-9a-f]+):([_a-z0-9]+): \d+ tests? executed \((\d+) marked as todo, (\d+) failures?\), (\d+) skipped\./)
     {
       my ($Pid, $Unit, $Todos, $Failures, $Skips) = ($1, $2, $3, $4, $5);
 
@@ -451,9 +451,9 @@ sub ParseWineTestReport($$$)
         _CheckUnit($Parser, $Cur, $Unit, "test summary") if ($Todos or $Failures);
       }
     }
-    elsif ($Line =~ /^([_.a-z0-9-]+):([_a-z0-9]*):([0-9a-f]+) done \((-?\d+)\)(?:\r?$| in)/ or
-           ($Cur->{Dll} ne "" and
-            $Line =~ /(\Q$Cur->{Dll}\E):([_a-z0-9]*):([0-9a-f]+) done \((-?\d+)\)(?:\r?$| in)/))
+    elsif (($Cur->{Dll} ne "" and
+            $Line =~ /(\Q$Cur->{Dll}\E):([_a-z0-9]*):([0-9a-f]+) done \((-?\d+)\)(?:\r?$| in)/) or
+           $Line =~ /^([_.a-z0-9-]+):([_a-z0-9]*):([0-9a-f]+) done \((-?\d+)\)(?:\r?$| in)/)
     {
       my ($Dll, $Unit, $Pid, $Rc) = ($1, $2, $3, $4);
 




More information about the wine-cvs mailing list