Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1322)

Unified Diff: mozilla-tests/known-failures.pl

Issue 2865028: Update the mozilla tests to new version (as of 2010-06-29). (Closed) Base URL: svn://chrome-svn/chrome/trunk/deps/third_party/
Patch Set: Created 10 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « mozilla-tests/jsDriver.pl ('k') | mozilla-tests/pattern-expander.pl » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: mozilla-tests/known-failures.pl
===================================================================
--- mozilla-tests/known-failures.pl (revision 43940)
+++ mozilla-tests/known-failures.pl (working copy)
@@ -44,12 +44,13 @@
sub debug;
sub usage;
sub parse_options;
+sub escape_string;
sub escape_pattern;
sub unescape_pattern;
# option arguments
-my $option_desc = "b=s branch>b T=s buildtype>T R=s repo>R t=s testtype>t o=s os>o K=s kernel>K A=s arch>A M=s memory>M S=s speed>S z=s timezone>z l=s rawlogfile>l f=s failurelogfile>f r=s patterns>r O=s outputprefix>O D debug>D";
+my $option_desc = "b=s branch>b T=s buildtype>T R=s repo>R t=s testtype>t o=s os>o K=s kernel>K A=s arch>A M=s memory>M z=s timezone>z J=s jsoptions>J l=s rawlogfile>l f=s failurelogfile>f r=s patterns>r O=s outputprefix>O D debug>D";
my $testid;
my $branch;
@@ -61,11 +62,11 @@
my $os;
my $patterns;
my $timezone;
+my $jsoptions;
my $outputprefix;
my $arch;
my $kernel;
my $memory;
-my $cpuspeed;
my $debug = $ENV{DEBUG};
# pattern variables
@@ -82,14 +83,14 @@
my $failuretesttypepattern;
my $knownfailuretimezonepattern;
my $failuretimezonepattern;
+my $knownfailurejsoptionspattern;
+my $failurejsoptionspattern;
my $knownfailurearchpattern;
my $failurearchpattern;
my $knownfailurekernelpattern;
my $failurekernelpattern;
my $knownfailurememorypattern;
my $failurememorypattern;
-my $knownfailurecpuspeedpattern;
-my $failurecpuspeedpattern;
my @patterns;
my $pattern;
@@ -153,7 +154,7 @@
}
debug "loading patterns $patterns";
-debug "pattern filter: ^TEST_ID=[^,]*, TEST_BRANCH=$knownfailurebranchpattern, TEST_REPO=$knownfailurerepopattern, TEST_BUILDTYPE=$knownfailurebuildtypepattern, TEST_TYPE=$knownfailuretesttypepattern, TEST_OS=$knownfailureospattern, TEST_KERNEL=$knownfailurekernelpattern, TEST_PROCESSORTYPE=$knownfailurearchpattern, TEST_MEMORY=$knownfailurememorypattern, TEST_CPUSPEED=$knownfailurecpuspeedpattern, TEST_TIMEZONE=$knownfailuretimezonepattern,";
+debug "pattern filter: ^TEST_ID=[^,]*, TEST_BRANCH=$knownfailurebranchpattern, TEST_REPO=$knownfailurerepopattern, TEST_BUILDTYPE=$knownfailurebuildtypepattern, TEST_TYPE=$knownfailuretesttypepattern, TEST_OS=$knownfailureospattern, TEST_KERNEL=$knownfailurekernelpattern, TEST_PROCESSORTYPE=$knownfailurearchpattern, TEST_MEMORY=$knownfailurememorypattern, TEST_TIMEZONE=$knownfailuretimezonepattern, TEST_OPTIONS=$knownfailurejsoptionspattern,";
open PATTERNS, "<$patterns" or die "Unable to open known failure patterns file $patterns: $!\n";
while (<PATTERNS>) {
@@ -167,7 +168,7 @@
{
debug "test $testid was not included during this run";
}
- elsif ($_ =~ /^TEST_ID=[^,]*, TEST_BRANCH=$knownfailurebranchpattern, TEST_REPO=$knownfailurerepopattern, TEST_BUILDTYPE=$knownfailurebuildtypepattern, TEST_TYPE=$knownfailuretesttypepattern, TEST_OS=$knownfailureospattern, TEST_KERNEL=$knownfailurekernelpattern, TEST_PROCESSORTYPE=$knownfailurearchpattern, TEST_MEMORY=$knownfailurememorypattern, TEST_CPUSPEED=$knownfailurecpuspeedpattern, TEST_TIMEZONE=$knownfailuretimezonepattern,/) {
+ elsif ($_ =~ /^TEST_ID=[^,]*, TEST_BRANCH=$knownfailurebranchpattern, TEST_REPO=$knownfailurerepopattern, TEST_BUILDTYPE=$knownfailurebuildtypepattern, TEST_TYPE=$knownfailuretesttypepattern, TEST_OS=$knownfailureospattern, TEST_KERNEL=$knownfailurekernelpattern, TEST_PROCESSORTYPE=$knownfailurearchpattern, TEST_MEMORY=$knownfailurememorypattern, TEST_TIMEZONE=$knownfailuretimezonepattern, TEST_OPTIONS=$knownfailurejsoptionspattern,/) {
debug "adding pattern : $_";
push @patterns, (escape_pattern($_));
}
@@ -180,7 +181,7 @@
# create a working copy of the current failures which match the users selection
-debug "failure filter: ^TEST_ID=[^,]*, TEST_BRANCH=$failurebranchpattern, TEST_REPO=$failurerepopattern, TEST_BUILDTYPE=$failurebuildtypepattern, TEST_TYPE=$failuretesttypepattern, TEST_OS=$failureospattern, TEST_KERNEL=$failurekernelpattern, TEST_PROCESSORTYPE=$failurearchpattern, TEST_MEMORY=$failurememorypattern, TEST_CPUSPEED=$failurecpuspeedpattern, TEST_TIMEZONE=$failuretimezonepattern, TEST_RESULT=FAIL[^,]*,/";
+debug "failure filter: ^TEST_ID=[^,]*, TEST_BRANCH=$failurebranchpattern, TEST_REPO=$failurerepopattern, TEST_BUILDTYPE=$failurebuildtypepattern, TEST_TYPE=$failuretesttypepattern, TEST_OS=$failureospattern, TEST_KERNEL=$failurekernelpattern, TEST_PROCESSORTYPE=$failurearchpattern, TEST_MEMORY=$failurememorypattern, TEST_TIMEZONE=$failuretimezonepattern, TEST_OPTIONS=$failurejsoptionspattern, TEST_RESULT=FAIL[^,]*,/";
if (defined($rawlogfile)) {
@@ -198,7 +199,7 @@
print ALLLOG "$_\n";
- if ($_ =~ /^TEST_ID=[^,]*, TEST_BRANCH=$failurebranchpattern, TEST_REPO=$failurerepopattern, TEST_BUILDTYPE=$failurebuildtypepattern, TEST_TYPE=$failuretesttypepattern, TEST_OS=$failureospattern, TEST_KERNEL=$failurekernelpattern, TEST_PROCESSORTYPE=$failurearchpattern, TEST_MEMORY=$failurememorypattern, TEST_CPUSPEED=$failurecpuspeedpattern, TEST_TIMEZONE=$failuretimezonepattern, TEST_RESULT=FAIL[^,]*,/) {
+ if ($_ =~ /^TEST_ID=[^,]*, TEST_BRANCH=$failurebranchpattern, TEST_REPO=$failurerepopattern, TEST_BUILDTYPE=$failurebuildtypepattern, TEST_TYPE=$failuretesttypepattern, TEST_OS=$failureospattern, TEST_KERNEL=$failurekernelpattern, TEST_PROCESSORTYPE=$failurearchpattern, TEST_MEMORY=$failurememorypattern, TEST_TIMEZONE=$failuretimezonepattern, TEST_OPTIONS=$failurejsoptionspattern, TEST_RESULT=FAIL[^,]*,/) {
debug "failure: $_";
push @failures, ($_);
print FAILURELOG "$_\n";
@@ -234,7 +235,7 @@
while (<FAILURES>) {
chomp;
- if ($_ =~ /^TEST_ID=[^,]*, TEST_BRANCH=$failurebranchpattern, TEST_REPO=$failurerepopattern, TEST_BUILDTYPE=$failurebuildtypepattern, TEST_TYPE=$failuretesttypepattern, TEST_OS=$failureospattern, TEST_KERNEL=$failurekernelpattern, TEST_PROCESSORTYPE=$failurearchpattern, TEST_MEMORY=$failurememorypattern, TEST_CPUSPEED=$failurecpuspeedpattern, TEST_TIMEZONE=$failuretimezonepattern, TEST_RESULT=FAIL[^,]*,/) {
+ if ($_ =~ /^TEST_ID=[^,]*, TEST_BRANCH=$failurebranchpattern, TEST_REPO=$failurerepopattern, TEST_BUILDTYPE=$failurebuildtypepattern, TEST_TYPE=$failuretesttypepattern, TEST_OS=$failureospattern, TEST_KERNEL=$failurekernelpattern, TEST_PROCESSORTYPE=$failurearchpattern, TEST_MEMORY=$failurememorypattern, TEST_TIMEZONE=$failuretimezonepattern, TEST_OPTIONS=$failurejsoptionspattern, TEST_RESULT=FAIL[^,]*,/) {
debug "failure: $_";
push @failures, ($_);
}
@@ -303,6 +304,8 @@
my $pass = 0;
my $changed = ($#patterns != -1);
+debug "changed=$changed, \$#patterns=$#patterns, \$#failures=$#failures";
+
while ($changed) {
$pass = $pass + 1;
@@ -336,6 +339,8 @@
}
+debug "\$#excludedtests=$#excludedtests, \$#failures=$#failures";
+
foreach $excludedtest ( @excludedtests ) {
if ($debug) {
@@ -347,9 +352,13 @@
@results = grep !m@$excludedtest@, @failures;
+ debug "\$#results=$#results, \$excludedtest=$excludedtest, \$#failures=$#failures";
+
@failures = @results;
}
+debug "possible regressions: \$#failures=$#failures";
+
open OUTPUT, ">$outputprefix-results-possible-regressions.log" or die "Unable to open $outputprefix-results-possible-regressions.log: $!";
my $failure;
@@ -386,8 +395,8 @@
[-K|--kernel] kernel
[-A|--arch] arch
[-M|--memory] memory
- [-S|--speed] speed
[-z|--timezone] timezone
+ [-J|--jsoptions] jsoptions
[-r|--patterns] patterns
([-f|--failurelogfile] failurelogfile|[-l|--logfile] rawlogfile])
[-O|--outputprefix] outputprefix
@@ -397,7 +406,7 @@
=============== ============================================================
-b branch branch 1.8.0, 1.8.1, 1.9.0, all
-R repository CVS for 1.8.0, 1.8.1, 1.9.0 branches,
- mercurial repository name for 1.9.1 branches
+ mercurial repository name for 1.9.1 and later branches
(\`basename http://hg.mozilla.org/repository\`)
-T buildtype build type opt, debug, all
-t testtype test type browser, shell, all
@@ -405,8 +414,8 @@
-K kernel kernel, all or a specific pattern
-A arch architecture, all or a specific pattern
-M memory memory in Gigabytes, all or a specific pattern
- -S speed speed, all or specific pattern
-z timezone -0400, -0700, etc. default to user\'s zone
+ -J jsoptions JavaScript options
-l rawlogfile raw logfile
-f failurelogfile failure logfile
-r patterns known failure patterns
@@ -449,24 +458,23 @@
elsif ($option eq "M") {
$memory = $value;
}
- elsif ($option eq "S") {
- $cpuspeed = $value;
- if ($cpuspeed < 4)
- {
- $cpuspeed = 'slow';
+ elsif ($option eq "z") {
+ $timezone = $value;
+ }
+ elsif ($option eq "J") {
+ my (@s, $j);
+
+ if (! $value) {
+ $jsoptions = 'none';
}
- elsif ($cpuspeed < 9)
- {
- $cpuspeed = 'medium';
+ else {
+ $value =~ s/(-\w) (\w)/$1$2/g;
+ @s = sort split / /, $value;
+ $j = join(" ", @s);
+ $j =~ s/(-\w)(\w)/$1 $2/g;
+ $jsoptions = $j;
}
- else
- {
- $cpuspeed = 'fast';
- }
}
- elsif ($option eq "z") {
- $timezone = $value;
- }
elsif ($option eq "r") {
$patterns = $value;
}
@@ -486,7 +494,7 @@
}
if ($debug) {
- print "branch=$branch, buildtype=$buildtype, testtype=$testtype, os=$os, kernel=$kernel, arch=$arch, memory=$memory, cpuspeed=$cpuspeed, timezone=$timezone, patterns=$patterns, rawlogfile=$rawlogfile failurelogfile=$failurelogfile, outputprefix=$outputprefix\n";
+ print "branch=$branch, buildtype=$buildtype, testtype=$testtype, os=$os, kernel=$kernel, arch=$arch, memory=$memory, timezone=$timezone, jsoptions=$jsoptions, patterns=$patterns, rawlogfile=$rawlogfile failurelogfile=$failurelogfile, outputprefix=$outputprefix\n";
}
Getopt::Mixed::cleanup();
@@ -510,14 +518,14 @@
$memory = 'all';
}
- if (!defined($cpuspeed)) {
- $cpuspeed = 'all';
- }
-
if (!defined($timezone)) {
usage "missing timezone";
}
+ if (!defined($jsoptions)) {
+ $jsoptions = 'none';
+ }
+
if (!defined($patterns)) {
usage "missing patterns";
}
@@ -530,27 +538,18 @@
usage "missing outputprefix";
}
- if ($branch eq "1.8.0") {
- $knownfailurebranchpattern = "(1\\.8\\.0|\\.\\*)";
- $failurebranchpattern = "1\\.8\\.0";
- }
- elsif ($branch eq "1.8.1") {
- $knownfailurebranchpattern = "(1\\.8\\.1|\\.\\*)";
- $failurebranchpattern = "1\\.8\\.1";
- }
- elsif ($branch eq "1.9.0") {
- $knownfailurebranchpattern = "(1\\.9\\.0|\\.\\*)";
- $failurebranchpattern = "1\\.9\\.0";
- }
- elsif ($branch eq "1.9.1") {
- $knownfailurebranchpattern = "(1\\.9\\.1|\\.\\*)";
- $failurebranchpattern = "1\\.9\\.1";
- }
- elsif ($branch eq "all") {
+ if ($branch eq "all") {
$knownfailurebranchpattern = "[^,]*";
$failurebranchpattern = "[^,]*";
}
+ else {
+ $knownfailurebranchpattern = "($branch|.*)";
+ $knownfailurebranchpattern =~ s/\./\\./g;
+ $failurebranchpattern = "$branch";
+ $failurebranchpattern =~ s/\./\\./g;
+ }
+
if ($repo eq "all" || $repo eq ".*") {
$knownfailurerepopattern = "[^,]*";
$failurerepopattern = "[^,]*";
@@ -630,25 +629,51 @@
$failurememorypattern = "[^,]*";
}
- if ($cpuspeed ne "all") {
- $knownfailurecpuspeedpattern = "(" . $cpuspeed . "|\\.\\*)";
- $failurecpuspeedpattern = "$cpuspeed";
+ if ($timezone eq "all") {
+ $knownfailuretimezonepattern = "[^,]*";
+ $failuretimezonepattern = "[^,]*";
}
else {
- $knownfailurecpuspeedpattern = "[^,]*";
- $failurecpuspeedpattern = "[^,]*";
+ $knownfailuretimezonepattern = "(" . escape_string($timezone) . "|\\.\\*)";
+ $failuretimezonepattern = escape_string("$timezone");
}
- if ($timezone eq "all") {
- $knownfailuretimezonepattern = "[^,]*";
- $failuretimezonepattern = "[^,]*";
+ if ($jsoptions eq "all") {
+ $knownfailurejsoptionspattern = "[^,]*";
+ $failurejsoptionspattern = "[^,]*";
}
else {
- $knownfailuretimezonepattern = "(" . $timezone . "|\\.\\*)";
- $failuretimezonepattern = "$timezone";
+ $knownfailurejsoptionspattern = "(" . escape_string($jsoptions) . "|\\.\\*)";
+ $failurejsoptionspattern = escape_string("$jsoptions");
}
+}
+sub escape_string {
+ my $s = shift;
+
+ # replace unescaped regular expression characters in the
+ # string so they are not interpreted as regexp chars
+ # when matching descriptions. leave the escaped regexp chars
+ # `regexp` alone so they can be unescaped later and used in
+ # pattern matching.
+
+ # see perldoc perlre
+
+ $s =~ s/\\/\\\\/g;
+
+ # escape non word chars that aren't surrounded by ``
+ $s =~ s/(?<!`)([$regchars])(?!`)/\\$1/g;
+ $s =~ s/(?<!`)([$regchars])(?=`)/\\$1/g;
+ $s =~ s/(?<=`)([$regchars])(?!`)/\\$1/g;
+
+ # unquote the regchars
+ $s =~ s/\`([^\`])\`/$1/g;
+
+ debug "escape_string : $s";
+
+ return "$s";
+
}
sub escape_pattern {
@@ -661,25 +686,8 @@
# debug "escape_pattern: before: $leading$trailing";
- # replace unescaped regular expression characters in the
- # description so they are not interpreted as regexp chars
- # when matching descriptions. leave the escaped regexp chars
- # `regexp alone so they can be unescaped later and used in
- # pattern matching.
+ $trailing = escape_string($trailing);
- # see perldoc perlre
-
- $trailing =~ s/\\/\\\\/g;
-
- # escape non word chars that aren't surrounded by ``
- $trailing =~ s/(?<!`)([$regchars])(?!`)/\\$1/g;
- $trailing =~ s/(?<!`)([$regchars])(?=`)/\\$1/g;
- $trailing =~ s/(?<=`)([$regchars])(?!`)/\\$1/g;
- # $trailing =~ s/(?<!`)(\W)(?!`)/\\$1/g;
-
- # unquote the regchars
- $trailing =~ s/\`([^\`])\`/$1/g;
-
debug "escape_pattern : $leading$trailing";
return "$leading$trailing";
« no previous file with comments | « mozilla-tests/jsDriver.pl ('k') | mozilla-tests/pattern-expander.pl » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698