Eliminate the global error override $Error from t/re{ReTest.pl,pat.t}
authorNicholas Clark <nick@ccl4.org>
Wed, 2 Mar 2011 17:25:17 +0000 (17:25 +0000)
committerNicholas Clark <nick@ccl4.org>
Wed, 2 Mar 2011 17:25:17 +0000 (17:25 +0000)
For the 5 use points, convey the information by appending to $Message, which
all are already using.

t/re/ReTest.pl
t/re/pat.t

index fc25087..1d19185 100644 (file)
@@ -11,7 +11,6 @@ use vars qw(
     $EXPECTED_TESTS 
     $TODO
     $Message
-    $Error
     $DiePattern
     $WarnPattern
     $BugId
@@ -80,7 +79,7 @@ sub _ok {
 
     unless ($ok) {
         print "# Failed test at line $line_nr\n" unless defined $TODO;
-        if ($error //= $Error) {
+        if ($error) {
             no warnings 'utf8';
             chomp $error;
             $error = join "\n#", map {pretty $_} split /\n\h*#/ => $error;
index 5e78ce7..f344402 100644 (file)
@@ -329,10 +329,9 @@ sub run_tests {
 
     {
         # Long Monsters
-        local $Message = "Long monster";
         for my $l (125, 140, 250, 270, 300000, 30) { # Ordered to free memory
             my $a = 'a' x $l;
-            local $Error = "length = $l";
+           local $Message = "Long monster, length = $l";
              ok "ba$a=" =~ /a$a=/;
             nok "b$a="  =~ /a$a=/;
              ok "b$a="  =~ /ba+=/;
@@ -356,12 +355,11 @@ sub run_tests {
                     'ax13876y25677y21378y21378y21378kbc' => 0, # 5 runs
                   );
 
-        local $Message = "20000 nodes";
         for (keys %ans) {
-            local $Error = "const-len '$_'";
+           local $Message = "20000 nodes, const-len '$_'";
             ok !($ans{$_} xor /a(?=([yx]($long_constant_len)){2,4}[k-o]).*b./o);
 
-            local $Error = "var-len '$_'";
+           $Message = "20000 nodes, var-len '$_'";
             ok !($ans{$_} xor /a(?=([yx]($long_var_len)){2,4}[k-o]).*b./o);
         }
     }
@@ -446,7 +444,7 @@ sub run_tests {
        my $res = eval { "xx" =~ /(?$code)/o };
        {
            no warnings 'uninitialized';
-           local $Error = "'$@', '$res', '$blah'";
+           local $Message = "$Message '$@', '$res', '$blah'";
            ok $@ && $@ =~ /not allowed at runtime/ && $blah == 12;
        }
 
@@ -455,7 +453,7 @@ sub run_tests {
        $res = eval { "xx" =~ /(?$code)/o };
        {
            no warnings 'uninitialized';
-            local $Error = "'$@', '$res', '$blah'";
+           local $Message = "$Message '$@', '$res', '$blah'";
            ok !$@ && $res;
        }