Annotation of embedaddon/php/ext/imap/tests/imap_close_variation4.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test imap_close() function : usage variations - different ints as $options arg
3: --SKIPIF--
4: <?php
5: require_once(dirname(__FILE__).'/skipif.inc');
6: ?>
7: --FILE--
8: <?php
9: /* Prototype : bool imap_close(resource $stream_id [, int $options])
10: * Description: Close an IMAP stream
11: * Source code: ext/imap/php_imap.c
12: */
13:
14: /*
15: * Pass different integers as $options arg to imap_close() to test which are
16: * recognised as CL_EXPUNGE option
17: */
18:
19: echo "*** Testing imap_close() : usage variations ***\n";
20:
21: require_once(dirname(__FILE__).'/imap_include.inc');
22:
23: $inputs = array (0, 3.2768e4, -32768, PHP_INT_MAX, -PHP_INT_MAX);
24:
25: $stream_id = setup_test_mailbox('', 3, $mailbox); // set up temp mailbox with 3 messages
26:
27: // loop through each element of $inputs to check the behavior of imap_close()
28: $iterator = 1;
29: foreach($inputs as $input) {
30:
31: // mark added messages for deletion
32: for ($i = 1; $i < 4; $i++) {
33: imap_delete($stream_id, $i);
34: }
35: echo "\n-- Iteration $iterator --\n";
36: var_dump( $check = imap_close($stream_id, $input) );
37:
38: // check that imap_close was successful, if not call imap_close and explicitly set CL_EXPUNGE
39: if(false === $check) {
40: imap_close($stream_id, CL_EXPUNGE);
41: } else {
42: // if imap_close was successful test whether CL_EXPUNGE was set by doing a message count
43: $imap_stream = imap_open($mailbox, $username, $password);
44: $num_msg = imap_num_msg($imap_stream);
45: if ($num_msg != 0) {
46: echo "CL_EXPUNGE was not set, $num_msg msgs in mailbox\n";
47: } else {
48: echo "CL_EXPUNGE was set\n";
49: }
50: // call imap_close with CL_EXPUNGE explicitly set in case mailbox not empty
51: imap_close($imap_stream, CL_EXPUNGE);
52: }
53: $iterator++;
54:
55: // get $stream_id for next iteration
56: $stream_id = imap_open($mailbox, $username, $password);
57: populate_mailbox($stream_id, $mailbox, 3);
58:
59: };
60: ?>
61: ===DONE===
62: --CLEAN--
63: <?php
64: require_once(dirname(__FILE__).'/clean.inc');
65: ?>
66: --EXPECTF--
67: *** Testing imap_close() : usage variations ***
68: Create a temporary mailbox and add 3 msgs
69: .. mailbox '{%s}%s' created
70:
71: -- Iteration 1 --
72: bool(true)
73: CL_EXPUNGE was not set, 3 msgs in mailbox
74:
75: -- Iteration 2 --
76: bool(true)
77: CL_EXPUNGE was set
78:
79: -- Iteration 3 --
80:
81: Warning: imap_close(): invalid value for the flags parameter in %s on line %d
82: bool(false)
83:
84: -- Iteration 4 --
85:
86: Warning: imap_close(): invalid value for the flags parameter in %s on line %d
87: bool(false)
88:
89: -- Iteration 5 --
90:
91: Warning: imap_close(): invalid value for the flags parameter in %s on line %d
92: bool(false)
93: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>