Annotation of embedaddon/php/ext/iconv/tests/iconv_mime_decode_headers_variation3.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Test iconv_mime_encode() function : usage variations - Pass different data types to charset arg
! 3: --SKIPIF--
! 4: <?php
! 5: extension_loaded('iconv') or die('skip');
! 6: function_exists('iconv_mime_decode_headers') or die("skip iconv_mime_decode_headers() is not available in this build");
! 7: ?>
! 8: --FILE--
! 9: <?php
! 10: /* Prototype : array iconv_mime_decode_headers(string headers [, int mode, string charset])
! 11: * Description: Decodes multiple mime header fields
! 12: * Source code: ext/iconv/iconv.c
! 13: */
! 14:
! 15: /*
! 16: * Pass different data types to $str argument to see how iconv_mime_decode_headers() behaves
! 17: */
! 18:
! 19: echo "*** Testing iconv_mime_decode_headers() : usage variations ***\n";
! 20:
! 21: // Some of the parameters actually passed to charset will request to use
! 22: // a default charset determined by the platform. In order for this test to
! 23: // run on both linux and windows, the subject will have to be ascii only.
! 24: // Initialise function arguments not being substituted
! 25: $headers = <<<EOF
! 26: Subject: =?UTF-8?B?QSBTYW1wbGUgVGVzdA==?=
! 27: To: example@example.com
! 28: Date: Thu, 1 Jan 1970 00:00:00 +0000
! 29: Message-Id: <example@example.com>
! 30: Received: from localhost (localhost [127.0.0.1]) by localhost
! 31: with SMTP id example for <example@example.com>;
! 32: Thu, 1 Jan 1970 00:00:00 +0000 (UTC)
! 33: (envelope-from example-return-0000-example=example.com@example.com)
! 34: Received: (qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000
! 35:
! 36: EOF;
! 37:
! 38: $mode = ICONV_MIME_DECODE_CONTINUE_ON_ERROR;
! 39: $charset = 'UTF-8';
! 40:
! 41:
! 42: //get an unset variable
! 43: $unset_var = 10;
! 44: unset ($unset_var);
! 45:
! 46: // get a class
! 47: class classA
! 48: {
! 49: public function __toString() {
! 50: return "Class A object";
! 51: }
! 52: }
! 53:
! 54: // heredoc string
! 55: $heredoc = <<<EOT
! 56: hello world
! 57: EOT;
! 58:
! 59: // get a resource variable
! 60: $fp = fopen(__FILE__, "r");
! 61:
! 62: // unexpected values to be passed to $str argument
! 63: $inputs = array(
! 64:
! 65: // int data
! 66: /*1*/ 0,
! 67: 1,
! 68: 12345,
! 69: -2345,
! 70:
! 71: // float data
! 72: /*5*/ 10.5,
! 73: -10.5,
! 74: 12.3456789000e10,
! 75: 12.3456789000E-10,
! 76: .5,
! 77:
! 78: // null data
! 79: /*10*/ NULL,
! 80: null,
! 81:
! 82: // boolean data
! 83: /*12*/ true,
! 84: false,
! 85: TRUE,
! 86: FALSE,
! 87:
! 88: // empty data
! 89: /*16*/ "",
! 90: '',
! 91:
! 92: // string data
! 93: /*18*/ "string",
! 94: 'string',
! 95: $heredoc,
! 96:
! 97: // object data
! 98: /*21*/ new classA(),
! 99:
! 100: // undefined data
! 101: /*22*/ @$undefined_var,
! 102:
! 103: // unset data
! 104: /*23*/ @$unset_var,
! 105:
! 106: // resource variable
! 107: /*24*/ $fp
! 108: );
! 109:
! 110: // loop through each element of $inputs to check the behavior of iconv_mime_decode_headers()
! 111: $iterator = 1;
! 112: foreach($inputs as $input) {
! 113: echo "\n-- Iteration $iterator --\n";
! 114: var_dump( iconv_mime_decode_headers($headers, $input, $charset));
! 115: $iterator++;
! 116: };
! 117:
! 118: fclose($fp);
! 119:
! 120: echo "Done";
! 121: ?>
! 122: --EXPECTF--
! 123: *** Testing iconv_mime_decode_headers() : usage variations ***
! 124:
! 125: -- Iteration 1 --
! 126: array(5) {
! 127: ["Subject"]=>
! 128: string(13) "A Sample Test"
! 129: ["To"]=>
! 130: string(19) "example@example.com"
! 131: ["Date"]=>
! 132: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 133: ["Message-Id"]=>
! 134: string(21) "<example@example.com>"
! 135: ["Received"]=>
! 136: array(2) {
! 137: [0]=>
! 138: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 139: [1]=>
! 140: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 141: }
! 142: }
! 143:
! 144: -- Iteration 2 --
! 145: array(5) {
! 146: ["Subject"]=>
! 147: string(13) "A Sample Test"
! 148: ["To"]=>
! 149: string(19) "example@example.com"
! 150: ["Date"]=>
! 151: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 152: ["Message-Id"]=>
! 153: string(21) "<example@example.com>"
! 154: ["Received"]=>
! 155: array(2) {
! 156: [0]=>
! 157: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 158: [1]=>
! 159: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 160: }
! 161: }
! 162:
! 163: -- Iteration 3 --
! 164: array(5) {
! 165: ["Subject"]=>
! 166: string(13) "A Sample Test"
! 167: ["To"]=>
! 168: string(19) "example@example.com"
! 169: ["Date"]=>
! 170: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 171: ["Message-Id"]=>
! 172: string(21) "<example@example.com>"
! 173: ["Received"]=>
! 174: array(2) {
! 175: [0]=>
! 176: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 177: [1]=>
! 178: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 179: }
! 180: }
! 181:
! 182: -- Iteration 4 --
! 183: array(5) {
! 184: ["Subject"]=>
! 185: string(13) "A Sample Test"
! 186: ["To"]=>
! 187: string(19) "example@example.com"
! 188: ["Date"]=>
! 189: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 190: ["Message-Id"]=>
! 191: string(21) "<example@example.com>"
! 192: ["Received"]=>
! 193: array(2) {
! 194: [0]=>
! 195: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 196: [1]=>
! 197: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 198: }
! 199: }
! 200:
! 201: -- Iteration 5 --
! 202: array(5) {
! 203: ["Subject"]=>
! 204: string(13) "A Sample Test"
! 205: ["To"]=>
! 206: string(19) "example@example.com"
! 207: ["Date"]=>
! 208: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 209: ["Message-Id"]=>
! 210: string(21) "<example@example.com>"
! 211: ["Received"]=>
! 212: array(2) {
! 213: [0]=>
! 214: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 215: [1]=>
! 216: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 217: }
! 218: }
! 219:
! 220: -- Iteration 6 --
! 221: array(5) {
! 222: ["Subject"]=>
! 223: string(13) "A Sample Test"
! 224: ["To"]=>
! 225: string(19) "example@example.com"
! 226: ["Date"]=>
! 227: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 228: ["Message-Id"]=>
! 229: string(21) "<example@example.com>"
! 230: ["Received"]=>
! 231: array(2) {
! 232: [0]=>
! 233: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 234: [1]=>
! 235: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 236: }
! 237: }
! 238:
! 239: -- Iteration 7 --
! 240: array(5) {
! 241: ["Subject"]=>
! 242: string(13) "A Sample Test"
! 243: ["To"]=>
! 244: string(19) "example@example.com"
! 245: ["Date"]=>
! 246: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 247: ["Message-Id"]=>
! 248: string(21) "<example@example.com>"
! 249: ["Received"]=>
! 250: array(2) {
! 251: [0]=>
! 252: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 253: [1]=>
! 254: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 255: }
! 256: }
! 257:
! 258: -- Iteration 8 --
! 259: array(5) {
! 260: ["Subject"]=>
! 261: string(13) "A Sample Test"
! 262: ["To"]=>
! 263: string(19) "example@example.com"
! 264: ["Date"]=>
! 265: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 266: ["Message-Id"]=>
! 267: string(21) "<example@example.com>"
! 268: ["Received"]=>
! 269: array(2) {
! 270: [0]=>
! 271: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 272: [1]=>
! 273: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 274: }
! 275: }
! 276:
! 277: -- Iteration 9 --
! 278: array(5) {
! 279: ["Subject"]=>
! 280: string(13) "A Sample Test"
! 281: ["To"]=>
! 282: string(19) "example@example.com"
! 283: ["Date"]=>
! 284: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 285: ["Message-Id"]=>
! 286: string(21) "<example@example.com>"
! 287: ["Received"]=>
! 288: array(2) {
! 289: [0]=>
! 290: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 291: [1]=>
! 292: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 293: }
! 294: }
! 295:
! 296: -- Iteration 10 --
! 297: array(5) {
! 298: ["Subject"]=>
! 299: string(13) "A Sample Test"
! 300: ["To"]=>
! 301: string(19) "example@example.com"
! 302: ["Date"]=>
! 303: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 304: ["Message-Id"]=>
! 305: string(21) "<example@example.com>"
! 306: ["Received"]=>
! 307: array(2) {
! 308: [0]=>
! 309: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 310: [1]=>
! 311: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 312: }
! 313: }
! 314:
! 315: -- Iteration 11 --
! 316: array(5) {
! 317: ["Subject"]=>
! 318: string(13) "A Sample Test"
! 319: ["To"]=>
! 320: string(19) "example@example.com"
! 321: ["Date"]=>
! 322: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 323: ["Message-Id"]=>
! 324: string(21) "<example@example.com>"
! 325: ["Received"]=>
! 326: array(2) {
! 327: [0]=>
! 328: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 329: [1]=>
! 330: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 331: }
! 332: }
! 333:
! 334: -- Iteration 12 --
! 335: array(5) {
! 336: ["Subject"]=>
! 337: string(13) "A Sample Test"
! 338: ["To"]=>
! 339: string(19) "example@example.com"
! 340: ["Date"]=>
! 341: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 342: ["Message-Id"]=>
! 343: string(21) "<example@example.com>"
! 344: ["Received"]=>
! 345: array(2) {
! 346: [0]=>
! 347: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 348: [1]=>
! 349: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 350: }
! 351: }
! 352:
! 353: -- Iteration 13 --
! 354: array(5) {
! 355: ["Subject"]=>
! 356: string(13) "A Sample Test"
! 357: ["To"]=>
! 358: string(19) "example@example.com"
! 359: ["Date"]=>
! 360: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 361: ["Message-Id"]=>
! 362: string(21) "<example@example.com>"
! 363: ["Received"]=>
! 364: array(2) {
! 365: [0]=>
! 366: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 367: [1]=>
! 368: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 369: }
! 370: }
! 371:
! 372: -- Iteration 14 --
! 373: array(5) {
! 374: ["Subject"]=>
! 375: string(13) "A Sample Test"
! 376: ["To"]=>
! 377: string(19) "example@example.com"
! 378: ["Date"]=>
! 379: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 380: ["Message-Id"]=>
! 381: string(21) "<example@example.com>"
! 382: ["Received"]=>
! 383: array(2) {
! 384: [0]=>
! 385: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 386: [1]=>
! 387: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 388: }
! 389: }
! 390:
! 391: -- Iteration 15 --
! 392: array(5) {
! 393: ["Subject"]=>
! 394: string(13) "A Sample Test"
! 395: ["To"]=>
! 396: string(19) "example@example.com"
! 397: ["Date"]=>
! 398: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 399: ["Message-Id"]=>
! 400: string(21) "<example@example.com>"
! 401: ["Received"]=>
! 402: array(2) {
! 403: [0]=>
! 404: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 405: [1]=>
! 406: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 407: }
! 408: }
! 409:
! 410: -- Iteration 16 --
! 411:
! 412: Warning: iconv_mime_decode_headers() expects parameter 2 to be long, string given in %s on line %d
! 413: bool(false)
! 414:
! 415: -- Iteration 17 --
! 416:
! 417: Warning: iconv_mime_decode_headers() expects parameter 2 to be long, string given in %s on line %d
! 418: bool(false)
! 419:
! 420: -- Iteration 18 --
! 421:
! 422: Warning: iconv_mime_decode_headers() expects parameter 2 to be long, string given in %s on line %d
! 423: bool(false)
! 424:
! 425: -- Iteration 19 --
! 426:
! 427: Warning: iconv_mime_decode_headers() expects parameter 2 to be long, string given in %s on line %d
! 428: bool(false)
! 429:
! 430: -- Iteration 20 --
! 431:
! 432: Warning: iconv_mime_decode_headers() expects parameter 2 to be long, string given in %s on line %d
! 433: bool(false)
! 434:
! 435: -- Iteration 21 --
! 436:
! 437: Warning: iconv_mime_decode_headers() expects parameter 2 to be long, object given in %s on line %d
! 438: bool(false)
! 439:
! 440: -- Iteration 22 --
! 441: array(5) {
! 442: ["Subject"]=>
! 443: string(13) "A Sample Test"
! 444: ["To"]=>
! 445: string(19) "example@example.com"
! 446: ["Date"]=>
! 447: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 448: ["Message-Id"]=>
! 449: string(21) "<example@example.com>"
! 450: ["Received"]=>
! 451: array(2) {
! 452: [0]=>
! 453: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 454: [1]=>
! 455: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 456: }
! 457: }
! 458:
! 459: -- Iteration 23 --
! 460: array(5) {
! 461: ["Subject"]=>
! 462: string(13) "A Sample Test"
! 463: ["To"]=>
! 464: string(19) "example@example.com"
! 465: ["Date"]=>
! 466: string(30) "Thu, 1 Jan 1970 00:00:00 +0000"
! 467: ["Message-Id"]=>
! 468: string(21) "<example@example.com>"
! 469: ["Received"]=>
! 470: array(2) {
! 471: [0]=>
! 472: string(204) "from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <example@example.com>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from example-return-0000-example=example.com@example.com)"
! 473: [1]=>
! 474: string(57) "(qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000"
! 475: }
! 476: }
! 477:
! 478: -- Iteration 24 --
! 479:
! 480: Warning: iconv_mime_decode_headers() expects parameter 2 to be long, resource given in %s on line %d
! 481: bool(false)
! 482: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>