123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- --TEST--
- Test imap_fetch_overview() function : usage variations - multipart message
- --SKIPIF--
- <?php
- require_once(dirname(__FILE__).'/skipif.inc');
- ?>
- --FILE--
- <?php
- /* Prototype : array imap_fetch_overview(resource $stream_id, int $msg_no [, int $options])
- * Description: Read an overview of the information in the headers of the given message sequence
- * Source code: ext/imap/php_imap.c
- */
- /*
- * Pass a multipart message to imap_fetch_overview() to test the contents of returned array
- */
- echo "*** Testing imap_fetch_overview() : usage variations ***\n";
- require_once(dirname(__FILE__).'/imap_include.inc');
- $stream_id = setup_test_mailbox('', 0, $mailbox); // setup temp mailbox
- create_multipart_message($stream_id, $mailbox);
- // refresh msg numbers
- imap_check($stream_id);
- $msg_no = 1;
- $a = imap_fetch_overview($stream_id, $msg_no);
- echo "\n--> Object #1\n";
- displayOverviewFields($a[0]);
- /**
- * Create a multipart message with subparts
- *
- * @param resource $imap_stream
- * @param string $mailbox
- */
- function create_multipart_message($imap_stream, $mailbox) {
- global $users, $domain;
- $envelope["from"]= "foo@anywhere.com";
- $envelope["to"] = "$users[0]@$domain";
- $envelope["subject"] = "Test msg 1";
- $part1["type"] = TYPEMULTIPART;
- $part1["subtype"] = "mixed";
-
- $part2["type"] = TYPETEXT;
- $part2["subtype"] = "plain";
- $part2["description"] = "imap_mail_compose() function";
- $part2["contents.data"] = "message 1:xxxxxxxxxxxxxxxxxxxxxxxxxx";
-
- $part3["type"] = TYPETEXT;
- $part3["subtype"] = "plain";
- $part3["description"] = "Example";
- $part3["contents.data"] = "message 2:yyyyyyyyyyyyyyyyyyyyyyyyyy";
-
- $file_handle = fopen(__FILE__, 'r+');
- $file_size = 1;
- $part4["type"] = TYPEAPPLICATION;
- $part4["encoding"] = ENCBASE64;
- $part4["subtype"] = "octet-stream";
- $part4["description"] = 'Test';
- $part4['disposition.type'] = 'attachment';
- $part4['disposition'] = array ('filename' => 'Test');
- $part4['type.parameters'] = array('name' => 'Test');
- $part4["contents.data"] = base64_encode(fread($file_handle, 1));
-
- $body[1] = $part1;
- $body[2] = $part2;
- $body[3] = $part3;
- $body[4] = $part4;
-
- $msg = imap_mail_compose($envelope, $body);
- if (imap_append($imap_stream, $mailbox, $msg) === false) {
- echo imap_last_error() . "\n";
- echo "TEST FAILED : could not append new message to mailbox '$mailbox'\n";
- exit;
- }
- }
- ?>
- ===DONE===
- --CLEAN--
- <?php
- require_once(dirname(__FILE__).'/clean.inc');
- ?>
- --EXPECTF--
- *** Testing imap_fetch_overview() : usage variations ***
- Create a temporary mailbox and add 0 msgs
- .. mailbox '{%s}%s' created
- --> Object #1
- size is %d
- uid is %d
- msgno is 1
- recent is %d
- flagged is 0
- answered is 0
- deleted is 0
- seen is 0
- draft is 0
- udate is OK
- ===DONE===
|