X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=t%2F1_validate_07_yaml.t;h=9c3c9a631f7dbdd82178b2c58430d3efa87162c9;hb=f30b8252fcf71659a2fd3b5895e009ff8e39299d;hp=61f9f1efe985eb739047c9cba8bd4e9e9c62bd94;hpb=85070b46d0a93ddbeef07341421adb8389a55418;p=chaz%2Fp5-CGI-Ex diff --git a/t/1_validate_07_yaml.t b/t/1_validate_07_yaml.t index 61f9f1e..9c3c9a6 100644 --- a/t/1_validate_07_yaml.t +++ b/t/1_validate_07_yaml.t @@ -1,30 +1,25 @@ # -*- Mode: Perl; -*- +=head1 NAME + +1_validate_07_yaml.t - Check for CGI::Ex::Validate's ability to use YAML. + +=cut + use strict; +use Test::More tests => 5; -$^W = 1; +SKIP: { -### determine number of tests -seek(DATA,0,0); -my $prog = join "", ; -my @tests = ($prog =~ /&print_ok\(/g); -my $tests = @tests; -print "1..$tests\n"; +skip("Missing YAML.pm", 5) if ! eval { require 'YAML.pm' }; -require CGI::Ex::Validate; +use_ok('CGI::Ex::Validate'); -my ($N, $v, $e, $ok) = (0); +my $N = 0; +my $v; +my $e; -sub validate { - return scalar &CGI::Ex::Validate::validate(@_); -} -sub print_ok { - my $ok = shift; - $N ++; - warn "Test failed at line ".(caller)[2]."\n" if ! $ok; - print "" . ($ok ? "" : "not ") . "ok $N\n"; -} -&print_ok(1); +sub validate { scalar CGI::Ex::Validate::validate(@_) } ###----------------------------------------------------------------### @@ -36,115 +31,14 @@ foo: required_if: bar '; -$e = &validate({}, $v); -&print_ok($e); -$e = &validate({user => 1}, $v); -&print_ok(! $e); -$e = &validate({user => 1, bar => 1}, $v); -&print_ok($e); -$e = &validate({user => 1, bar => 1, foo => 1}, $v); -&print_ok(! $e); - - -### three groups, some with validate_if's - using arrayref -$v = ' -- group validate_if: foo - bar: - required: 1 -- group validate_if: hem - haw: { required: 1 } -- raspberry: - required: 1 -'; - -$e = &validate({}, $v); -&print_ok($e); - -$e = &validate({ - raspberry => 'tart', -}, $v); -&print_ok(! $e); - -$e = &validate({ - foo => 1, - raspberry => 'tart', -}, $v); -&print_ok($e); - -$e = &validate({ - foo => 1, - bar => 1, - raspberry => 'tart', -}, $v); -&print_ok(! $e); - -$e = &validate({ - foo => 1, - bar => 1, - hem => 1, - raspberry => 'tart', -}, $v); -&print_ok($e); - -$e = &validate({ - foo => 1, - bar => 1, - hem => 1, - haw => 1, - raspberry => 'tart', -}, $v); -&print_ok(! $e); - - -### three groups, some with validate_if's - using documents -$v = '--- -group validate_if: foo -bar: - required: 1 ---- -group validate_if: hem -haw: { required: 1 } ---- -raspberry: - required: 1 -'; - -$e = &validate({}, $v); -&print_ok($e); - -$e = &validate({ - raspberry => 'tart', -}, $v); -&print_ok(! $e); - -$e = &validate({ - foo => 1, - raspberry => 'tart', -}, $v); -&print_ok($e); - -$e = &validate({ - foo => 1, - bar => 1, - raspberry => 'tart', -}, $v); -&print_ok(! $e); - -$e = &validate({ - foo => 1, - bar => 1, - hem => 1, - raspberry => 'tart', -}, $v); -&print_ok($e); +$e = validate({}, $v); +ok($e); +$e = validate({user => 1}, $v); +ok(! $e); +$e = validate({user => 1, bar => 1}, $v); +ok($e); +$e = validate({user => 1, bar => 1, foo => 1}, $v); +ok(! $e); -$e = &validate({ - foo => 1, - bar => 1, - hem => 1, - haw => 1, - raspberry => 'tart', -}, $v); -&print_ok(! $e); -__DATA__ +};