set release date
[www-quvi.git] / t / WWW-Quvi-Defaults.t
blobe78d08651fb207721518f064ba099b935970b19e
2 use warnings;
3 use strict;
5 use Test::More tests => 34;
6 BEGIN { use_ok('WWW::Quvi') };
8 # Version.
10 like (&WWW::Quvi::version, qr{^\d+.\d+$});
12 like (&WWW::Quvi::version(WWW::Quvi::ModuleVersion), qr{^\d+.\d+$});
14 like (
15     &WWW::Quvi::version(WWW::Quvi::libquviVersion), qr{^\d+.\d+.\d+$});
17 like (
18     &WWW::Quvi::version(WWW::Quvi::libquviVersionLong),
19     qr{^\d+.\d+.\d+.* built on \d+.\d+.\d+ .* (.*)$}
22 # Options.
24 my $opts = new WWW::Quvi::Options;
25 isa_ok ($opts, 'WWW::Quvi::Options');
27 is ($opts->{user_agent}, "");
28 is ($opts->{http_proxy}, "");
29 is ($opts->{format},     "default");
30 is ($opts->{verify},     1);
31 is ($opts->{verbose_libcurl}, "");
33 $opts->{user_agent} = "Mozilla/5.0";
34 is ($opts->{user_agent}, "Mozilla/5.0");
36 $opts->{http_proxy} = "http://foo:1234";
37 is ($opts->{http_proxy}, "http://foo:1234");
39 $opts->{format} = "hd";
40 is ($opts->{format}, "hd");
42 $opts->{verify} = 0;
43 is ($opts->{verify}, "");
45 $opts->{verbose_libcurl} = 1;
46 is ($opts->{verbose_libcurl}, 1);
48 # Link.
50 my $l = new WWW::Quvi::Link;
51 isa_ok ($l, 'WWW::Quvi::Link');
53 is ($l->{content_type}, "");
54 is ($l->{file_suffix},  "");
55 is ($l->{length_bytes}, -1);
56 is ($l->{url},          "");
58 # Video.
60 my $v = new WWW::Quvi::Video;
61 isa_ok ($v, 'WWW::Quvi::Video');
63 is ($v->{title},     "");
64 is ($v->{host},      "");
65 is ($v->{url},       "");
66 is ($v->{id},        "");
67 is ($v->{ok},        "");
69 # Query.
71 my $q = new WWW::Quvi::Query;
72 isa_ok ($q, 'WWW::Quvi::Query');
74 is ($q->{last_error}, "");
75 is ($q->{quvi_code},   0);
76 is ($q->{resp_code},  -1);
78 # Websites.
80 my ($rc, $domain, $formats) = $q->next_website;
81 is ($rc, 0);
82 like ($domain, qr{^\w+.\w+$});
83 like ($formats, qr{^\w+(?:|)});
85 # QUVIcode aliases.
87 my @QUVIcode = {
88    WWW::Quvi::OK,
89    WWW::Quvi::Mem,
90    WWW::Quvi::BadHandle,
91    WWW::Quvi::InvArg,
92    WWW::Quvi::CurlInit,
93    WWW::Quvi::Last,
94    WWW::Quvi::AbortedByCallback,
95    WWW::Quvi::LuaInit,
96    WWW::Quvi::NoLuaWebsite,
97    WWW::Quvi::PcreError,
98    WWW::Quvi::NoSupport,
99    WWW::Quvi::CurlError,
100    WWW::Quvi::IconvError,
101    WWW::Quvi::LuaError,