]> git.vpit.fr Git - perl/modules/Scope-Upper.git/commitdiff
Make t/07-context_info.t pass with perls that have usesitecustomize set
authorVincent Pit <vince@profvince.com>
Fri, 21 Sep 2012 14:02:02 +0000 (16:02 +0200)
committerVincent Pit <vince@profvince.com>
Fri, 21 Sep 2012 14:02:05 +0000 (16:02 +0200)
sitecustomize.pl adds a "BEGIN { do { my $x; 1 } }" at the beginning of
the test code, which causes HINT_BLOCK_SCOPE to leak to the main program.

t/07-context_info.t

index aab24fbb7a971f0e1f64485be5e6b4ab5cde5f77..58ea97b6d579d7c6735178170fa22e73963f0029 100644 (file)
@@ -5,6 +5,8 @@ my $exp0 = ::expected('block', 0, undef);
 use strict;
 use warnings;
 
+use Config qw<%Config>;
+
 # We're using Test::Leaner here because Test::More loads overload, which itself
 # uses warning::register, which may cause the "all warnings on" bitmask to
 # change ; and that doesn't fit well with how we're testing things.
@@ -14,6 +16,8 @@ use Test::Leaner tests => 19 + 6;
 
 use Scope::Upper qw<context_info UP HERE CALLER>;
 
+sub HINT_BLOCK_SCOPE () { 0x100 }
+
 sub expected {
  my ($type, $line, $want) = @_;
 
@@ -40,7 +44,10 @@ sub expected {
   $want    = '' if defined $want and not $want;
  }
 
- $want = "$]" < 5.015_001 ? '' : undef if $top;
+ if ($top) {
+  $want   = "$]" < 5.015_001 ? '' : undef;
+  $hints &= ~HINT_BLOCK_SCOPE if $Config{usesitecustomize};
+ }
 
  my @exp = (
   $pkg,