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'] );
44 'named class with roles is leak-free'
49 Moose::Meta::Role->create( 'MyRole2', roles => ['MyRole'] );
51 'named role with roles is leak-free'
56 my $object = Moose::Meta::Class->create('MyClass2')->new_object;
57 apply_all_roles( $object, 'MyRole' );
59 'applying role to an instance is leak-free'
64 Moose::Meta::Role->create_anon_role;
66 'anonymous role is leak-free'
71 my $meta = Moose::Meta::Class->create_anon_class;
72 $meta->make_immutable;
74 'making an anon class immutable is leak-free'