1 | $|=1; |
|
|
2 | $^W=0; |
|
|
3 | BEGIN { print "1..18\n" } |
|
|
4 | |
|
|
5 | use AnyEvent; |
1 | use AnyEvent; |
6 | use AnyEvent::Util; |
2 | use AnyEvent::Util; |
7 | use AnyEvent::Impl::POE; |
3 | |
|
|
4 | BEGIN { $ENV{PERL_ANYEVENT_LOOP_TESTS} or ((print qq{1..0 # SKIP PERL_ANYEVENT_LOOP_TESTS not true\n}), exit 0) } |
|
|
5 | BEGIN { eval q{use AnyEvent::Impl::POE;1} or ((print qq{1..0 # SKIP AnyEvent::Impl::POE not loadable\n}), exit 0) } |
|
|
6 | $^W = 0; |
|
|
7 | |
|
|
8 | |
|
|
9 | $| = 1; print "1..18\n"; |
8 | |
10 | |
9 | print "ok 1\n"; |
11 | print "ok 1\n"; |
10 | |
12 | |
11 | my ($a, $b) = AnyEvent::Util::portable_socketpair; |
13 | my ($a, $b) = AnyEvent::Util::portable_socketpair; |
12 | |
14 | |
… | |
… | |
25 | }); |
27 | }); |
26 | }); |
28 | }); |
27 | |
29 | |
28 | print "ok 3\n"; |
30 | print "ok 3\n"; |
29 | |
31 | |
30 | { my $cv = AnyEvent->condvar; $t = AnyEvent->timer (after => 0.05, cb => sub { $cv->send }); $cv->wait } |
32 | { my $cv = AnyEvent->condvar; $t = AnyEvent->timer (after => 0.05, cb => sub { $cv->send }); $cv->recv } |
31 | |
33 | |
32 | print "ok 4\n"; |
34 | print "ok 4\n"; |
33 | |
35 | |
34 | $wa = AnyEvent->io (fh => $a, poll => "w", cb => sub { |
36 | $wa = AnyEvent->io (fh => $a, poll => "w", cb => sub { |
35 | syswrite $a, "0"; |
37 | syswrite $a, "0"; |
… | |
… | |
41 | sysread $a, my $buf, 1; |
43 | sysread $a, my $buf, 1; |
42 | print "ok 9\n"; |
44 | print "ok 9\n"; |
43 | $cv->send; |
45 | $cv->send; |
44 | }); |
46 | }); |
45 | |
47 | |
46 | $cv = AnyEvent->condvar; $cv->wait; |
48 | $cv = AnyEvent->condvar; $cv->recv; |
47 | |
49 | |
48 | print "ok 10\n"; |
50 | print "ok 10\n"; |
49 | |
51 | |
50 | $rb = AnyEvent->io (fh => fileno $b, poll => "r", cb => sub { |
52 | $rb = AnyEvent->io (fh => fileno $b, poll => "r", cb => sub { |
51 | print "ok 14\n"; |
53 | print "ok 14\n"; |
… | |
… | |
58 | }); |
60 | }); |
59 | }); |
61 | }); |
60 | |
62 | |
61 | print "ok 11\n"; |
63 | print "ok 11\n"; |
62 | |
64 | |
63 | { my $cv = AnyEvent->condvar; $t = AnyEvent->timer (after => 0.05, cb => sub { $cv->send }); $cv->wait } |
65 | { my $cv = AnyEvent->condvar; $t = AnyEvent->timer (after => 0.05, cb => sub { $cv->send }); $cv->recv } |
64 | |
66 | |
65 | print "ok 12\n"; |
67 | print "ok 12\n"; |
66 | |
68 | |
67 | $wa = AnyEvent->io (fh => fileno $a, poll => "w", cb => sub { |
69 | $wa = AnyEvent->io (fh => fileno $a, poll => "w", cb => sub { |
68 | syswrite $a, "0"; |
70 | syswrite $a, "0"; |
… | |
… | |
74 | sysread $a, my $buf, 1; |
76 | sysread $a, my $buf, 1; |
75 | print "ok 17\n"; |
77 | print "ok 17\n"; |
76 | $cv->send; |
78 | $cv->send; |
77 | }); |
79 | }); |
78 | |
80 | |
79 | $cv = AnyEvent->condvar; $cv->wait; |
81 | $cv = AnyEvent->condvar; $cv->recv; |
80 | |
82 | |
81 | print "ok 18\n"; |
83 | print "ok 18\n"; |
82 | |
84 | |