Merge pull request #3 from brianphillips/master
[gitmo/MooseX-Dependent.git] / t / 06-anonymous.t
1
2 use strict;
3 use warnings;
4
5 use Test::More;
6 use MooseX::Types;
7 use MooseX::Types::Parameterizable qw(Parameterizable);
8 use MooseX::Types::Moose qw(Int Str);
9
10 my $varchar = 
11     subtype as Parameterizable[Str, Int], 
12     where {
13         my ($str, $int) = @_;
14         $int > length($str);
15     };
16
17 ok $varchar,
18   'got anonymouse type';
19
20 ok $varchar->parameterize(5)->check('aaa'),
21   'smaller than 5';
22
23 ok !$varchar->parameterize(5)->check('aaaaa'),
24   'bigger than 5';
25
26 ok !$varchar->parameterize(5)->check([1..3]),
27   'Not correct type';
28   
29 done_testing;