]> git.vpit.fr Git - perl/modules/Variable-Magic.git/commitdiff
Test op_info in free callbacks
authorVincent Pit <vince@profvince.com>
Sun, 22 Feb 2009 09:34:55 +0000 (10:34 +0100)
committerVincent Pit <vince@profvince.com>
Sun, 22 Feb 2009 09:34:55 +0000 (10:34 +0100)
t/18-opinfo.t

index 12313f877f6f103bea8bf7e6442917537b8f4569..c10ccb063cf0e1cdd300f3348d263ac7858fffc4 100644 (file)
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 11 * (5 + 6) + 5;
+use Test::More tests => 11 * (5 + 6) + 4 + 5;
 
 use Config qw/%Config/;
 
@@ -76,6 +76,25 @@ for (@tests) {
  }
 }
 
+{
+ my $c;
+
+ my $op_info = VMG_OP_INFO_OBJECT;
+ my $wiz = eval {
+  wizard free => sub {
+    my $op = $_[-1];
+    my $desc = "free magic with op_info == $op_info";
+    isa_ok $op, 'B::OP', $desc;
+    is $op->name, 'leaveloop', "$desc gets the right op info";
+    ();
+   }, op_info => $op_info;
+ };
+ is $@, '', "get wizard with out of bounds op_info doesn't croak";
+
+ eval { cast $c, $wiz };
+ is $@, '', "get cast with out of bounds op_info doesn't croak";
+}
+
 {
  my $c;