From d1f721b320d72e83c0cb24c45fe9995a6dcf29c2 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Fri, 12 Nov 2010 03:20:16 -0600 Subject: fix list_all_package_symbols --- t/01-basic.t | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 't/01-basic.t') 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; -- cgit v1.2.3-54-g00ecf