Commit | Line | Data |
b2a6a381 |
1 | use strict; |
2 | use warnings; |
3 | use Test::More; |
4 | |
5 | BEGIN { |
6 | package MyTypes; |
7 | |
8 | use MooseX::Types -declare => [ 'ClassyType' ]; |
9 | |
10 | class_type ClassyType, { class => 'ClassyClass' }; |
11 | } |
12 | |
13 | BEGIN { |
14 | |
15 | package ClassyClass; |
16 | |
17 | use Moose; |
18 | |
19 | package ClassyClassConsumer; |
20 | |
21 | BEGIN { MyTypes->import('ClassyType') } |
22 | use Moose; |
23 | |
24 | has om_nom => ( |
25 | is => 'ro', isa => ClassyType, default => sub { ClassyType->new } |
26 | ); |
27 | |
28 | } |
29 | |
30 | ok(my $o = ClassyClassConsumer->new, "Constructor happy"); |
31 | |
32 | is(ref($o->om_nom), 'ClassyClass', 'Attribute happy'); |
33 | |
195d6241 |
34 | ok(ClassyClassConsumer->new(om_nom => ClassyClass->new), 'Constructor happy'); |
35 | |
b2a6a381 |
36 | done_testing; |