Commit | Line | Data |
305b0c49 |
1 | #!perl |
2 | |
3 | use strict; |
4 | use warnings; |
718b5d9b |
5 | use Test::More skip_all => 'suspending'; |
6 | use Test::More; |
305b0c49 |
7 | |
8 | use Mouse::Util::TypeConstraints; |
9 | |
10 | { |
11 | package Foo; |
12 | use Mouse; |
13 | |
14 | has my_class => ( |
15 | is => 'rw', |
16 | isa => 'My::New::Class | Str', |
17 | ); |
18 | } |
19 | my $t = Foo->meta->get_attribute('my_class')->type_constraint; |
20 | |
21 | eval q{ |
22 | package My::New::Class; |
23 | use Mouse; |
24 | package My::New::DerivedClass; |
25 | use Mouse; |
26 | extends 'My::New::Class'; |
27 | }; |
28 | |
29 | isa_ok $t, 'Mouse::Meta::TypeConstraint'; |
30 | ok $t->check(My::New::Class->new); |
31 | ok $t->check(My::New::DerivedClass->new); |
32 | ok $t->check('Foo'); |
33 | ok!$t->check(undef); |
34 | ok!$t->check(bless {}, 'Foo'); |
35 | |
718b5d9b |
36 | done_testing; |