1#########################
2# Artist Search tests
3#########################
4use warnings;
5use strict;
6
7use Test::More tests => 23;
8BEGIN { use_ok('Net::Amazon') };
9
10#use Log::Log4perl qw(:easy);
11#Log::Log4perl->easy_init($INFO);
12
13use Net::Amazon;
14use Net::Amazon::Request::Director;
15
16################################################################
17# Setup
18################################################################
19  my($TESTDIR) = map { -d $_ ? $_ : () } qw(t ../t .);
20  require "$TESTDIR/init.pl";
21  my $CANNED = "$TESTDIR/canned";
22################################################################
23  canned($CANNED, "director.xml");
24################################################################
25
26my $ua = Net::Amazon->new(
27    associate_tag => 'YOUR_AMZN_ASSOCIATE_TAG',
28    token         => 'YOUR_AMZN_TOKEN',
29    secret_key    => 'YOUR_AMZN_SECRET_KEY',
30    #response_dump => 1,
31);
32
33my $req = Net::Amazon::Request::Director->new(
34    director => "miyazaki",
35);
36
37   # Response is of type Net::Amazon::Artist::Response
38my $resp = $ua->request($req);
39
40ok($resp->is_success(), "Request successful");
41my @properties = $resp->properties();
42is(scalar @properties, 10, "10 movies");
43
44like($resp->as_string(), qr/Totoro.*?Ponyo/s, "Examine Movies");
45
46my $i = 1;
47my @starring = $properties[$i]->starring();
48
49is($properties[$i]->actor, "Hitoshi Takagi", "Check actor");
50is($starring[0], "Hitoshi Takagi", "Check starring");
51is($properties[$i]->director, "Hayao Miyazaki", "Check director");
52like($properties[$i]->title, qr/My Neighbor Totoro/, "Check title");
53is($properties[$i]->studio, "Disney Presents Studio Ghibli", "Check studio");
54is($properties[$i]->ReleaseDate, "2010-03-02", "Check release date");
55is($properties[$i]->media, "DVD", "Check media");
56is($properties[$i]->Media, "DVD", "Check Media");
57is($properties[$i]->nummedia, 2, "Check nummedia");
58is($properties[$i]->NumMedia, 2, "Check NumMedia");
59is($properties[$i]->upc, "786936791716", "Check UPC");
60like($properties[$i]->mpaa_rating, qr/G \(General Audience\)/, "Check MPAA rating");
61is($properties[$i]->region_code, 1, "Check region code");
62is($properties[$i]->label, "Disney Presents Studio Ghibli", "Check label");
63is($properties[$i]->running_time, "86", "Check running time");
64is($properties[$i]->publisher, "Disney Presents Studio Ghibli", "Check publisher");
65is($properties[$i]->ean, "0786936791716", "Check ean");
66is($properties[$i]->feature, "Animated", "Check feature");
67is(scalar($properties[$i]->features), 8, "Check number of features");
68
69