[prev in list] [next in list] [prev in thread] [next in thread] 

List:       wine-devel
Subject:    [PATCH 1/2] testbot/LogUtils: Ignore the variable parts of failure messages.
From:       Francois Gouget <fgouget () codeweavers ! com>
Date:       2019-12-29 23:48:07
Message-ID: ab02219902f1ba966d712a09a9a4a668dd6b4377.1577663090.git.fgouget () codeweavers ! com
[Download RAW message or body]

Some failure messages have to include elements that change with every
run in order to allow diagnosing. But this makes the failure message
look different with every run, thus breaking the detection of new
failures.
So such 'variable' parts can now be enclosed in double parentheses, for
instance "((0x2d))", to let the TestBot know it should ignore this part
when comparing failure messages.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48209
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
---

I'm open to other ways to identify the variable parts.

 testbot/lib/WineTestBot/LogUtils.pm | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/testbot/lib/WineTestBot/LogUtils.pm b/testbot/lib/WineTestBot/LogUtils.pm
index c57742691..0489f3e5b 100644
--- a/testbot/lib/WineTestBot/LogUtils.pm
+++ b/testbot/lib/WineTestBot/LogUtils.pm
@@ -863,6 +863,10 @@ sub _GetLineKey($)
   my ($Line) = @_;
   return undef if (!defined $Line);
 
+  # Remove variable parts.
+  # Use a non-greedy match to ensure the ignored part does not contain '))'.
+  $Line =~ s/\(\(.+?\)\)/(())/g;
+
   # Remove the line number
   $Line =~ s/^([_a-z0-9]+\.c:)\d+:( Test (?:failed|succeeded inside todo block): )/$1$2/;
 
-- 
2.20.1


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic