AHHHHHHHHHHHH
[gitmo/Moose.git] / t / 071_misc_attribute_tests.t
1 #!/usr/bin/perl
2
3 use strict;
4 use warnings;
5
6 use Test::More tests => 4;
7 use Test::Exception;
8
9 BEGIN {
10     use_ok('Moose');           
11 }
12
13 {
14     {
15         package Test::For::Lazy::TypeConstraint;
16         use Moose;
17         use Moose::Util::TypeConstraints;
18
19         has 'bad_lazy_attr' => (
20             is => 'rw',
21             isa => 'ArrayRef',
22             lazy => 1, 
23             default => sub { "test" },
24         );
25         
26         has 'good_lazy_attr' => (
27             is => 'rw',
28             isa => 'ArrayRef',
29             lazy => 1, 
30             default => sub { [] },
31         );        
32
33     }
34
35     my $test = Test::For::Lazy::TypeConstraint->new;
36     isa_ok($test, 'Test::For::Lazy::TypeConstraint');
37     
38     dies_ok {
39         $test->bad_lazy_attr;
40     } '... this does not work';
41     
42     lives_ok {
43         $test->good_lazy_attr;
44     } '... this does not work';    
45 }