The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
# ----------------------------------------------------------------
    use strict;
    use Test::More tests => 13;
    BEGIN { use_ok('XML::FeedPP') };
# ----------------------------------------------------------------
    my $date110w = "2004-11-09T11:33:20Z";              # 1100000000
    my $date110h = "Tue, 09 Nov 2004 11:33:20 GMT";
    my $date111w = "2005-03-05T14:20:00+09:00";         # 1110000000
    my $date111h = "Sat, 05 Mar 2005 14:20:00 +0900";
    my $date112w = "2005-06-29T08:06:30-09:00";         # 1120000000
    my $date112h = "Wed, 29 Jun 2005 08:06:30 -0900";
    my $date113w = "2005-10-23T01:53:20Z";              # 1130000000
    my $date113h = "Sun, 23 Oct 2005 01:53:20 GMT";
    my $date114w = "2006-02-15T19:40:00Z";              # 1140000000
    my $date114h = "Wed, 15 Feb 2006 19:40:00 GMT";
# ----------------------------------------------------------------
    my $url = "http://www.kawa.net/";
# ----------------------------------------------------------------
    my $src_rss = <<"EOT";
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
    <channel>
        <link>$url</link>
        <pubDate>$date110w</pubDate>
        <item>
            <link>$url</link>
            <pubDate>$date111w</pubDate>
        </item>
    </channel>
</rss>
EOT
# ----------------------------------------------------------------
    my $src_rdf = <<"EOT";
<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns="http://purl.org/rss/1.0/">
    <channel rdf:about="$url">
        <link>$url</link>
        <dc:date>$date112h</dc:date>
        <rdf:Seq>
        <rdf:li rdf:resource="$url" />
        </rdf:Seq>
    </channel>
    <item rdf:about="$url">
        <link>$url</link>
        <dc:date>$date113h</dc:date>
    </item>
</rdf:RDF>
EOT
# ----------------------------------------------------------------
    my $src_atom = <<"EOT";
<?xml version="1.0" encoding="utf-8"?>
<feed version="0.3" xmlns="http://purl.org/atom/ns#">
    <link rel="alternate" type="text/html" href="$url"/>
    <modified>$date114h</modified>
    <entry>
        <link rel="alternate" type="text/html" href="$url"/>
        <issued>$date110h</issued>
        <modified>$date111h</modified>
    </entry>
</feed>
EOT
# ----------------------------------------------------------------
    my $feed_rss = XML::FeedPP->new( $src_rss );
    $feed_rss->normalize();
    is( $feed_rss->pubDate(), $date110w, "rss channel pubDate()" );
    my $item_rss = $feed_rss->get_item(0);
    is( $item_rss->pubDate(), $date111w, "rss item pubDate()" );
    my $out_rss = $feed_rss->to_string();
    ok( $out_rss =~ /\Q$date110h\E/, "rss channel to_string()" );
    ok( $out_rss =~ /\Q$date111h\E/, "rss item to_string()" );
# ----------------------------------------------------------------
    my $feed_rdf = XML::FeedPP->new( $src_rdf );
    $feed_rdf->normalize();
    is( $feed_rdf->pubDate(), $date112w, "rdf channel pubDate()" );
    my $item_rdf = $feed_rdf->get_item(0);
    is( $item_rdf->pubDate(), $date113w, "rdf item pubDate()" );
    my $out_rdf = $feed_rdf->to_string();
    ok( $out_rdf =~ /\Q$date112w\E/, "rdf channel to_string()" );
    ok( $out_rdf =~ /\Q$date113w\E/, "rdf item to_string()" );
# ----------------------------------------------------------------
    my $feed_atom = XML::FeedPP->new( $src_atom );
    $feed_atom->normalize();
    is( $feed_atom->pubDate(), $date114w, "atom channel pubDate()" );
    my $item_atom = $feed_atom->get_item(0);
    is( $item_atom->pubDate(), $date111w, "atom item pubDate()" );
    my $out_atom = $feed_atom->to_string();
    ok( $out_atom =~ /\Q$date114w\E/, "atom channel to_string()" );
    ok( $out_atom =~ /\Q$date111w\E/, "atom item to_string()" );
# ----------------------------------------------------------------
;1;
# ----------------------------------------------------------------