X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=t%2Flib%2FVariable%2FMagic%2FTestGlobalDestruction.pm;h=83f88bbfe1fb9ee726c2486385ef2a8f151e99aa;hb=a8b279caff44411b6505c7c761524b0ea3aff490;hp=ca7997fff93b96fa4831f7c6106ea52aa5efacf4;hpb=99ea475d5ffa3d928db9228ee689d274ecb45beb;p=perl%2Fmodules%2FVariable-Magic.git diff --git a/t/lib/Variable/Magic/TestGlobalDestruction.pm b/t/lib/Variable/Magic/TestGlobalDestruction.pm index ca7997f..83f88bb 100644 --- a/t/lib/Variable/Magic/TestGlobalDestruction.pm +++ b/t/lib/Variable/Magic/TestGlobalDestruction.pm @@ -66,16 +66,21 @@ sub import { my %args = @_; my $level = $args{level} || 1; + if ("$]" < 5.013_004 and not $ENV{PERL_VARIABLE_MAGIC_TEST_THREADS}) { + _diag("perl 5.13.4 required to safely test global destruction"); + return 0; + } + my $env_level = int($ENV{PERL_DESTRUCT_LEVEL} || 0); if ($env_level >= $level) { my $is_debugging = is_debugging_perl(); - require Test::More; + if ($is_debugging) { _diag("Global destruction level $env_level set by PERL_DESTRUCT_LEVEL (debugging perl)"); - return; - } else { - _diag("PERL_DESTRUCT_LEVEL is set to $env_level, but this perl doesn't seem to have debugging enabled"); + return 1; } + + _diag("PERL_DESTRUCT_LEVEL is set to $env_level, but this perl doesn't seem to have debugging enabled"); } my $has_perl_destruct_level = do { @@ -86,10 +91,14 @@ sub import { 1; } }; + if ($has_perl_destruct_level) { _diag("Global destruction level $level set by Perl::Destruct::Level"); - return; + return 1; } + + _diag("Not testing global destruction"); + return 0; } 1;