Revert autogenerated tests. Tests should not changed radically.
[gitmo/Mouse.git] / t / 030_roles / failing / 039_application_toclass.t
CommitLineData
6cfa1e5e 1#!/usr/bin/env perl
2use strict;
3use warnings;
9864f0e4 4use Test::More tests => 24;
6cfa1e5e 5
6do {
7 package Role::Foo;
8 use Mouse::Role;
9
10 sub foo { }
11
12
13 package Consumer::Basic;
14 use Mouse;
15
16 with 'Role::Foo';
17
18 package Consumer::Excludes;
19 use Mouse;
20
21 with 'Role::Foo' => { -excludes => 'foo' };
22
23 package Consumer::Aliases;
24 use Mouse;
25
26 with 'Role::Foo' => { -alias => { 'foo' => 'role_foo' } };
27
28 package Consumer::Overrides;
29 use Mouse;
30
31 with 'Role::Foo';
32
33 sub foo { }
34};
35
36my @basic = Consumer::Basic->meta->role_applications;
37my @excludes = Consumer::Excludes->meta->role_applications;
38my @aliases = Consumer::Aliases->meta->role_applications;
39my @overrides = Consumer::Overrides->meta->role_applications;
40
41is(@basic, 1);
42is(@excludes, 1);
43is(@aliases, 1);
44is(@overrides, 1);
45
46my $basic = $basic[0];
47my $excludes = $excludes[0];
48my $aliases = $aliases[0];
49my $overrides = $overrides[0];
50
9864f0e4 51isa_ok($basic, 'Mouse::Meta::Role::Application::ToClass');
52isa_ok($excludes, 'Mouse::Meta::Role::Application::ToClass');
53isa_ok($aliases, 'Mouse::Meta::Role::Application::ToClass');
54isa_ok($overrides, 'Mouse::Meta::Role::Application::ToClass');
6cfa1e5e 55
56is($basic->role, Role::Foo->meta);
57is($excludes->role, Role::Foo->meta);
58is($aliases->role, Role::Foo->meta);
59is($overrides->role, Role::Foo->meta);
60
61is($basic->class, Consumer::Basic->meta);
62is($excludes->class, Consumer::Excludes->meta);
63is($aliases->class, Consumer::Aliases->meta);
64is($overrides->class, Consumer::Overrides->meta);
65
66is_deeply($basic->get_method_aliases, {});
67is_deeply($excludes->get_method_aliases, {});
68is_deeply($aliases->get_method_aliases, { foo => 'role_foo' });
69is_deeply($overrides->get_method_aliases, {});
70
71is_deeply($basic->get_method_exclusions, []);
72is_deeply($excludes->get_method_exclusions, ['foo']);
73is_deeply($aliases->get_method_exclusions, []);
74is_deeply($overrides->get_method_exclusions, []);
75