ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/AnyEvent/t/68_poe_07_io.t
Revision: 1.1
Committed: Wed Jul 8 04:49:18 2009 UTC (14 years, 11 months ago) by root
Content type: application/x-troff
Branch: MAIN
CVS Tags: rel-4_81
Log Message:
*** empty log message ***

File Contents

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