# ---------------------------------------------------------------- use strict; use Test::More tests => 19; BEGIN { use_ok('XML::FeedPP') }; # ---------------------------------------------------------------- my $link1 = "http://www.kawa.net/"; my $link2 = "http://www.flickr.com/photos/u-suke/"; my $link3 = "http://feeds.feedburner.com/u-suke/"; my $link4 = "http://kawa.suprglu.com/"; my $link5 = "http://del.icio.us/kawa.net"; # ---------------------------------------------------------------- my $date1 = 1100000000; my $date2 = "2005-03-05T14:20:00+09:00"; # 1110000000 my $date3 = "Wed, 29 Jun 2005 08:06:30 -0900"; # 1120000000 my $date4 = "2005-10-23T01:53:20Z"; # 1130000000 my $date5 = "Wed, 15 Feb 2006 19:40:00 GMT"; # 1140000000 # ---------------------------------------------------------------- my $feed1 = XML::FeedPP::RSS->new(); my $feed2 = XML::FeedPP::RDF->new(); my $feed3 = XML::FeedPP::Atom->new(); # ---------------------------------------------------------------- my $map = { $link1 => $date1, $link2 => $date2, $link3 => $date3, $link4 => $date4, $link5 => $date5, }; # ---------------------------------------------------------------- foreach my $f ( $feed1, $feed2, $feed3 ) { foreach my $u ( sort keys %$map ) { my $i = $f->add_item( $u ); $i->pubDate( $map->{$u} ) if $map->{$u}; } my $mode = ( (ref $f) =~ /([^:]+)$/ )[0]; is( 5, scalar $f->get_item(), "$mode count #1" ); $f->sort_item(); is( 5, scalar $f->get_item(), "$mode count #2" ); is( $date2, $f->get_item(3)->pubDate(), "$mode sort #1" ); is( $date4, $f->get_item(1)->pubDate(), "$mode sort #2" ); $f->get_item(4)->link( $link3 ); $f->get_item(3)->link( $link3 ); $f->normalize(); is( 3, scalar $f->get_item(), "$mode count #3" ); $f->limit_item( 1 ); is( 1, scalar $f->get_item(), "$mode count #4" ); } # ---------------------------------------------------------------- ;1; # ----------------------------------------------------------------