Replace $] by "$]" in tests
authorVincent Pit <vince@profvince.com>
Sun, 17 Jul 2011 22:48:02 +0000 (00:48 +0200)
committerVincent Pit <vince@profvince.com>
Sun, 17 Jul 2011 22:48:08 +0000 (00:48 +0200)
An old bug could cause $] to be initialized to a wrong decimal value.
Since its stringified value was always right, we use it instead.

t/20-good.t
t/21-bad.t
t/30-scope.t
t/31-hints.t
t/40-threads.t
t/41-threads-teardown.t
t/50-external.t

index 97c874c..e04ee9d 100644 (file)
@@ -192,9 +192,9 @@ meh $x, 1, 2;
 meh $y;
 ####
 meh $y, 1, 2;
-#### $] < 5.010 # use feature 'state'; state $z
+#### "$]" < 5.010 # use feature 'state'; state $z
 meh $z;
-#### $] < 5.010 # use feature 'state'; state $z
+#### "$]" < 5.010 # use feature 'state'; state $z
 meh $z, 1, 2;
 ####
 print;
@@ -208,9 +208,9 @@ print $x "oh hai\n";
 print $y;
 ####
 print $y "dongs\n";
-#### $] < 5.010 # use feature 'state'; state $z
+#### "$]" < 5.010 # use feature 'state'; state $z
 print $z;
-#### $] < 5.010 # use feature 'state'; state $z
+#### "$]" < 5.010 # use feature 'state'; state $z
 print $z "hlagh\n";
 ####
 print STDOUT "bananananananana\n";
index c594462..fa2c322 100644 (file)
@@ -101,7 +101,7 @@ SKIP:
 SKIP:
    {
     skip 'No space tests on perl 5.11' => 4 + @expected
-                                                  if $] >= 5.011 and $] < 5.012;
+                                              if "$]" >= 5.011 and "$]" < 5.012;
     my $code = $code;
     $code =~ s/\$/\$ \n\t /g;
 
@@ -280,15 +280,15 @@ meh $y 1, 2;
 meh $y, 1, 2;
 ----
 [ 'meh', '$y' ]
-#### $] < 5.010 # use feature 'state'; state $z
+#### "$]" < 5.010 # use feature 'state'; state $z
 meh $z;
 ----
 [ 'meh', '$z' ]
-#### $] < 5.010 # use feature 'state'; state $z
+#### "$]" < 5.010 # use feature 'state'; state $z
 meh $z 1, 2;
 ----
 [ 'meh', '$z' ]
-#### $] < 5.010 # use feature 'state'; state $z
+#### "$]" < 5.010 # use feature 'state'; state $z
 meh $z, 1, 2;
 ----
 [ 'meh', '$z' ]
index afb0e40..644c3de 100644 (file)
@@ -73,7 +73,7 @@ sub expect {
   }
  }
  is $@, '', "no indirect; eval 'my \$x = new Bar'";
- if ($] < 5.009005) {
+ if ("$]" < 5.009005) {
   is   @w,   0,              'no warnings caught';
   pass 'placeholder';
  } else {
@@ -85,7 +85,7 @@ sub expect {
 
 SKIP: {
  skip 'The pragma doesn\'t propagte into eval STRING before perl 5.10' => 2
-                                                               if $] < 5.009005;
+                                                             if "$]" < 5.009005;
  my @w;
  my $test = sub { eval 'return; new XYZ' };
  {
@@ -116,13 +116,13 @@ SKIP: {
   eval "return; no indirect; use indirect::TestRequired2; my \$x = new Bar;";
  }
  is   $@, '', 'second require test doesn\'t croak prematurely';
- @w = grep !/^warn:Attempt\s+to\s+free\s+unreferenced/, @w if $] <= 5.008003;
+ @w = grep !/^warn:Attempt\s+to\s+free\s+unreferenced/, @w if "$]" <= 5.008003;
  my $w = shift @w;
  like $w, expect('Baz', 't/lib/indirect/TestRequired2.pm'),
                                      'second require test caught error for Baz';
  SKIP: {
   skip 'The pragma doesn\'t propagte into eval STRING before perl 5.10' => 1
-                                                               if $] < 5.009005;
+                                                             if "$]" < 5.009005;
   $w = shift @w;
   like $w, expect('Blech'), 'second require test caught error for Blech';
  }
@@ -146,7 +146,7 @@ SKIP: {
    new indirect::TestRequired3Z;
   }
  TESTREQUIRED3
- @w = grep !/^warn:Attempt\s+to\s+free\s+unreferenced/, @w if $] <= 5.008003;
+ @w = grep !/^warn:Attempt\s+to\s+free\s+unreferenced/, @w if "$]" <= 5.008003;
  is        $@,          '',
            "pragma leak when reusing callback test doesn't croak prematurely";
  is_deeply \@w,         [ ],
index 0b271b4..4f4b5e2 100644 (file)
@@ -7,7 +7,7 @@ use Test::More tests => 1;
 
 SKIP: {
  skip 'This would require extensive work to be okay with perl 5.8' => 1
-                                                                  if $] < 5.010;
+                                                                if "$]" < 5.010;
 
  local %^H = (a => 1);
 
index 4263ea5..bde269a 100644 (file)
@@ -16,7 +16,7 @@ BEGIN {
  skipall 'This perl wasn\'t built to support threads'
                                                     unless $Config{useithreads};
  skipall 'perl 5.13.4 required to test thread safety'
-                                                unless $force or $] >= 5.013004;
+                                              unless $force or "$]" >= 5.013004;
 }
 
 use threads;
@@ -60,7 +60,7 @@ sub expect {
 SKIP:
    {
     skip 'Hints aren\'t propagated into eval STRING below perl 5.10' => 3
-                                                             unless $] >= 5.010;
+                                                           unless "$]" >= 5.010;
     my $class = "Pineapple$tid";
     my @warns;
     {
index 8531afe..0b4405e 100644 (file)
@@ -16,7 +16,7 @@ BEGIN {
  skipall 'This perl wasn\'t built to support threads'
                                                     unless $Config{useithreads};
  skipall 'perl 5.13.4 required to test thread safety'
-                                                unless $force or $] >= 5.013004;
+                                              unless $force or "$]" >= 5.013004;
 }
 
 use threads;
@@ -43,7 +43,7 @@ sub run_perl {
 
 SKIP:
 {
- skip 'Fails on 5.8.2 and lower' => 1 if $] <= 5.008002;
+ skip 'Fails on 5.8.2 and lower' => 1 if "$]" <= 5.008002;
 
  my $status = run_perl <<' RUN';
   my ($code, @expected);
index f8dca42..2b31829 100644 (file)
@@ -24,7 +24,7 @@ sub run_perl {
 
 SKIP:
 {
- skip 'Fixed in core only since 5.12' => 1 unless $] >= 5.012;
+ skip 'Fixed in core only since 5.12' => 1 unless "$]" >= 5.012;
  my $status = run_perl 'no indirect hook => sub { exit 2 }; new X';
  is $status, 2 << 8, 'no semicolon at the end of -e';
 }