use strict;
use warnings;
-use Test::More tests => 22;
+use Test::More;
use Test::Exception;
-
{
package Foo;
use Moose;
Foo->meta->has_method()
} '... has_method requires an arg';
-dies_ok {
- Foo->meta->has_method('')
-} '... has_method requires an arg';
-
can_ok('Foo', 'does');
foreach my $function (qw(
- extends
- has
- before after around
- blessed confess
- type subtype as where
- coerce from via
- find_type_constraint
- )) {
+ extends
+ has
+ before after around
+ blessed confess
+ type subtype as where
+ coerce from via
+ find_type_constraint
+ )) {
ok(!Foo->meta->has_method($function), '... the meta does not treat "' . $function . '" as a method');
}
+foreach my $import (qw(
+ blessed
+ try
+ catch
+ in_global_destruction
+)) {
+ ok(!Moose::Object->can($import), "no namespace pollution in Moose::Object ($import)" );
+
+ local $TODO = $import eq 'blessed' ? "no automatic namespace cleaning yet" : undef;
+ ok(!Foo->can($import), "no namespace pollution in Moose::Object ($import)" );
+}
+
+done_testing;