Update dist.ini and add $NEXT token to changelog
[gitmo/MooseX-Params-Validate.git] / t / 003_nocache_flag.t
1 #!/usr/bin/perl
2
3 use strict;
4 use warnings;
5
6 use Test::More;
7 use Test::Fatal;
8
9 {
10     package Foo;
11     use Moose;
12     use MooseX::Params::Validate;
13
14     sub bar {
15         my ( $self, $args, $params ) = @_;
16         $params->{MX_PARAMS_VALIDATE_NO_CACHE}++;
17         return validated_hash( $args, %$params );
18     }
19 }
20
21 my $foo = Foo->new;
22 isa_ok( $foo, 'Foo' );
23
24 is(
25     exception {
26         $foo->bar( [ baz => 1 ], { baz => { isa => 'Int' } } );
27     },
28     undef,
29     '... successfully applied the parameter validation'
30 );
31
32 is(
33     exception {
34         $foo->bar( [ baz => [ 1, 2, 3 ] ], { baz => { isa => 'ArrayRef' } } );
35     },
36     undef,
37     '... successfully applied the parameter validation (look mah no cache)'
38 );
39
40 is(
41     exception {
42         $foo->bar( [ baz => { one => 1 } ], { baz => { isa => 'HashRef' } } );
43     },
44     undef,
45     '... successfully applied the parameter validation (look mah no cache) (just checkin)'
46 );
47
48 done_testing();