imap_fetch_overview_variation5.phpt 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. --TEST--
  2. Test imap_fetch_overview() function : usage variations - $msg_no argument
  3. --SKIPIF--
  4. <?php
  5. require_once(dirname(__FILE__).'/skipif.inc');
  6. ?>
  7. --FILE--
  8. <?php
  9. /* Prototype : array imap_fetch_overview(resource $stream_id, int $msg_no [, int $options])
  10. * Description: Read an overview of the information in the headers
  11. * of the given message sequence
  12. * Source code: ext/imap/php_imap.c
  13. */
  14. /*
  15. * Pass different sequences/msg numbers as $msg_no argument to test behaviour
  16. * of imap_fetch_overview()
  17. */
  18. echo "*** Testing imap_fetch_overview() : usage variations ***\n";
  19. require_once(dirname(__FILE__).'/imap_include.inc');
  20. $stream_id = setup_test_mailbox('', 3, $mailbox, 'notSimple'); // set up temp mailbox with 3 msgs
  21. $sequences = array (0, 4, '4', // out of range
  22. '2', '1,3', '1, 2',
  23. '1:3'); // pass uid without setting FT_UID option
  24. foreach($sequences as $msg_no) {
  25. echo "\n-- \$msg_no is $msg_no --\n";
  26. $overview = imap_fetch_overview($stream_id, $msg_no);
  27. if (!$overview) {
  28. echo imap_last_error() . "\n";
  29. } else {
  30. foreach($overview as $ov) {
  31. echo "\n";
  32. displayOverviewFields($ov);
  33. }
  34. }
  35. }
  36. // clear error stack
  37. imap_errors();
  38. ?>
  39. ===DONE===
  40. --CLEAN--
  41. <?php
  42. require_once(dirname(__FILE__).'/clean.inc');
  43. ?>
  44. --EXPECTF--
  45. *** Testing imap_fetch_overview() : usage variations ***
  46. Create a temporary mailbox and add 3 msgs
  47. .. mailbox '{%s}%s' created
  48. -- $msg_no is 0 --
  49. Sequence out of range
  50. -- $msg_no is 4 --
  51. Sequence out of range
  52. -- $msg_no is 4 --
  53. Sequence out of range
  54. -- $msg_no is 2 --
  55. size is %d
  56. uid is %d
  57. msgno is 2
  58. recent is %d
  59. flagged is 0
  60. answered is 0
  61. deleted is 0
  62. seen is 0
  63. draft is 0
  64. udate is OK
  65. -- $msg_no is 1,3 --
  66. size is %d
  67. uid is %d
  68. msgno is 1
  69. recent is %d
  70. flagged is 0
  71. answered is 0
  72. deleted is 0
  73. seen is 0
  74. draft is 0
  75. udate is OK
  76. size is %d
  77. uid is %d
  78. msgno is 3
  79. recent is %d
  80. flagged is 0
  81. answered is 0
  82. deleted is 0
  83. seen is 0
  84. draft is 0
  85. udate is OK
  86. -- $msg_no is 1, 2 --
  87. Syntax error in sequence
  88. -- $msg_no is 1:3 --
  89. size is %d
  90. uid is %d
  91. msgno is 1
  92. recent is %d
  93. flagged is 0
  94. answered is 0
  95. deleted is 0
  96. seen is 0
  97. draft is 0
  98. udate is OK
  99. size is %d
  100. uid is %d
  101. msgno is 2
  102. recent is %d
  103. flagged is 0
  104. answered is 0
  105. deleted is 0
  106. seen is 0
  107. draft is 0
  108. udate is OK
  109. size is %d
  110. uid is %d
  111. msgno is 3
  112. recent is %d
  113. flagged is 0
  114. answered is 0
  115. deleted is 0
  116. seen is 0
  117. draft is 0
  118. udate is OK
  119. ===DONE===