1 | #!/opt/perl/bin/perl |
1 | #!/opt/perl/bin/perl |
|
|
2 | |
2 | use strict; |
3 | use strict; |
3 | use Test::More tests => 2; |
4 | use Test::More; |
|
|
5 | use AnyEvent::Impl::Perl; |
4 | use AnyEvent; |
6 | use AnyEvent; |
5 | use AnyEvent::Socket; |
7 | use AnyEvent::Socket; |
|
|
8 | |
|
|
9 | unless ($ENV{PERL_ANYEVENT_NET_TESTS}) { |
|
|
10 | plan skip_all => "PERL_ANYEVENT_NET_TESTS environment variable not set"; |
|
|
11 | exit 0; |
|
|
12 | } |
|
|
13 | |
|
|
14 | plan tests => 2; |
6 | |
15 | |
7 | my $cv = AnyEvent->condvar; |
16 | my $cv = AnyEvent->condvar; |
8 | |
17 | |
9 | my $fbytes; |
18 | my $fbytes; |
10 | my $rbytes; |
19 | my $rbytes; |
11 | |
20 | |
12 | my $ae_sock = |
21 | my $ae_sock = |
13 | AnyEvent::Socket->new ( |
22 | AnyEvent::Socket->new ( |
14 | PeerAddr => "www.google.de:80", |
23 | PeerAddr => "www.google.com:80", |
15 | on_eof => sub { $cv->broadcast }, |
24 | on_eof => sub { $cv->broadcast }, |
16 | on_error => sub { |
25 | on_error => sub { |
17 | my ($ae_sock) = @_; |
26 | my ($ae_sock) = @_; |
18 | diag "error: $!"; |
27 | diag "error: $!"; |
19 | $cv->broadcast |
28 | $cv->broadcast |
20 | }, |
29 | }, |
21 | on_connect => sub { |
30 | on_connect => sub { |
22 | my ($ae_sock, $error) = @_; |
31 | my ($ae_sock, $error) = @_; |
23 | if ($error) { diag ("connect error: $!"); return } |
32 | if ($error) { diag ("connect error: $!"); $cv->broadcast; return } |
24 | |
33 | |
25 | $ae_sock->read (10, sub { |
34 | $ae_sock->read (10, sub { |
26 | my ($ae_sock, $data) = @_; |
35 | my ($ae_sock, $data) = @_; |
27 | $fbytes = $data; |
36 | $fbytes = $data; |
28 | |
37 | |