1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
#########################
# Artist Search tests
#########################
use warnings;
use strict;
use Test::More tests => 10;
BEGIN { use_ok('Net::Amazon') };
#use Log::Log4perl qw(:easy);
#Log::Log4perl->easy_init($INFO);
use Net::Amazon;
use Net::Amazon::Request::Artist;
################################################################
# Setup
################################################################
my($TESTDIR) = map { -d $_ ? $_ : () } qw(t ../t .);
require "$TESTDIR/init.pl";
my $CANNED = "$TESTDIR/canned";
################################################################
canned($CANNED, "artist.xml");
################################################################
my $ua = Net::Amazon->new(
token => 'YOUR_AMZN_TOKEN',
# response_dump => 1,
);
my $req = Net::Amazon::Request::Artist->new(
artist => "Zwan",
);
# Response is of type Net::Amazon::Artist::Response
my $resp = $ua->request($req);
ok($resp->is_success(), "Request successful");
my @properties = $resp->properties();
is(scalar @properties, 6, "6 hits");
like($resp->as_string(), qr/Honestly.*?Honestly.*?Honestly/s, "Examine Hits");
@properties = $resp->properties();
is($properties[3]->artist, "Zwan", "Check artist");
is($properties[3]->album, "Lyric / Nobody Cept You / Autumn Leaves",
"Check album");
is($properties[4]->nummedia, "", "Check nummedia");
is($properties[4]->media, "Audio CD", "Check media");
is($properties[0]->label, "Warner Brothers", "Check label");
is($properties[1]->label, "Import [Generic]", "Check label");
|