tests for _load_module
[gitmo/Role-Tiny.git] / t / role-long-package-name.t
CommitLineData
1c367615 1use strict;
2use warnings;
3use Test::More;
4
5# using Role::Tiny->apply_roles_to_object with too many roles,
6# It makes 'Identifier too long' error in string 'eval'.
7# And, Moo uses string eval.
8{
9 package R::AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA;
10 use Role::Tiny;
11 package R::BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB;
12 use Role::Tiny;
13 package R::CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC;
14 use Role::Tiny;
15 package R::DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD;
16 use Role::Tiny;
17 package R::EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE;
18 use Role::Tiny;
19}
20
21{
22 package Foo;
23 sub new { bless {}, shift }
24}
25
26my $foo = Foo->new();
27for (qw(
28 R::AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
29 R::BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
30 R::CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
31 R::DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
32 R::EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
33)) {
34 Role::Tiny->apply_roles_to_object($foo, $_);
35}
36
37my $pkg = ref $foo;
1c367615 38eval "package $pkg;";
33f7a802 39is $@, '', 'package name usable by perl'
40 or diag "package: $pkg";
1c367615 41
42done_testing;