1#!/usr/local/bin/perl
2
3BEGIN { $| = 1; }
4use Image::Grab;
5use diagnostics;
6
7# You need cookies for www.chron.com for this to work.
8# See http://www.chron.com/content/comics
9
10# Net connection?
11if(!-f "t/have_network") {
12  print "1..0\n";
13  exit 0;
14}
15
16if(-f "$ENV{HOME}/.netscape/cookies") {
17  open(COOKIE, "$ENV{HOME}/.netscape/cookies");
18  unless (grep {/www.chron.com/} <COOKIE>) {
19    print "1..0\n";
20    close(COOKIE);
21    exit 0;
22  }
23  close(COOKIE);
24} else {
25  print "1..0\n";
26  exit 0;
27}
28
29my $toons = [
30# These require cookies
31{Name => "One Big Happy",
32 url => "http://www.chron.com/content/chronicle/comics/One_Big_Happy.g.gif",
33 "link" => "http://www.chron.com/content/comics",
34 },
35{Name => "9 Chickweed Lane",
36 url => "http://www.chron.com/content/chronicle/comics/9_Chickweed_Lane.g.gif",
37 "link" => "http://www.chron.com/content/comics",
38 },
39{Name => "Liberty Meadows",
40 url => "http://www.chron.com/content/chronicle/comics/Liberty_Meadows.g.gif",
41 "link" => "http://www.chron.com/content/comics",
42}];
43
44print "1..", $#{$toons} + 1,"\n";
45my $num=0;
46my $name;
47foreach (@$toons)  {
48  $num++;
49  $name = $_->{Name};
50  print "$name\n";
51  $comic->{$name} = new Image::Grab;
52  $comic->{$name}->url($_->{url}) if defined $_->{url};
53  $comic->{$name}->refer($_->{refer}) if defined $_->{refer};
54  $comic->{$name}->regexp($_->{regexp}) if defined $_->{regexp};
55
56  print "\turl:    ", $_->{url}, "\n" if defined $_->{url};
57  print "\trefer:  ", $_->{refer}, "\n" if defined $_->{refer};
58  print "\tregexp: ", $_->{regexp}, "\n" if defined $_->{regexp};
59  print "\treal:   ", $comic->{$name}->expand_url, "\n";
60# getAllURLs should really be fixed so that it only has to fetch once.
61  print "\t\t", join("\n\t\t", $comic->{$name}->getAllURLs), "\n" if $_->{refer};
62
63  print "ok $num\n";
64}
65