1# $Id: parse_date.t 1039 2003-05-30 14:04:49Z cfaerber $
2use Test::More tests => 18;
3use DateTime 0.10;
4use DateTime::TimeZone 0.12;
5use DateTime::Format::Pg 0.02;
6
7my $dt;
8
9# ISO 
10#
11$dt = DateTime::Format::Pg->parse_date('2003-04-26');
12is($dt->ymd(), '2003-04-26');
13
14$dt = DateTime::Format::Pg->parse_date('1900-01-01');
15is($dt->ymd(), '1900-01-01');
16
17$dt = DateTime::Format::Pg->parse_date('0001-12-24 BC');
18is($dt->ymd(), '0000-12-24');
19
20# PostgreSQL
21#
22$dt = DateTime::Format::Pg->parse_date('26-04-2003', 'european' => 1);
23is($dt->ymd(), '2003-04-26');
24
25$dt = DateTime::Format::Pg->parse_date('01-01-1900', 'european' => 1);
26is($dt->ymd(), '1900-01-01');
27
28$dt = DateTime::Format::Pg->parse_date('24-12-0001 BC', 'european' => 1);
29is($dt->ymd(), '0000-12-24');
30
31$dt = DateTime::Format::Pg->parse_date('04-26-2003', 'european' => 0);
32is($dt->ymd(), '2003-04-26');
33
34$dt = DateTime::Format::Pg->parse_date('01-01-1900', 'european' => 0);
35is($dt->ymd(), '1900-01-01');
36
37$dt = DateTime::Format::Pg->parse_date('12-24-0001 BC', 'european' => 0);
38is($dt->ymd(), '0000-12-24');
39
40# SQL
41#
42$dt = DateTime::Format::Pg->parse_date('26/04/2003', 'european' => 1);
43is($dt->ymd(), '2003-04-26');
44
45$dt = DateTime::Format::Pg->parse_date('01/01/1900', 'european' => 1);
46is($dt->ymd(), '1900-01-01');
47
48$dt = DateTime::Format::Pg->parse_date('24/12/0001 BC', 'european' => 1);
49is($dt->ymd(), '0000-12-24');
50
51$dt = DateTime::Format::Pg->parse_date('04/26/2003', 'european' => 0);
52is($dt->ymd(), '2003-04-26');
53
54$dt = DateTime::Format::Pg->parse_date('01/01/1900', 'european' => 0);
55is($dt->ymd(), '1900-01-01');
56
57$dt = DateTime::Format::Pg->parse_date('12/24/0001 BC', 'european' => 0);
58is($dt->ymd(), '0000-12-24');
59
60# German
61#
62$dt = DateTime::Format::Pg->parse_date('26.04.2003');
63is($dt->ymd(), '2003-04-26');
64
65$dt = DateTime::Format::Pg->parse_date('01.01.1900');
66is($dt->ymd(), '1900-01-01');
67
68$dt = DateTime::Format::Pg->parse_date('24.12.0001 BC');
69is($dt->ymd(), '0000-12-24');
70