]>
Commit | Line | Data |
---|---|---|
452cbee3 TC |
1 | #!perl -w |
2 | use strict; | |
33b7f58c | 3 | use Test::More tests => 16; |
452cbee3 TC |
4 | |
5 | BEGIN { 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 | } |