]> git.vpit.fr Git - perl/modules/Variable-Magic.git/blobdiff - t/01-import.t
Add support for copy magic on code prototype clone
[perl/modules/Variable-Magic.git] / t / 01-import.t
index 05f7e9bb279c47020fdc5355071b31a361bc8f28..099ff317be46861531683b3f640e6b934d43c6ef 100644 (file)
@@ -3,11 +3,33 @@
 use strict;
 use warnings;
 
-use Test::More tests => 18;
+use Test::More tests => 2 * 22;
 
 require Variable::Magic;
 
-for (qw/wizard gensig getsig cast getdata dispell SIG_MIN SIG_MAX SIG_NBR MGf_COPY MGf_DUP MGf_LOCAL VMG_UVAR VMG_COMPAT_ARRAY_PUSH_NOLEN VMG_COMPAT_ARRAY_UNDEF_CLEAR VMG_COMPAT_SCALAR_LENGTH_NOLEN VMG_PERL_PATCHLEVEL VMG_THREADSAFE/) {
+my %syms = (
+ wizard   => undef,
+ cast     => '\[$@%&*]$@',
+ getdata  => '\[$@%&*]$',
+ dispell  => '\[$@%&*]$',
+ map { $_ => '' } qw<
+  MGf_COPY MGf_DUP MGf_LOCAL VMG_UVAR
+  VMG_COMPAT_SCALAR_LENGTH_NOLEN
+  VMG_COMPAT_SCALAR_NOLEN
+  VMG_COMPAT_ARRAY_PUSH_NOLEN VMG_COMPAT_ARRAY_PUSH_NOLEN_VOID
+  VMG_COMPAT_ARRAY_UNSHIFT_NOLEN_VOID
+  VMG_COMPAT_ARRAY_UNDEF_CLEAR
+  VMG_COMPAT_HASH_DELETE_NOUVAR_VOID
+  VMG_COMPAT_CODE_COPY_CLONE
+  VMG_COMPAT_GLOB_GET
+  VMG_PERL_PATCHLEVEL
+  VMG_THREADSAFE VMG_FORKSAFE
+  VMG_OP_INFO_NAME VMG_OP_INFO_OBJECT
+ >
+);
+
+for (sort keys %syms) {
  eval { Variable::Magic->import($_) };
- is($@, '', 'import ' . $_);
+ is $@,            '',        "import $_";
+ is prototype($_), $syms{$_}, "prototype $_";
 }