Make the error message for an unfound method (that is being wrapped) a little clearer.
[gitmo/Class-MOP.git] / t / 080_meta_package.t
index 3e54a35..a82ff27 100644 (file)
@@ -1,15 +1,15 @@
-#!/usr/bin/perl
-
 use strict;
 use warnings;
 
 use Test::More tests => 97;
 use Test::Exception;
 
-BEGIN {
-    use_ok('Class::MOP');        
-    use_ok('Class::MOP::Package');            
-}
+use Class::MOP;
+use Class::MOP::Package;
+
+
+dies_ok { Class::MOP::Package->get_all_package_symbols } q{... can't call get_all_package_symbols() as a class method};
+dies_ok { Class::MOP::Package->name } q{... can't call name() as a class method};
 
 {
     package Foo;
@@ -232,47 +232,46 @@ is(Foo->meta->get_package_symbol('@foo'), $ARRAY, '... got the right values for
 # get_all_package_symbols
 
 {
-    my %syms = Foo->meta->get_all_package_symbols;
-
+    my $syms = Foo->meta->get_all_package_symbols;
     is_deeply(
-        [ sort keys %syms ],
+        [ sort keys %{ $syms } ],
         [ sort Foo->meta->list_all_package_symbols ],
         '... the fetched symbols are the same as the listed ones'
     ); 
 }
 
 {
-    my %syms = Foo->meta->get_all_package_symbols('CODE');
+    my $syms = Foo->meta->get_all_package_symbols('CODE');
 
     is_deeply(
-        [ sort keys %syms ],
+        [ sort keys %{ $syms } ],
         [ sort Foo->meta->list_all_package_symbols('CODE') ],
         '... the fetched symbols are the same as the listed ones'
     );
     
-    foreach my $symbol (keys %syms) {
-        is($syms{$symbol}, Foo->meta->get_package_symbol('&' . $symbol), '... got the right symbol');
+    foreach my $symbol (keys %{ $syms }) {
+        is($syms->{$symbol}, Foo->meta->get_package_symbol('&' . $symbol), '... got the right symbol');
     } 
 }
 
 {
     Foo->meta->add_package_symbol('%zork');
 
-    my %syms = Foo->meta->get_all_package_symbols('HASH');
+    my $syms = Foo->meta->get_all_package_symbols('HASH');
 
     is_deeply(
-        [ sort keys %syms ],
+        [ sort keys %{ $syms } ],
         [ sort Foo->meta->list_all_package_symbols('HASH') ],
         '... the fetched symbols are the same as the listed ones'
     );
 
-    foreach my $symbol (keys %syms) {
-        is($syms{$symbol}, Foo->meta->get_package_symbol('%' . $symbol), '... got the right symbol');
+    foreach my $symbol (keys %{ $syms }) {
+        is($syms->{$symbol}, Foo->meta->get_package_symbol('%' . $symbol), '... got the right symbol');
     }
 
     no warnings 'once';
     is_deeply(
-        \%syms,
+        $syms,
         { zork => \%Foo::zork },
         "got the right ones",
     );