/XML-FeedPP/t/20_limit_item.t
http://xml-treepp.googlecode.com/ · Raku · 51 lines · 38 code · 6 blank · 7 comment · 0 complexity · 88eb9f5a7edbbc78b51a44e22827c291 MD5 · raw file
- # ----------------------------------------------------------------
- use strict;
- use Test::More tests => 40;
- BEGIN { use_ok('XML::FeedPP') };
- # ----------------------------------------------------------------
- my $link1 = "http://www.kawa.net/";
- my $link2 = "http://www.youtube.com/user/YusukeKawasaki";
- my $link3 = "http://picasaweb.google.com/www.kawa.net/";
- my $link4 = "http://kawanet.blogspot.com/";
- my $link5 = "http://del.icio.us/kawa.net";
- # ----------------------------------------------------------------
- my $feed1 = XML::FeedPP::RSS->new();
- my $feed2 = XML::FeedPP::RDF->new();
- my $feed3 = XML::FeedPP::Atom->new();
- # ----------------------------------------------------------------
- my $links = [ $link1, $link2, $link3, $link4, $link5 ];
- # ----------------------------------------------------------------
- foreach my $f ( $feed1, $feed2, $feed3 ) {
- my $mode = ( (ref $f) =~ /([^:]+)$/ )[0];
- foreach my $u ( @$links ) {
- $f->add_item( $u );
- }
- $f->limit_item( 4 );
- is( scalar $f->get_item(), 4, "$mode limit_item 4 count" );
- is( $f->get_item(0)->link(), $link1, "$mode limit_item 4 link 0" );
- is( $f->get_item(3)->link(), $link4, "$mode limit_item 4 link 3" );
- $f->limit_item( -3 );
- is( scalar $f->get_item(), 3, "$mode limit_recent_item 3 count" );
- is( $f->get_item(0)->link(), $link2, "$mode limit_recent_item 3 link 0" );
- is( $f->get_item(2)->link(), $link4, "$mode limit_recent_item 3 link 2" );
- $f->limit_item( 2 );
- is( scalar $f->get_item(), 2, "$mode limit_item 2 count" );
- is( $f->get_item(0)->link(), $link2, "$mode limit_item 2 link 0" );
- is( $f->get_item(1)->link(), $link3, "$mode limit_item 2 link 1" );
- $f->limit_item( -1 );
- is( scalar $f->get_item(), 1, "$mode limit_recent_item 1 count" );
- is( $f->get_item(0)->link(), $link3, "$mode limit_recent_item 1 link 0" );
- $f->limit_item( 10 );
- is( scalar $f->get_item(), 1, "$mode limit_item 10 count" );
- $f->limit_item( -10 );
- is( scalar $f->get_item(), 1, "$mode limit_recent_item 10 count" );
- }
- # ----------------------------------------------------------------
- ;1;
- # ----------------------------------------------------------------