d6bb1729e92c86252854d8fe5e37ee38dee0254e
[gitmo/Mouse.git] / caveats / RT69939.t
1 #!perl -w
2 # See the CAVEATS section in Mouse.pm
3 use strict;
4 use Test::More;
5
6 {
7     package Class;
8     use Mouse;
9
10     has foo => (
11         is  => 'rw',
12
13         default => sub{
14             # Those eval()s which try to load missing modules in
15             # compile-time triggers a Perl bug (Ticket #69939).
16             # This is related not only to Mouse, but also to tie-modules.
17
18             #eval 'use MayNotBeInstalled';              # NG
19             #eval 'BEGIN{ require MayNotBeInstalled }'; # NG
20             eval{ eval 'use MayNotBeInstalled' };       # OK
21             ::pass 'in a default callback';
22         },
23     );
24 }
25
26 pass "class definition has been done";
27
28 isa_ok(Class->new, 'Class');
29
30 done_testing;
31