]> git.imager.perl.org - bse.git/blame - t/t012validate.t
pass required parameters down for vimages childrenof(children)
[bse.git] / t / t012validate.t
CommitLineData
452cbee3
TC
1#!perl -w
2use strict;
33b7f58c 3use Test::More tests => 16;
452cbee3
TC
4
5BEGIN { use_ok('DevHelp::Validate'); }
6
33b7f58c
TC
7{
8 my %built_ins =
9 (
10 oneline =>
11 {
12 rules => "dh_one_line"
13 },
14 );
15 my $val = DevHelp::Validate::Hash->new(fields => \%built_ins);
16 ok($val, "got built-ins validation object");
17 {
18 my %errors;
19 ok($val->validate({ oneline => "abc" }, \%errors), "valid oneline");
20 is_deeply(\%errors, {}, "no errors set");
21 }
22 {
23 my %errors;
24 ok(!$val->validate({ oneline => "\x0D" }, \%errors), "invalid oneline (CR)");
25 ok($errors{oneline}, "message for oneline");
26 }
27 {
28 my %errors;
29 ok(!$val->validate({ oneline => "\x0A" }, \%errors), "invalid oneline (LF)");
30 ok($errors{oneline}, "message for oneline");
31 }
32}
33
452cbee3
TC
34{
35 my %simple_date =
36 (
37 date =>
38 {
39 rules => 'date'
40 },
41 );
42
43 my $val = DevHelp::Validate::Hash->new(fields => \%simple_date);
44 ok($val, "got validation object");
45 {
46 my %errors;
47 ok($val->validate({ date => "30/12/67" }, \%errors), "valid date");
48 }
49 {
50 my %errors;
51 ok(!$val->validate({ date => "32/12/67" }, \%errors),
52 "obviously invalid date");
53 }
54 {
55 my %errors;
56 ok(!$val->validate({ date => "31/9/67" }, \%errors),
57 "not so obviously invalid date");
58 }
59 {
60 my %errors;
61 ok(!$val->validate({ date => "29/2/67" }, \%errors),
62 "leap year check 29/2/67");
63 }
64 {
65 my %errors;
66 ok($val->validate({ date => "28/2/67" }, \%errors),
67 "leap year check 28/2/67");
68 }
69 {
70 my %errors;
71 ok($val->validate({ date => "29/2/80" }, \%errors),
72 "leap year check 29/2/80");
73 }
74 {
75 my %errors;
76 ok($val->validate({ date => "29/12/2000" }, \%errors),
77 "leap year check 29/2/2000");
78 }
79}