Merge branch 'stable'
[gitmo/Class-MOP.git] / t / 081_meta_package_extension.t
index 98a10a2..e0f393c 100644 (file)
@@ -29,10 +29,10 @@ use Class::MOP;
         $class->meta->new_object(__INSTANCE__ => $class->SUPER::new(@_));
     }
 
-    sub add_package_symbol {
+    sub add_symbol {
         my ($self, $variable, $initial_value) = @_;
 
-        my ($name, $sigil, $type) = $self->_deconstruct_variable_name($variable);
+        (my $name = $variable) =~ s/^[\$\@\%\&]//;
 
         my $glob = gensym();
         *{$glob} = $initial_value if defined $initial_value;
@@ -62,9 +62,9 @@ isa_ok($meta, 'Class::MOP::Package');
 ok(!defined($Foo::{foo}), '... the %foo slot has not been created yet');
 ok(!$meta->has_package_symbol('%foo'), '... the meta agrees');
 
-ok ! exception {
+is( exception {
     $meta->add_package_symbol('%foo' => { one => 1 });
-}, '... the %foo symbol is created succcessfully';
+}, undef, '... the %foo symbol is created succcessfully' );
 
 ok(!defined($Foo::{foo}), '... the %foo slot has not been created in the actual Foo package');
 ok($meta->has_package_symbol('%foo'), '... the meta agrees');
@@ -78,17 +78,17 @@ is($foo, $meta->get_package_symbol('%foo'), '... our %foo is the same as the met
 
 ok(!defined($Foo::{bar}), '... the @bar slot has not been created yet');
 
-ok ! exception {
+is( exception {
     $meta->add_package_symbol('@bar' => [ 1, 2, 3 ]);
-}, '... created @Foo::bar successfully';
+}, undef, '... created @Foo::bar successfully' );
 
 ok(!defined($Foo::{bar}), '... the @bar slot has still not been created');
 
 ok(!defined($Foo::{baz}), '... the %baz slot has not been created yet');
 
-ok ! exception {
+is( exception {
     $meta->add_package_symbol('%baz');
-}, '... created %Foo::baz successfully';
+}, undef, '... created %Foo::baz successfully' );
 
 ok(!defined($Foo::{baz}), '... the %baz slot has still not been created');