Add expire.t
[libquvi-scripts.git] / tests / t / format_other.t
bloba0827796556e18a5597de6a7cb28d5bc2f2f2208
1 # libquvi-scripts
2 # Copyright (C) 2011  Toni Gundogdu <legatvs@gmail.com>
4 # This program is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU General Public License
6 # as published by the Free Software Foundation; either version 2
7 # of the License, or (at your option) any later version.
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
17 # 02110-1301, USA.
19 use warnings;
20 use strict;
22 use Test::More;
24 eval "use JSON::XS";
25 plan skip_all => "JSON::XS required for testing" if $@;
27 eval "use Test::Deep";
28 plan skip_all => "Test::Deep required for testing" if $@;
30 use Test::Quvi;
32 my $q = Test::Quvi->new;
34 plan skip_all => "TEST_SKIP rule"
35   if $q->test_skip("format_other");
37 my @files = $q->find_json(
38   qw(
39     data/format/other
40     data/format/default/ignore/length_bytes
41     )
44 plan skip_all => "Nothing to test" if scalar @files == 0;
45 plan tests => scalar @files * 2;
47 my $j   = $q->get_json_obj;
48 my $ign = qr|/ignore/(.*?)/|;
50 foreach (@files)
52   my $e = $q->read_json($_);
54   $q->mark_ignored(\$e, $1) if $_ =~ /$ign/;
56   my $f = $e->{format_requested};
57   my ($r, $o) = $q->run($e->{page_url}, "-qrf $f");
58   is($r, 0, "quvi exit status == 0")
59     or diag $e->{page_url};
60 SKIP:
61   {
62     skip 'quvi exit status != 0', 1 if $r != 0;
63     cmp_deeply($j->decode($o), $e, "compare with $_")
64       or diag $e->{page_url};
65   }
68 # vim: set ts=2 sw=2 tw=72 expandtab: