Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
renamed regex check in Mojolicious::Validator to like
  • Loading branch information
kraih committed Oct 4, 2013
1 parent 428a272 commit e1bbfd5
Show file tree
Hide file tree
Showing 5 changed files with 13 additions and 12 deletions.
1 change: 1 addition & 0 deletions Changes
@@ -1,6 +1,7 @@

4.44 2013-10-04
- Removed experimental status from label_for helper.
- Renamed regex check in Mojolicious::Validator to like.

4.43 2013-10-02
- Removed generators for dynamic error messages from Mojolicious::Validator.
Expand Down
2 changes: 1 addition & 1 deletion lib/Mojolicious/Guides/Rendering.pod
Expand Up @@ -633,7 +633,7 @@ with methods like L<Mojolicious::Validator::Validation/"is_valid">.
return $self->render unless $validation->has_data;

# Validate parameters ("pass_again" depends on "pass")
$validation->required('user')->size(1, 20)->regex(qr/^[e-t]+$/);
$validation->required('user')->size(1, 20)->like(qr/^[e-t]+$/);
$validation->required('pass_again')->equal_to('pass')
if $validation->optional('pass')->size(7, 500)->is_valid;

Expand Down
12 changes: 6 additions & 6 deletions lib/Mojolicious/Validator.pm
Expand Up @@ -4,7 +4,7 @@ use Mojo::Base -base;
use Mojolicious::Validator::Validation;

has checks => sub {
{equal_to => \&_equal_to, in => \&_in, regex => \&_regex, size => \&_size};
{equal_to => \&_equal_to, in => \&_in, like => \&_like, size => \&_size};
};

sub add_check {
Expand All @@ -29,7 +29,7 @@ sub _in {
return undef;
}

sub _regex { $_[2] =~ $_[3] }
sub _like { $_[2] =~ $_[3] }

sub _size {
my ($validation, $name, $value, $min, $max) = @_;
Expand All @@ -52,7 +52,7 @@ Mojolicious::Validator - Validate form data
my $validator = Mojolicious::Validator->new;
my $validation = $validator->validation;
$validation->input({foo => 'bar'});
$validation->required('foo')->regex(qr/ar$/);
$validation->required('foo')->like(qr/ar$/);
say $validation->param('foo');
=head1 DESCRIPTION
Expand All @@ -76,9 +76,9 @@ Value needs to be equal to the value of another field.
Value needs to match one of the values in the list.
=head2 regex
=head2 like
$validation->regex(qr/^[A-Z]/);
$validation->like(qr/^[A-Z]/);
Value needs to match the regular expression.
Expand All @@ -97,7 +97,7 @@ L<Mojolicious::Validator> implements the following attributes.
my $checks = $validator->checks;
$validator = $validator->checks({size => sub {...}});
Registered validation checks, by default only C<equal_to>, C<in>, C<regex> and
Registered validation checks, by default only C<equal_to>, C<in>, C<like> and
C<size> are already defined.
=head1 METHODS
Expand Down
2 changes: 1 addition & 1 deletion lib/Mojolicious/Validator/Validation.pm
Expand Up @@ -202,7 +202,7 @@ In addition to the methods above, you can also call validation checks provided
by L<Mojolicious::Validator> on L<Mojolicious::Validator::Validation> objects,
similar to C<check>.
$validation->required('foo')->size(2, 5)->regex(qr/^[A-Z]/);
$validation->required('foo')->size(2, 5)->like(qr/^[A-Z]/);
$validation->optional('bar')->equal_to('foo');
$validation->optional('baz')->in(qw(test 123));
Expand Down
8 changes: 4 additions & 4 deletions t/mojolicious/validation_lite_app.t
Expand Up @@ -76,17 +76,17 @@ is_deeply $validation->output, {foo => [qw(bar whatever)]}, 'right result';
ok $validation->has_error, 'has error';
is_deeply $validation->error('baz'), [qw(in yada whatever)], 'right error';

# Regex
# Like
$validation = $t->app->validation;
$validation->input({foo => 'bar', baz => 'yada'});
ok $validation->required('foo')->regex(qr/^b/)->is_valid, 'valid';
ok $validation->required('foo')->like(qr/^b/)->is_valid, 'valid';
is_deeply $validation->output, {foo => 'bar'}, 'right result';
ok !$validation->has_error, 'no error';
my $re = qr/ar$/;
ok !$validation->required('baz')->regex($re)->is_valid, 'not valid';
ok !$validation->required('baz')->like($re)->is_valid, 'not valid';
is_deeply $validation->output, {foo => 'bar'}, 'right result';
ok $validation->has_error, 'has error';
is_deeply $validation->error('baz'), ['regex', $re], 'right error';
is_deeply $validation->error('baz'), ['like', $re], 'right error';

# Size
$validation = $t->app->validation;
Expand Down

0 comments on commit e1bbfd5

Please sign in to comment.