ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/AnyEvent/t/68_poe_07_io.t
Revision: 1.6
Committed: Tue Aug 2 20:02:47 2011 UTC (12 years, 10 months ago) by root
Content type: application/x-troff
Branch: MAIN
Changes since 1.5: +4 -4 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1 use AnyEvent;
2     use AnyEvent::Util;
3 root 1.5 BEGIN { eval q{use AnyEvent::Impl::POE;1} or ((print qq{1..0 # SKIP AnyEvent::Impl::POE not loadable
4     }), exit 0) } $^W = 0;
5 root 1.3
6     $| = 1; print "1..18\n";
7 root 1.1
8     print "ok 1\n";
9    
10     my ($a, $b) = AnyEvent::Util::portable_socketpair;
11    
12     print $a && $b ? "" : "not ", "ok 2 # $a,$b\n";
13    
14     my ($cv, $t, $ra, $wa, $rb, $wb);
15    
16     $rb = AnyEvent->io (fh => $b, poll => "r", cb => sub {
17     print "ok 6\n";
18     sysread $b, my $buf, 1;
19     print "ok 7\n";
20     $wb = AnyEvent->io (fh => $b, poll => "w", cb => sub {
21     print "ok 8\n";
22     undef $wb;
23     syswrite $b, "1";
24     });
25     });
26    
27     print "ok 3\n";
28    
29 root 1.6 { my $cv = AnyEvent->condvar; $t = AnyEvent->timer (after => 0.05, cb => sub { $cv->send }); $cv->recv }
30 root 1.1
31     print "ok 4\n";
32    
33     $wa = AnyEvent->io (fh => $a, poll => "w", cb => sub {
34     syswrite $a, "0";
35     undef $wa;
36     print "ok 5\n";
37     });
38    
39     $ra = AnyEvent->io (fh => $a, poll => "r", cb => sub {
40     sysread $a, my $buf, 1;
41     print "ok 9\n";
42     $cv->send;
43     });
44    
45 root 1.6 $cv = AnyEvent->condvar; $cv->recv;
46 root 1.1
47     print "ok 10\n";
48    
49     $rb = AnyEvent->io (fh => fileno $b, poll => "r", cb => sub {
50     print "ok 14\n";
51     sysread $b, my $buf, 1;
52     print "ok 15\n";
53     $wb = AnyEvent->io (fh => fileno $b, poll => "w", cb => sub {
54     print "ok 16\n";
55     undef $wb;
56     syswrite $b, "1";
57     });
58     });
59    
60     print "ok 11\n";
61    
62 root 1.6 { my $cv = AnyEvent->condvar; $t = AnyEvent->timer (after => 0.05, cb => sub { $cv->send }); $cv->recv }
63 root 1.1
64     print "ok 12\n";
65    
66     $wa = AnyEvent->io (fh => fileno $a, poll => "w", cb => sub {
67     syswrite $a, "0";
68     undef $wa;
69     print "ok 13\n";
70     });
71    
72     $ra = AnyEvent->io (fh => $a, poll => "r", cb => sub {
73     sysread $a, my $buf, 1;
74     print "ok 17\n";
75     $cv->send;
76     });
77    
78 root 1.6 $cv = AnyEvent->condvar; $cv->recv;
79 root 1.1
80     print "ok 18\n";
81