equal
  deleted
  inserted
  replaced
  
    
    
     2 use 5.14.0;  | 
     2 use 5.14.0;  | 
     3 use strict;  | 
     3 use strict;  | 
     4 use warnings;  | 
     4 use warnings;  | 
     5 use File::Find;  | 
     5 use File::Find;  | 
     6 use List::Util qw(max);  | 
     6 use List::Util qw(max);  | 
         | 
     7 use Pod::Usage;  | 
     7   | 
     8   | 
     8 my %fail;  | 
     9 pod2usage() if not @ARGV;  | 
     9   | 
    10   | 
    10 my @files = do { | 
    11 my @files = do { | 
    11     my @r;  | 
    12     my @r;  | 
    12     find(sub { | 
    13     find(sub { | 
    13 	-f and /^log\./ or return;  | 
    14 	-f and /^log\./ or return;  | 
    14 	push @r, $File::Find::name;  | 
    15 	push @r, $File::Find::name;  | 
    15     }, @ARGV ? @ARGV : glob("out*")); | 
    16     }, @ARGV);  | 
    16     @r;  | 
    17     @r;  | 
    17 };  | 
    18 };  | 
    18   | 
    19   | 
    19   | 
    20   | 
         | 
    21 my %fail;  | 
    20 foreach my $file (@files) { | 
    22 foreach my $file (@files) { | 
    21     my ($name, $platform) = $file =~ /out-?(.*?)\/log\.(.*)/;  | 
    23     my ($name, $platform) = $file =~ /out-?(.*?)\/log\.(.*)/;  | 
    22     my ($os) = $platform =~ /(^.*?)-/;  | 
    24     my ($os) = $platform =~ /(^.*?)-/;  | 
    23     $_ = do { local @ARGV = $file; local $/ = undef; <> }; | 
    25     $_ = do { local @ARGV = $file; local $/ = undef; <> }; | 
    24     s/  | 
    26     s/  | 
    61         }  | 
    63         }  | 
    62         print "\n";  | 
    64         print "\n";  | 
    63     }  | 
    65     }  | 
    64 }  | 
    66 }  | 
    65   | 
    67   | 
         | 
    68 __END__  | 
         | 
    69   | 
         | 
    70 =head1 NAME  | 
         | 
    71   | 
         | 
    72  report - report differences of two or more exim testsuite runs  | 
         | 
    73   | 
         | 
    74 =head1 SYNOPSIS  | 
         | 
    75   | 
         | 
    76  report DIR...  | 
         | 
    77   | 
         | 
    78 =head1 DESCRIPTION  | 
         | 
    79   | 
         | 
    80 B<report> shows the differences between to Exim testsuite runs. That is,  | 
         | 
    81 it compares the list of failed tests.  | 
         | 
    82   | 
         | 
    83 =cut  |