pq\Event::NOTICE
[m6w6/ext-pq] / tests / async002.phpt
1 --TEST--
2 async reset
3 --SKIPIF--
4 <?php include "_skipif.inc"; ?>
5 --FILE--
6 <?php
7 echo "Test\n";
8
9 include "_setup.inc";
10
11 $c = new pq\Connection(PQ_DSN, true);
12
13 function complete($c) {
14 $s = array($c->status);
15 echo "W";
16 $w = array($c->socket);
17 $r = $e = null;
18 stream_select($r, $w, $e, null);
19 while (true) {
20 $s[] = $c->status;
21 echo "P";
22 switch ($c->poll()) {
23 case pq\Connection::POLLING_READING:
24 echo "R";
25 $w = $e = null;
26 $r = array($c->socket);
27 stream_select($r, $w, $e, NULL);
28 break;
29 case pq\Connection::POLLING_WRITING:
30 echo "W";
31 $w = array($c->socket);
32 $r = $e = null;
33 stream_select($r, $w, $e, null);
34 break;
35 case pq\Connection::POLLING_FAILED:
36 echo "F";
37 break 2;
38 case pq\Connection::POLLING_OK:
39 echo "S";
40 break 2;
41 }
42 }
43 printf("\n%s\n", implode(",", $s));
44 }
45
46 complete($c);
47
48 if ($c->status == pq\Connection::OK) {
49 $c->resetAsync();
50 complete($c);
51 }
52 ?>
53 DONE
54 --EXPECTREGEX--
55 Test
56 (WP(RP)*)+S
57 3(,\d+),+4
58 (WP(RP)*)+S
59 3(,\d+),+4
60 DONE