Debian lenny version packages
[pkg-perl] / deb-src / libwww-mechanize-perl / libwww-mechanize-perl-1.34 / t / local / reload.t
1 #!perl
2
3 use warnings;
4 use strict;
5 use Test::More tests => 14;
6
7 use lib 't/local';
8 use LocalServer;
9
10 BEGIN {
11     delete @ENV{ grep { lc eq 'http_proxy' } keys %ENV };
12     delete @ENV{ qw( IFS CDPATH ENV BASH_ENV ) };
13     use_ok( 'WWW::Mechanize' );
14 }
15
16 my $server = LocalServer->spawn;
17 isa_ok( $server, 'LocalServer' );
18
19 my $agent = WWW::Mechanize->new;
20 isa_ok( $agent, 'WWW::Mechanize', 'Created object' );
21
22 NO_GET: {
23     my $r = $agent->reload;
24     ok( !defined($r), 'Initial reload should fail' );
25 }
26
27 FIRST_GET: {
28     my $r = $agent->get($server->url);
29     isa_ok( $r, 'HTTP::Response' );
30     ok( $r->is_success, 'Get google webpage');
31     ok( $agent->is_html, 'Valid HTML' );
32     is( $agent->title, 'WWW::Mechanize::Shell test page' );
33 }
34
35 INVALIDATE: {
36     undef $agent->{content};
37     undef $agent->{ct};
38     isnt( $agent->title, 'WWW::Mechanize::Shell test page' );
39     ok( !$agent->is_html, 'Not HTML' );
40 }
41
42 RELOAD: {
43     my $r = $agent->reload;
44     isa_ok( $r, 'HTTP::Response' );
45     ok( $agent->is_html, 'Valid HTML' );
46     ok( $agent->title, 'WWW::Mechanize::Shell test page' );
47 }
48
49 SKIP: {
50     eval 'use Test::Memory::Cycle';
51     skip 'Test::Memory::Cycle not installed', 1 if $@;
52
53     memory_cycle_ok( $agent, 'Mech: no cycles' );
54 }