X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=t%2Farg_constraints.t;fp=t%2Farg_constraints.t;h=2a005b72f1b11df1c49d6092daa8fdd87fc74a6d;hp=95b92b0010a4081727c591409a6af3133b122890;hb=d9f0a350554cca79adefd4e97b4982d431f8c914;hpb=75ce30d0f208d49ead0134ab45fc2f45f72d6023 diff --git a/t/arg_constraints.t b/t/arg_constraints.t index 95b92b0..2a005b7 100644 --- a/t/arg_constraints.t +++ b/t/arg_constraints.t @@ -66,6 +66,7 @@ BEGIN { use Moose; use MooseX::MethodAttributes; + use Types::Standard qw/slurpy/; use MyApp::Types qw/Tuple Int Str StrMatch ArrayRef UserId User Heart/; extends 'Catalyst::Controller'; @@ -98,7 +99,7 @@ BEGIN { } sub many_ints :Local Args(ArrayRef[Int]) { - my ($self, $c, $int) = @_; + my ($self, $c, @ints) = @_; $c->res->body('many_ints'); } @@ -107,6 +108,11 @@ BEGIN { $c->res->body('tuple'); } + sub slurpy_tuple :Local Args(Tuple[Str,Int, slurpy ArrayRef[Int]]) { + my ($self, $c, $str, $int) = @_; + $c->res->body('tuple'); + } + sub match :Local Args(StrMatch[qr{\d\d-\d\d-\d\d}]) { my ($self, $c, $int) = @_; $c->res->body('match'); @@ -300,6 +306,17 @@ SKIP: { } { + my $res = request '/tuple/aaa/111/111/111'; + is $res->content, 'default'; +} + +{ + my $res = request '/slurpy_tuple/aaa/111/111/111'; + is $res->content, 'tuple'; +} + + +{ my $res = request '/many_ints/1/2/a'; is $res->content, 'default'; }