]> git.vpit.fr Git - perl/modules/Variable-Magic.git/blobdiff - t/24-free.t
This is 0.64
[perl/modules/Variable-Magic.git] / t / 24-free.t
index 56fd6931f9636b34057a20728745b7af01a817f4..eaa7db3ee4da7db5241424aec0cf9fa5edff23c4 100644 (file)
@@ -1,23 +1,26 @@
 #!perl -T
 
-use Test::More tests => 4;
+use strict;
+use warnings;
 
-use Variable::Magic qw/wizard cast/;
+use Test::More tests => 2 * 5 + 1;
 
-my $c = 0;
-my $wiz = wizard free => sub { ++$c };
-ok($c == 0, 'free : create wizard');
+use Variable::Magic qw<cast>;
+
+use lib 't/lib';
+use Variable::Magic::TestWatcher;
+
+my $wiz = init_watcher 'free', 'free';
 
 my $n = int rand 1000;
 
-{
+watch {
  my $a = $n;
-
- cast $a, $wiz;
- ok($c == 0, 'free : cast');
-}
-ok($c == 1, 'free : deletion at the end of the scope');
+ watch { cast $a, $wiz } { }, 'cast';
+} { free => 1 }, 'deletion at the end of the scope';
 
 my $a = $n;
-undef $n;
-ok($c == 1, 'free : explicit deletion with undef()');
+watch { cast $a, $wiz } { }, 'cast 2';
+watch { undef $a } { }, 'explicit deletion with undef()';
+
+$Variable::Magic::TestWatcher::mg_end = { free => 1 };