1# ----------------------------------------------------------------
2    use strict;
3    use Test::More tests => 27;
4    BEGIN { use_ok('XML::FeedPP') };
5# ----------------------------------------------------------------
6    my $epo0a = time();
7    my $rfc1z = [
8        'Sun, 21 Jan 2007 22:23:24',
9        'Sun, 21 Jan 2007 22:23:24 +09:00',
10        'Sun, 14 Jan 2007 13:12:11 +10:30',
11        'Sun, 7 Jan 2007 8:09:10 -11:30',
12    ];
13    my $w3c2z = [
14        '2007-01-21T20:19:18Z',
15        '2007-01-21T20:19:18+09:00',
16        '2007-01-28T12:11:10+09:30',
17        '2007-02-04T05:06:07-08:30',
18    ];
19# ----------------------------------------------------------------
20    my $w3c0a = &XML::FeedPP::Util::epoch_to_w3cdtf( $epo0a );
21    my $epo0b = &XML::FeedPP::Util::w3cdtf_to_epoch( $w3c0a );
22    is( $epo0b, $epo0a, "1: epoch-w3cdtf-epoch    $epo0a" );
23# ----------------------------------------------------------------
24    my $rfc0a = &XML::FeedPP::Util::epoch_to_rfc1123( $epo0a );
25    my $epo0c = &XML::FeedPP::Util::rfc1123_to_epoch( $rfc0a );
26    is( $epo0c, $epo0a, "1: epoch-rfc1123-epoch   $epo0a" );
27# ----------------------------------------------------------------
28    my $cnt = 2;
29    foreach my $rfc1a ( @$rfc1z ) {
30        my $epo1a = &XML::FeedPP::Util::rfc1123_to_epoch( $rfc1a );
31        ok( $epo1a > 0, "$cnt: rfc1123-epoch         $rfc1a" );
32        my $rfc1b = &XML::FeedPP::Util::epoch_to_rfc1123( $epo1a );
33        my $epo1b = &XML::FeedPP::Util::rfc1123_to_epoch( $rfc1b );
34        my $rfc1c = &XML::FeedPP::Util::epoch_to_rfc1123( $epo1b );
35        is( $rfc1b, $rfc1c, "$cnt: rfc1123-epoch-rfc1123 $rfc1a" );
36        $cnt ++;
37    }
38# ----------------------------------------------------------------
39    foreach my $w3c2a ( @$w3c2z ) {
40        my $epo2a = &XML::FeedPP::Util::w3cdtf_to_epoch( $w3c2a );
41        ok( $epo2a > 0, "$cnt: w3cdtf-epoch          $w3c2a" );
42        my $w3c2b = &XML::FeedPP::Util::epoch_to_w3cdtf( $epo2a );
43        my $epo2b = &XML::FeedPP::Util::w3cdtf_to_epoch( $w3c2b );
44        my $w3c2c = &XML::FeedPP::Util::epoch_to_w3cdtf( $epo2b );
45        is( $w3c2b, $w3c2c, "$cnt: w3cdtf-epoch-w3cdtf   $w3c2a" );
46        $cnt ++;
47    }
48# ----------------------------------------------------------------
49    foreach my $rfc3a ( @$rfc1z ) {
50        my $w3c3a = &XML::FeedPP::Util::get_w3cdtf( $rfc3a );
51        my $epo3a = &XML::FeedPP::Util::get_epoch( $rfc3a );
52        my $epo3b = &XML::FeedPP::Util::get_epoch( $w3c3a );
53        is( $epo3b, $epo3a, "$cnt: rfc1123/w3cdtf-epoch $rfc3a" );
54        $cnt ++;
55    }
56# ----------------------------------------------------------------
57    foreach my $w3c4a ( @$w3c2z ) {
58        my $rfc4a = &XML::FeedPP::Util::get_rfc1123( $w3c4a );
59        my $epo4a = &XML::FeedPP::Util::get_epoch( $w3c4a );
60        my $epo4b = &XML::FeedPP::Util::get_epoch( $rfc4a );
61        is( $epo4b, $epo4a, "$cnt: rfc1123/w3cdtf-epoch $w3c4a" );
62        $cnt ++;
63    }
64# ----------------------------------------------------------------
65
66
67# ----------------------------------------------------------------
68;1;
69# ----------------------------------------------------------------
70