]> iEval git - webservice-strike.git/blame_incremental - t/WebService-Strike.t
Update for API V2.1
[webservice-strike.git] / t / WebService-Strike.t
... / ...
CommitLineData
1#!/usr/bin/perl
2use strict;
3use warnings;
4
5use Data::Dumper qw/Dumper/;
6use Test::RequiresInternet qw/getstrike.net 443/;
7use Test::More tests => 8;
8use Try::Tiny;
9BEGIN { use_ok('WebService::Strike') };
10
11my ($t1, $t2, $t3);
12try {
13 ($t1, $t2, $t3) = strike qw/66FC47BF95D1AA5ECA358F12C70AF3BA5C7E8F9A 5D4FD5A64E436A831383773F85FB38B888B9ECC9 B425907E5755031BDA4A8D1B6DCCACA97DA14C04/;
14} catch {
15 diag 'Error while calling strike:', "\n", Dumper $_
16};
17
18subtest 'order' => sub {
19 plan tests => 3;
20 is $t1->hash, '66FC47BF95D1AA5ECA358F12C70AF3BA5C7E8F9A', 'hash #1';
21 is $t2->hash, '5D4FD5A64E436A831383773F85FB38B888B9ECC9', 'hash #2';
22 is $t3->hash, 'B425907E5755031BDA4A8D1B6DCCACA97DA14C04', 'hash #3'
23};
24
25is $t1->date, 1439319419, 'date';
26is $t2->title, 'FreeBSD 7.1 i386.DVD.iso', 'title';
27like $t2->description, qr#FreeBSD#, 'description contains FreeBSD';
28
29try {
30 strike 'aaa';
31} catch {
32 is $_->{status}, 404, 'non-existent torrent status is 404';
33};
34
35my @debian = strike_search 'Debian';
36ok @debian > 10, 'search for Debian returned more than 10 results';
37try {
38 strike_search "nosuchstring$$";
39} catch {
40 is $_->{status}, 404, "search for nosuchstring$$ returned 404"
41};
42
43# Test disabled as it fails due to the API returning bad results
44#my $p = strike_search 'Perl', 1;
45#say STDERR $p->hash;
46#
47#is @{$p->file_names}, $p->count, 'file_names has count elements';
48
49# Test disabled as I can't find a torrent with an IMDB ID. Presumably
50# this feature of the API is broken.
51#my $imdb = strike('ED70C185E3E3246F30B2FDB08D504EABED5EEA3F')->imdb;
52#is $imdb->{title}, 'The Walking Dead', 'imdb title';
This page took 0.022094 seconds and 4 git commands to generate.