diff options
Diffstat (limited to 't/validate.t')
-rw-r--r-- | t/validate.t | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/t/validate.t b/t/validate.t index dbb1582..f3315cc 100644 --- a/t/validate.t +++ b/t/validate.t @@ -16,6 +16,7 @@ my %validations = ( prefix => sub { my $p = shift; { func => sub { $_[0] =~ /^$p/ } } }, bool => { required => 0, default => 0, func => sub { $_[0] = $_[0]?1:0; 1 } }, collapsews => { rmwhitespace => 0, func => sub { $_[0] =~ s/\s+/ /g; 1 } }, + neverfails => { onerror => 'err' }, revnum => { type => 'array', sort => sub { $_[1] <=> $_[0] } }, uniquelength => { type => 'array', values => { type => 'array' }, unique => sub { scalar @{$_[0]} } }, person => { @@ -159,6 +160,9 @@ t { person => 1, keys => {extra => {}} }, {name => 'x', extra => 1}, { name => ' t { person => 1, keys => {extra => {}} }, {name => 'x', extra => ''}, { name => 'x', extra => '' }, { validation => 'keys', errors => [{ key => 'extra', validation => 'required' }] }; t { person => 1 }, {name => 'x', extra => 1}, {name => 'x', extra => 1}, undef; t { person => 1, unknown => 'remove' }, {name => 'x', extra => 1}, {name => 'x'}, undef; +t { neverfails => 1, int => 1 }, undef, 'err', undef; +t { neverfails => 1, int => 1 }, 'x', 'err', undef; +t { neverfails => 1, int => 1, onerror => undef }, 'x', undef, undef; # XXX: no way to 'unset' an inherited onerror clause, hmm. # numbers sub nerr { +{ validation => 'num', got => $_[0] } } |