Annotation of embedaddon/php/ext/sysvmsg/tests/005.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: sysvmsg functions on non-existing queue
3: --SKIPIF--
4: <?php if (!extension_loaded("sysvmsg")) die("skip sysvmsg extension is not available")?>
5: --FILE--
6: <?php
7:
8: $tests = array(null, 'foo');
9:
10: foreach ($tests as $q) {
11:
12: if ($q === null) {
13: do {
14: $id = ftok(__FILE__, chr(mt_rand(0, 255)));
15: } while (msg_queue_exists($id));
16:
17: $q = msg_get_queue($id) or die("Failed to create queue");
18: msg_remove_queue($q) or die("Failed to close queue");
19: }
20:
21: echo "Using '$q' as queue resource:\n";
22:
23: $errno = 0;
24:
25: var_dump(msg_set_queue($q, array('msg_qbytes' => 1)));
26:
27: var_dump(msg_stat_queue($q));
28:
29: var_dump(msg_receive($q, 0, $null, 1, $msg, true, 0, $errno));
30: var_dump($errno != 0);
31: // again, but triggering an E_WARNING
32: var_dump(msg_receive($q, 0, $null, 0, $msg));
33:
34: var_dump(msg_send($q, 1, 'foo', true, true, $errno));
35: var_dump($errno != 0);
36: }
37:
38: echo "Done\n";
39: ?>
40: --EXPECTF--
41: Using 'Resource id #4' as queue resource:
42: bool(false)
43: bool(false)
44: bool(false)
45: bool(true)
46:
47: Warning: msg_receive(): maximum size of the message has to be greater than zero in %s on line %d
48: bool(false)
49:
50: Warning: msg_send(): msgsnd failed: Invalid argument in %s on line %d
51: bool(false)
52: bool(true)
53: Using 'foo' as queue resource:
54:
55: Warning: msg_set_queue() expects parameter 1 to be resource, string given in %s on line %d
56: bool(false)
57:
58: Warning: msg_stat_queue() expects parameter 1 to be resource, string given in %s on line %d
59: bool(false)
60:
61: Warning: msg_receive() expects parameter 1 to be resource, string given in %s on line %d
62: bool(false)
63: bool(false)
64:
65: Warning: msg_receive() expects parameter 1 to be resource, string given in %s on line %d
66: bool(false)
67:
68: Warning: msg_send() expects parameter 1 to be resource, string given in %s on line %d
69: bool(false)
70: bool(false)
71: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>