ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/AnyEvent/t/handle/03_http_req.t
Revision: 1.10
Committed: Sat May 24 23:15:14 2008 UTC (16 years, 1 month ago) by root
Content type: application/x-troff
Branch: MAIN
CVS Tags: rel-4_151, rel-4_152, rel-4_04, rel-4_23, rel-4_21, rel-4_412, rel-4_81, rel-4_83, rel-4_82, rel-4_86, rel-4_352, rel-4_351, rel-4_14, rel-4_15, rel-4_13, rel-0_85, rel-4_331, rel-4_231, rel-4_233, rel-4_232, rel-4_8, rel-4_234, rel-4_4, rel-4_05, rel-4_12, rel-4_11, rel-4_22, rel-4_161, rel-4_160, rel-4_411, rel-4_45, rel-4_41, rel-4_42, rel-4_1, rel-4_2, rel-4_3, rel-4_31, rel-4_32, rel-4_33, rel-4_34, rel-4_35, rel-4_03
Changes since 1.9: +1 -1 lines
Log Message:
*** empty log message ***

File Contents

# Content
1 #!/opt/perl/bin/perl
2
3 use strict;
4
5 use AnyEvent::Impl::Perl;
6 use AnyEvent;
7 use AnyEvent::Socket;
8 use AnyEvent::Handle;
9
10 unless ($ENV{PERL_ANYEVENT_NET_TESTS}) {
11 print "1..0 # Skip PERL_ANYEVENT_NET_TESTS environment variable not set\n";
12 exit 0;
13 }
14
15 print "1..2\n";
16
17 my $cv = AnyEvent->condvar;
18
19 my $rbytes;
20
21 my $hdl;
22 my $wo = tcp_connect 'www.google.com', 80, sub {
23 my ($fh) = @_;
24
25 $hdl =
26 AnyEvent::Handle->new (
27 fh => $fh,
28 on_error => sub {
29 warn "socket error: $!";
30 $cv->broadcast;
31 },
32 on_eof => sub {
33 my ($hdl) = @_;
34
35 if ($rbytes !~ /<\/html>/i) {
36 print "not ";
37 }
38
39 print "ok 2 - received HTML page\n";
40
41 $cv->broadcast
42 }
43 );
44
45 $hdl->push_read (chunk => 10, sub {
46 my ($hdl, $data) = @_;
47
48 unless (substr ($data, 0, 4) eq 'HTTP') {
49 print "not ";
50 }
51
52 print "ok 1 - received 'HTTP'\n";
53
54 $hdl->on_read (sub {
55 my ($hdl) = @_;
56 $rbytes .= $hdl->rbuf;
57 $hdl->rbuf = '';
58 return 1;
59 });
60 });
61
62 $hdl->push_write ("GET http://www.google.com/ HTTP/1.0\015\012\015\012");
63
64 };
65
66 $cv->wait;