Correct attribution of nonessential skipped tests origin
Peter Rabbitson [Thu, 10 Oct 2013 10:10:27 +0000 (12:10 +0200)]
maint/travis-ci_scripts/30_before_script.bash

index 44218a6..de03bdf 100755 (executable)
@@ -123,14 +123,24 @@ if [[ "$CLEANTEST" = "true" ]]; then
   if [[ -n "$HARNESS_SUBCLASS" ]] ; then
 
     INSTALLDEPS_SKIPPED_TESTLIST=$(perl -0777 -e '
-my $in = <>;
-my $re = qr(
-  ^ (?: \QBuilding and testing\E | \s* CPAN\.pm: .+? (?i:build)\S* ) \s+ (\S+)
-  .*?
-  ^ === \s \QSkipping nonessential autogenerated tests: \E([^\n]+)
-)msx;
-while ( $in =~ /$re/g ) {
-  print "!!! Skipped nonessential tests while installing $1: $2\n"
+my $curmod_re = qr{
+^
+  (?:
+    \QBuilding and testing\E
+      |
+    [\x20\t]* CPAN\.pm: [^\n]*? (?i:build)\S*
+  )
+
+  [\x20\t]+ (\S+)
+$}mx;
+
+my $curskip_re = qr{^ === \x20 \QSkipping nonessential autogenerated tests: \E([^\n]+) }mx;
+
+my (undef, @chunks) = (split qr/$curmod_re/, <>);
+while (@chunks) {
+  my ($mod, $log) = splice @chunks, 0, 2;
+  print "!!! Skipped nonessential tests while installing $mod: $1\n"
+    if $log =~ $curskip_re;
 }
 ' <<< "$LASTOUT")