ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/Coro/t/19_handle.t
Revision: 1.2
Committed: Tue Jul 28 02:04:21 2009 UTC (14 years, 10 months ago) by root
Content type: application/x-troff
Branch: MAIN
CVS Tags: rel-6_512, rel-6_513, rel-6_511, rel-6_09, rel-6_514, rel-6_0, rel-5_23, rel-5_24, rel-5_25, rel-6_5, rel-6_32, rel-6_33, rel-6_31, rel-6_36, rel-6_37, rel-5_162, rel-5_2, rel-6_38, rel-6_39, rel-6_10, rel-6_51, rel-6_52, rel-6_53, rel-6_54, rel-6_55, rel-6_56, rel-6_57, rel-6_03, rel-6_02, rel-5_22, rel-5_17, rel-5_37, rel-5_36, rel-6_23, rel-6_08, rel-6_07, rel-6_06, rel-6_05, rel-6_04, rel-6_29, rel-6_28, rel-6_01, rel-6_43, rel-6_42, rel-6_41, rel-6_47, rel-6_46, rel-6_45, rel-6_44, rel-6_49, rel-6_48, rel-5_371, rel-5_372, HEAD
Changes since 1.1: +9 -0 lines
Log Message:
5.162

File Contents

# Content
1 BEGIN {
2 unless (exists $SIG{USR1}) {
3 print <<EOF;
4 1..0 # SKIP Broken perl detected, skipping tests.
5 EOF
6 exit 0;
7 }
8 }
9
10 $|=1;
11 print "1..4\n";
12
13 # note: the fourth test falls into an infinite loop in older versions of Coro
14
15 use AnyEvent::Util; ();
16
17 use Coro;
18 use Coro::Handle;
19
20 my @sep = ("\n", "e", undef, "");
21 my @ex = (
22 "one\n:two\n:\n:three\n:\n:\n:four\n:\n:\n:five\n:six\n:seven:",
23 "one:\ntwo\n\nthre:e:\n\n\nfour\n\n\nfive:\nsix\nse:ve:n:",
24 "one\ntwo\n\nthree\n\n\nfour\n\n\nfive\nsix\nseven:",
25 "one\ntwo\n\n:three\n\n:four\n\n:five\nsix\nseven:",
26 );
27
28 for my $c (0..3) {
29 my ($R, $W) = AnyEvent::Util::portable_pipe
30 or die "error creating pipe pair: $!";
31
32 $R = unblock $R;
33 $W = unblock $W;
34
35 $W->autoflush(1);
36 async {
37 $W->print("one\ntwo\n\nthree\n\n\nfour\n\n\nfive\nsix\nseven");
38 $W->close;
39 }
40
41 my $p;
42 while (defined(my $i = $R->readline($sep[$c]))) {
43 $p .= $i . ":";
44 }
45
46 $ex[$c] eq $p or
47 print "not ";
48 print "ok " . (1 + $c) . "\n";
49 }