summaryrefslogtreecommitdiffstats
path: root/t/01-basic.t
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2010-11-12 03:20:16 -0600
committerJesse Luehrs <doy@tozt.net>2010-11-12 03:20:16 -0600
commitd1f721b320d72e83c0cb24c45fe9995a6dcf29c2 (patch)
tree05ec14dbf1dfdf829b18ee44623d9b9e2098e0b1 /t/01-basic.t
parentf75437398a7a18f7852b0151f7cb808dbeb06d0a (diff)
downloadpackage-stash-d1f721b320d72e83c0cb24c45fe9995a6dcf29c2.tar.gz
package-stash-d1f721b320d72e83c0cb24c45fe9995a6dcf29c2.zip
fix list_all_package_symbols
Diffstat (limited to 't/01-basic.t')
-rw-r--r--t/01-basic.t41
1 files changed, 41 insertions, 0 deletions
diff --git a/t/01-basic.t b/t/01-basic.t
index 9c48845..4d78764 100644
--- a/t/01-basic.t
+++ b/t/01-basic.t
@@ -324,4 +324,45 @@ ok(exception {
}
}
+{
+ package Quuux;
+ our $foo = 1;
+ our @foo;
+ our @bar;
+ our %baz;
+ sub baz { }
+ use constant quux => 1;
+ use constant quuux => [];
+ sub quuuux;
+}
+
+{
+ my $quuux = Package::Stash->new('Quuux');
+ is_deeply(
+ [sort $quuux->list_all_package_symbols],
+ [qw(BEGIN bar baz foo quuuux quuux quux)],
+ "list_all_package_symbols",
+ );
+ is_deeply(
+ [sort $quuux->list_all_package_symbols('SCALAR')],
+ [qw(foo)],
+ "list_all_package_symbols SCALAR",
+ );
+ is_deeply(
+ [sort $quuux->list_all_package_symbols('ARRAY')],
+ [qw(bar foo)],
+ "list_all_package_symbols ARRAY",
+ );
+ is_deeply(
+ [sort $quuux->list_all_package_symbols('HASH')],
+ [qw(baz)],
+ "list_all_package_symbols HASH",
+ );
+ is_deeply(
+ [sort $quuux->list_all_package_symbols('CODE')],
+ [qw(baz quuuux quuux quux)],
+ "list_all_package_symbols CODE",
+ );
+}
+
done_testing;