1use strict;
2
3use Test::More tests => 8;
4
5
6package DateTime::Format::ICal15;
7use DateTime::Format::Builder;
8
9DateTime::Format::Builder->create_class(
10    version => 4.00,
11    parsers => {
12	parse_datetime => [ {
13	    params => [ qw( year month day hour minute second ) ],
14	    regex  => qr/^(\d\d\d\d)(\d\d)(\d\d)T(\d\d)(\d\d)(\d\d)$/,
15	} ]
16    },
17);
18
19package main;
20
21my $sample = "20030716T163245";
22my $newclass = "DateTime::Format::ICal15";
23
24my $parser = $newclass->new();
25cmp_ok ( $newclass->VERSION, '==', '4.00', "Version matches");
26
27{
28    my $dt = $parser->parse_datetime( $sample );
29    isa_ok( $dt => "DateTime" );
30    my %methods = qw(
31    hour 16 minute 32 second 45
32    year 2003 month 7 day 16
33    );
34    while (my ($method, $expected) = each %methods)
35    {
36	is( $dt->$method() => $expected,
37	    "\$dt->$method() == $expected" );
38    }
39}
40