Commit | Line | Data |
fd197235 |
1 | use strict; |
2 | use warnings; |
3 | |
4 | use Test::More; |
5 | use MooseX::Types -declare=>[qw( SizedArray )]; |
6 | use MooseX::Types::Parameterizable qw(Parameterizable); |
7 | use MooseX::Types::Moose qw( Int ArrayRef ); |
8 | |
9 | ok subtype( |
10 | SizedArray, |
11 | as Parameterizable[ArrayRef,Int], |
12 | where { |
13 | my ($value, $max) = @_; |
14 | @$value > $max |
15 | }, |
16 | message { |
17 | my($value, $max) = @_; |
18 | return sprintf('%d > %d', scalar(@$value), $max); |
19 | } |
20 | ), 'Created parameterized type'; |
21 | |
22 | is SizedArray([3])->get_message([1..4]), q{4 > 3}, 'custom message'; |
23 | |
24 | done_testing; |