5 'Test::LeakTrace' => '0.01',
11 use Moose::Util qw( apply_all_roles );
16 sub myname { "I'm a role" }
21 Moose::Meta::Class->create_anon_class->new_object;
23 'anonymous class with no roles is leak-free'
28 Moose::Meta::Role->initialize('MyRole2');
30 'Moose::Meta::Role->initialize is leak-free'
35 Moose::Meta::Class->create('MyClass2')->new_object;
37 'creating named class is leak-free'
42 Moose::Meta::Class->create( 'MyClass', roles => ['MyRole'] )
45 'named class with roles is leak-free'
50 Moose::Meta::Role->create( 'MyRole2', roles => ['MyRole'] );
52 'named role with roles is leak-free'
57 my $object = Moose::Meta::Class->create('MyClass2')->new_object;
58 apply_all_roles( $object, 'MyRole' );
60 'applying role to an instance is leak-free'
65 Moose::Meta::Role->create_anon_role;
67 'anonymous role is leak-free'
72 my $meta = Moose::Meta::Class->create_anon_class;
73 $meta->make_immutable;
76 'making an anon class immutable is leak-free'