update repo to point to github
[gitmo/Moo.git] / xt / implicit-moose-types.t
1 use strictures 1;
2 use Test::More;
3
4 use Moose::Util::TypeConstraints qw(find_type_constraint);
5
6 {
7   package TestRole;
8   use Moo::Role;
9 }
10
11 {
12   package TestClass;
13   use Moo;
14
15   with 'TestRole';
16 }
17
18 my $o = TestClass->new;
19
20 foreach my $name (qw(TestClass TestRole)) {
21   ok !find_type_constraint($name), "No $name constraint created without Moose loaded";
22 }
23 note "Loading Moose";
24 require Moose;
25
26 foreach my $name (qw(TestClass TestRole)) {
27   my $tc = find_type_constraint($name);
28   isa_ok $tc, 'Moose::Meta::TypeConstraint', "$name constraint"
29     and ok $tc->check($o), "TestClass object passes $name constraint";
30 }
31
32 done_testing;