X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=t%2F30-scalar.t;h=c92b1869b2c33e09f2b42d0086808028ff441e3c;hb=3e2559bcd9ca00ce63c1d5b8d05defbdb9b71e7a;hp=839cf58ac641f415612ab1e8cd6b857c0073101c;hpb=579f1710492a3864774affb698358c8b3aa4bd80;p=perl%2Fmodules%2FVariable-Magic.git diff --git a/t/30-scalar.t b/t/30-scalar.t index 839cf58..c92b186 100644 --- a/t/30-scalar.t +++ b/t/30-scalar.t @@ -3,19 +3,19 @@ use strict; use warnings; -use Config qw/%Config/; +use Config qw<%Config>; use Test::More tests => (2 * 14 + 2) + 2 * (2 * 8 + 4) + 3 + 1; -use Variable::Magic qw/wizard cast dispell MGf_COPY/; +use Variable::Magic qw; use lib 't/lib'; use Variable::Magic::TestWatcher; -my $is_5130_release = ($] == 5.013 && !$Config{git_describe}) ? 1 : 0; +my $is_5130_release = ("$]" == 5.013 && !$Config{git_describe}) ? 1 : 0; my $wiz = init_watcher - [ qw/get set len clear free copy dup local fetch store exists delete/ ], + [ qw ], 'scalar'; my $n = int rand 1000; @@ -72,7 +72,8 @@ $b = watch { exists $a[1] } { }, 'array element: exists'; is $b, 1, 'scalar: array element: exists correctly'; # $b has to be set inside the block for the test to pass on 5.8.3 and lower -watch { $b = delete $a[1] } { get => 1, free => ($] > 5.008005 ? 1 : 0) }, 'array element: delete'; +watch { $b = delete $a[1] } { get => 1, free => ("$]" > 5.008005 ? 1 : 0) }, + 'array element: delete'; is $b, 6, 'scalar: array element: delete correctly'; watch { $a[1] = 4 } { }, 'array element: set after delete'; @@ -104,17 +105,17 @@ watch { $h{b} = 4 } { }, 'hash element: set after delete'; SKIP: { my $SKIP; - unless (MGf_COPY) { + if (!MGf_COPY) { $SKIP = 'No copy magic for this perl'; - } elsif ($Config{useithreads} and $] le 5.008003) { - $SKIP = 'Causes havoc during global destruction for old threaded perls'; } else { - eval "use Tie::Array"; - $SKIP = 'Tie::Array required to test clear magic on tied array values' if $@; + local $@; + unless (eval { require Tie::Array; 1 }) { + $SKIP = 'Tie::Array required to test clear magic on tied array values'; + } } skip $SKIP => 3 if $SKIP; - diag "Using Tie::Array $Tie::Array::VERSION" if defined $Tie::Array::VERSION; + defined and diag "Using Tie::Array $_" for $Tie::Array::VERSION; tie my @a, 'Tie::StdArray'; $a[0] = $$; @@ -124,5 +125,5 @@ SKIP: { }; is $@, '', 'cast copy magic on tied array'; - watch { delete $a[0] } [ qw/get clear free/ ], 'delete from tied array'; + watch { delete $a[0] } [ qw ], 'delete from tied array'; }