use Class::MOP;
{
- package Foo;
- use metaclass no_meta => 1;
+ {
+ package Foo;
+ use metaclass no_meta => 1;
+ }
+
+ my $meta = Class::MOP::class_of('Foo');
+ ok(!$meta->has_method('meta'), "no meta method was installed");
+ $meta->add_method(meta => sub { die 'META' });
+ lives_ok { $meta->find_method_by_name('meta') } "can do meta-level stuff";
+ lives_ok { $meta->make_immutable } "can do meta-level stuff";
+ lives_ok { $meta->class_precedence_list } "can do meta-level stuff";
}
-my $meta = Class::MOP::class_of('Foo');
-ok(!$meta->has_method('meta'), "no meta method was installed");
-$meta->add_method(meta => sub { die 'META' });
-lives_ok { $meta->find_method_by_name('meta') } "can do meta-level stuff";
-lives_ok { $meta->make_immutable } "can do meta-level stuff";
-lives_ok { $meta->class_precedence_list } "can do meta-level stuff";
+{
+ my $meta = Class::MOP::Class->create('Bar', no_meta => 1);
+ ok(!$meta->has_method('meta'), "no meta method was installed");
+ $meta->add_method(meta => sub { die 'META' });
+ lives_ok { $meta->find_method_by_name('meta') } "can do meta-level stuff";
+ lives_ok { $meta->make_immutable } "can do meta-level stuff";
+ lives_ok { $meta->class_precedence_list } "can do meta-level stuff";
+}
done_testing;