]> git.vpit.fr Git - perl/modules/subs-auto.git/commitdiff
Clarify what 'in' does with doc and tests
authorVincent Pit <vince@profvince.com>
Thu, 28 Aug 2008 17:18:07 +0000 (19:18 +0200)
committerVincent Pit <vince@profvince.com>
Thu, 28 Aug 2008 17:18:07 +0000 (19:18 +0200)
lib/subs/auto.pm
t/11-pkg.t

index 7975e55fb7634e56f073c021efd522e33e2fea8c..87fcc5528712605318d73b56163c74e510f04e1c 100644 (file)
@@ -53,7 +53,7 @@ You can pass options to C<import> as key / value pairs :
 
 C<< in => $pkg >>
 
-Specifies on which package the pragma should act. Defaults to the current package.
+Specifies on which package the pragma should act. Setting C<$pkg> to C<Some::Package> allows you to resolve all functions name of the type C<Some::Package::func ...> in the current scope. You can use the pragma several times with different package names to allow resolution of all the corresponding barewords. Defaults to the current package.
 
 =back
 
index bd4ebb3504a069a73664e22e82e99557dcd24063..e97b7048c548a88ec27761e20696e2fd3b725feb 100644 (file)
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 12;
+use Test::More tests => 16;
 
 our $foo;
 
@@ -21,6 +21,10 @@ our $foo;
   is($@, '', 'compiled to foo(3)');
   is($foo, 3, 'main::foo was really called');
 
+  eval { subs::auto::Test::Pkg::foo 4 };
+  is($@, '', 'compiled to subs::auto::Test::Pkg::foo(4)');
+  is($foo, 8, 'subs::auto::Test::Pkg::foo was really called');
+
   {
    package subs::auto::Test::Pkg;
 
@@ -35,6 +39,16 @@ our $foo;
  }
 }
 
+{
+ package subs::auto::Test::Pkg;
+
+ use subs::auto;
+
+ eval { foo 8 };
+ Test::More::is($@, '', 'compiled to foo(8)');
+ Test::More::is($foo, 16, 'subs::auto::Test::Pkg::foo was really called');
+}
+
 {
  use subs::auto in => '::';