6 BEGIN { use_ok( 'WWW::EZTV' ); }
8 ok( my $eztv = WWW::EZTV->new, 'Build eztv crawler' );
10 subtest 'Can retrieve shows' => sub {
11 ok( $eztv->has_shows, 'Can fetch shows list' );
12 isa_ok( $eztv->shows, 'Mojo::Collection' );
13 isa_ok( $eztv->shows->[0], 'WWW::EZTV::Show' );
16 subtest 'All shows has name and URL' => sub {
18 $eztv->shows->each(sub {
20 ok( $show->name, 'Found show ' . $show->name );
21 ok( $show->url, 'Has url ' . $show->url );
22 ok( $show->status, 'Has status ' . $show->status );
23 $has_year++ if $show->year;
25 ok( $has_year, "Some shows has year info" );
28 subtest 'Show object' => sub {
29 ok( my $show = $eztv->shows->[0], 'Pick first show' );
30 diag( $show->name . ' was choosen!' );
31 ok( $show->has_episodes, 'Has episodes' );
32 ok( $show->episodes, 'Retrieve episodes' );
33 $show->episodes->each(sub{
35 diag( 'Title: '. $ep->title );
36 diag( 'Name: '. $ep->name );
37 diag( 'Season: '. $ep->season );
38 diag( 'Number: '. $ep->number );
39 diag( 'Version: '. $ep->version );
40 diag( 'Size: '. $ep->size );
41 ok( $ep->season >= 1, 'Has season' );
42 ok( $ep->number >= 1, 'Has number' );
44 ok( my $link = $ep->links->[0], 'Get first link' );
45 ok( $link->url, 'Link has url' );