Annotation of embedaddon/php/ext/standard/tests/file/fgets_variation4-win32.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Test fgets() function : usage variations - seek n read
! 3: --SKIPIF--
! 4: <?php
! 5: if (substr(PHP_OS, 0, 3) != 'WIN') {
! 6: die('skip only valid for Windows');
! 7: }
! 8: ?>
! 9: --FILE--
! 10: <?php
! 11: /*
! 12: Prototype: string fgets ( resource $handle [, int $length] );
! 13: Description: Gets a line from file pointer
! 14: */
! 15:
! 16: // include the file.inc for common test funcitons
! 17: include ("file.inc");
! 18:
! 19: $file_modes = array("w+", "w+b", "w+t",
! 20: "a+", "a+b", "a+t",
! 21: "x+", "x+b", "x+t");
! 22:
! 23: $file_content_types = array("numeric", "text", "text_with_new_line", "alphanumeric");
! 24:
! 25: echo "*** Testing fgets() : usage variations ***\n";
! 26:
! 27: $filename = dirname(__FILE__)."/fgets_variation4.tmp";
! 28:
! 29: foreach($file_modes as $file_mode) {
! 30: echo "\n-- Testing fgets() with file opened using mode $file_mode --\n";
! 31:
! 32: foreach($file_content_types as $file_content_type) {
! 33: echo "-- File content type : $file_content_type --\n";
! 34:
! 35: /* create files with $file_content_type */
! 36: $file_handle = fopen($filename, $file_mode);
! 37: $data = fill_file($file_handle, $file_content_type, 50);
! 38:
! 39: if ( !$file_handle ) {
! 40: echo "Error: failed to open file $filename!";
! 41: exit();
! 42: }
! 43:
! 44: echo "-- fgets() with location set by fseek() with default length --\n";
! 45: var_dump( fseek($file_handle, 5, SEEK_SET) );
! 46: var_dump( ftell($file_handle) );
! 47: var_dump( fgets($file_handle ) );
! 48: var_dump( ftell($file_handle) ); // ensure the file pointer position
! 49: var_dump( feof($file_handle) ); // enusre if eof set
! 50:
! 51: echo "-- fgets() with location set by fseek() with length = 20 --\n";
! 52: var_dump( fseek($file_handle, 25, SEEK_SET) );
! 53: var_dump( ftell($file_handle) );
! 54: var_dump( fgets($file_handle, 20 ) ); // expected 19 chars
! 55: var_dump( ftell($file_handle) ); // ensure the file pointer position
! 56: var_dump( feof($file_handle) ); // enusre if eof set
! 57:
! 58: //close file
! 59: fclose($file_handle);
! 60:
! 61: // delete file
! 62: delete_file($filename);
! 63: } // file_content_type loop
! 64: } // file_mode loop
! 65:
! 66: echo "Done\n";
! 67: ?>
! 68: --EXPECTF--
! 69: *** Testing fgets() : usage variations ***
! 70:
! 71: -- Testing fgets() with file opened using mode w+ --
! 72: -- File content type : numeric --
! 73: -- fgets() with location set by fseek() with default length --
! 74: int(0)
! 75: int(5)
! 76: string(45) "222222222222222222222222222222222222222222222"
! 77: int(50)
! 78: bool(true)
! 79: -- fgets() with location set by fseek() with length = 20 --
! 80: int(0)
! 81: int(25)
! 82: string(19) "2222222222222222222"
! 83: int(44)
! 84: bool(false)
! 85: -- File content type : text --
! 86: -- fgets() with location set by fseek() with default length --
! 87: int(0)
! 88: int(5)
! 89: string(45) "text text text text text text text text text "
! 90: int(50)
! 91: bool(true)
! 92: -- fgets() with location set by fseek() with length = 20 --
! 93: int(0)
! 94: int(25)
! 95: string(19) "text text text text"
! 96: int(44)
! 97: bool(false)
! 98: -- File content type : text_with_new_line --
! 99: -- fgets() with location set by fseek() with default length --
! 100: int(0)
! 101: int(5)
! 102: string(13) "line of text
! 103: "
! 104: int(18)
! 105: bool(false)
! 106: -- fgets() with location set by fseek() with length = 20 --
! 107: int(0)
! 108: int(25)
! 109: string(11) "ne of text
! 110: "
! 111: int(36)
! 112: bool(false)
! 113: -- File content type : alphanumeric --
! 114: -- fgets() with location set by fseek() with default length --
! 115: int(0)
! 116: int(5)
! 117: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
! 118: int(50)
! 119: bool(true)
! 120: -- fgets() with location set by fseek() with length = 20 --
! 121: int(0)
! 122: int(25)
! 123: string(19) "ab12 ab12 ab12 ab12"
! 124: int(44)
! 125: bool(false)
! 126:
! 127: -- Testing fgets() with file opened using mode w+b --
! 128: -- File content type : numeric --
! 129: -- fgets() with location set by fseek() with default length --
! 130: int(0)
! 131: int(5)
! 132: string(45) "222222222222222222222222222222222222222222222"
! 133: int(50)
! 134: bool(true)
! 135: -- fgets() with location set by fseek() with length = 20 --
! 136: int(0)
! 137: int(25)
! 138: string(19) "2222222222222222222"
! 139: int(44)
! 140: bool(false)
! 141: -- File content type : text --
! 142: -- fgets() with location set by fseek() with default length --
! 143: int(0)
! 144: int(5)
! 145: string(45) "text text text text text text text text text "
! 146: int(50)
! 147: bool(true)
! 148: -- fgets() with location set by fseek() with length = 20 --
! 149: int(0)
! 150: int(25)
! 151: string(19) "text text text text"
! 152: int(44)
! 153: bool(false)
! 154: -- File content type : text_with_new_line --
! 155: -- fgets() with location set by fseek() with default length --
! 156: int(0)
! 157: int(5)
! 158: string(13) "line of text
! 159: "
! 160: int(18)
! 161: bool(false)
! 162: -- fgets() with location set by fseek() with length = 20 --
! 163: int(0)
! 164: int(25)
! 165: string(11) "ne of text
! 166: "
! 167: int(36)
! 168: bool(false)
! 169: -- File content type : alphanumeric --
! 170: -- fgets() with location set by fseek() with default length --
! 171: int(0)
! 172: int(5)
! 173: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
! 174: int(50)
! 175: bool(true)
! 176: -- fgets() with location set by fseek() with length = 20 --
! 177: int(0)
! 178: int(25)
! 179: string(19) "ab12 ab12 ab12 ab12"
! 180: int(44)
! 181: bool(false)
! 182:
! 183: -- Testing fgets() with file opened using mode w+t --
! 184: -- File content type : numeric --
! 185: -- fgets() with location set by fseek() with default length --
! 186: int(0)
! 187: int(5)
! 188: string(45) "222222222222222222222222222222222222222222222"
! 189: int(50)
! 190: bool(true)
! 191: -- fgets() with location set by fseek() with length = 20 --
! 192: int(0)
! 193: int(25)
! 194: string(19) "2222222222222222222"
! 195: int(44)
! 196: bool(false)
! 197: -- File content type : text --
! 198: -- fgets() with location set by fseek() with default length --
! 199: int(0)
! 200: int(5)
! 201: string(45) "text text text text text text text text text "
! 202: int(50)
! 203: bool(true)
! 204: -- fgets() with location set by fseek() with length = 20 --
! 205: int(0)
! 206: int(25)
! 207: string(19) "text text text text"
! 208: int(44)
! 209: bool(false)
! 210: -- File content type : text_with_new_line --
! 211: -- fgets() with location set by fseek() with default length --
! 212: int(0)
! 213: int(5)
! 214: string(1) "
! 215: "
! 216: int(6)
! 217: bool(false)
! 218: -- fgets() with location set by fseek() with length = 20 --
! 219: int(0)
! 220: int(25)
! 221: string(12) "ine of text
! 222: "
! 223: int(37)
! 224: bool(false)
! 225: -- File content type : alphanumeric --
! 226: -- fgets() with location set by fseek() with default length --
! 227: int(0)
! 228: int(5)
! 229: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
! 230: int(50)
! 231: bool(true)
! 232: -- fgets() with location set by fseek() with length = 20 --
! 233: int(0)
! 234: int(25)
! 235: string(19) "ab12 ab12 ab12 ab12"
! 236: int(44)
! 237: bool(false)
! 238:
! 239: -- Testing fgets() with file opened using mode a+ --
! 240: -- File content type : numeric --
! 241: -- fgets() with location set by fseek() with default length --
! 242: int(0)
! 243: int(5)
! 244: string(45) "222222222222222222222222222222222222222222222"
! 245: int(50)
! 246: bool(true)
! 247: -- fgets() with location set by fseek() with length = 20 --
! 248: int(0)
! 249: int(25)
! 250: string(19) "2222222222222222222"
! 251: int(44)
! 252: bool(false)
! 253: -- File content type : text --
! 254: -- fgets() with location set by fseek() with default length --
! 255: int(0)
! 256: int(5)
! 257: string(45) "text text text text text text text text text "
! 258: int(50)
! 259: bool(true)
! 260: -- fgets() with location set by fseek() with length = 20 --
! 261: int(0)
! 262: int(25)
! 263: string(19) "text text text text"
! 264: int(44)
! 265: bool(false)
! 266: -- File content type : text_with_new_line --
! 267: -- fgets() with location set by fseek() with default length --
! 268: int(0)
! 269: int(5)
! 270: string(13) "line of text
! 271: "
! 272: int(18)
! 273: bool(false)
! 274: -- fgets() with location set by fseek() with length = 20 --
! 275: int(0)
! 276: int(25)
! 277: string(11) "ne of text
! 278: "
! 279: int(36)
! 280: bool(false)
! 281: -- File content type : alphanumeric --
! 282: -- fgets() with location set by fseek() with default length --
! 283: int(0)
! 284: int(5)
! 285: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
! 286: int(50)
! 287: bool(true)
! 288: -- fgets() with location set by fseek() with length = 20 --
! 289: int(0)
! 290: int(25)
! 291: string(19) "ab12 ab12 ab12 ab12"
! 292: int(44)
! 293: bool(false)
! 294:
! 295: -- Testing fgets() with file opened using mode a+b --
! 296: -- File content type : numeric --
! 297: -- fgets() with location set by fseek() with default length --
! 298: int(0)
! 299: int(5)
! 300: string(45) "222222222222222222222222222222222222222222222"
! 301: int(50)
! 302: bool(true)
! 303: -- fgets() with location set by fseek() with length = 20 --
! 304: int(0)
! 305: int(25)
! 306: string(19) "2222222222222222222"
! 307: int(44)
! 308: bool(false)
! 309: -- File content type : text --
! 310: -- fgets() with location set by fseek() with default length --
! 311: int(0)
! 312: int(5)
! 313: string(45) "text text text text text text text text text "
! 314: int(50)
! 315: bool(true)
! 316: -- fgets() with location set by fseek() with length = 20 --
! 317: int(0)
! 318: int(25)
! 319: string(19) "text text text text"
! 320: int(44)
! 321: bool(false)
! 322: -- File content type : text_with_new_line --
! 323: -- fgets() with location set by fseek() with default length --
! 324: int(0)
! 325: int(5)
! 326: string(13) "line of text
! 327: "
! 328: int(18)
! 329: bool(false)
! 330: -- fgets() with location set by fseek() with length = 20 --
! 331: int(0)
! 332: int(25)
! 333: string(11) "ne of text
! 334: "
! 335: int(36)
! 336: bool(false)
! 337: -- File content type : alphanumeric --
! 338: -- fgets() with location set by fseek() with default length --
! 339: int(0)
! 340: int(5)
! 341: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
! 342: int(50)
! 343: bool(true)
! 344: -- fgets() with location set by fseek() with length = 20 --
! 345: int(0)
! 346: int(25)
! 347: string(19) "ab12 ab12 ab12 ab12"
! 348: int(44)
! 349: bool(false)
! 350:
! 351: -- Testing fgets() with file opened using mode a+t --
! 352: -- File content type : numeric --
! 353: -- fgets() with location set by fseek() with default length --
! 354: int(0)
! 355: int(5)
! 356: string(45) "222222222222222222222222222222222222222222222"
! 357: int(50)
! 358: bool(true)
! 359: -- fgets() with location set by fseek() with length = 20 --
! 360: int(0)
! 361: int(25)
! 362: string(19) "2222222222222222222"
! 363: int(44)
! 364: bool(false)
! 365: -- File content type : text --
! 366: -- fgets() with location set by fseek() with default length --
! 367: int(0)
! 368: int(5)
! 369: string(45) "text text text text text text text text text "
! 370: int(50)
! 371: bool(true)
! 372: -- fgets() with location set by fseek() with length = 20 --
! 373: int(0)
! 374: int(25)
! 375: string(19) "text text text text"
! 376: int(44)
! 377: bool(false)
! 378: -- File content type : text_with_new_line --
! 379: -- fgets() with location set by fseek() with default length --
! 380: int(0)
! 381: int(5)
! 382: string(1) "
! 383: "
! 384: int(6)
! 385: bool(false)
! 386: -- fgets() with location set by fseek() with length = 20 --
! 387: int(0)
! 388: int(25)
! 389: string(12) "ine of text
! 390: "
! 391: int(37)
! 392: bool(false)
! 393: -- File content type : alphanumeric --
! 394: -- fgets() with location set by fseek() with default length --
! 395: int(0)
! 396: int(5)
! 397: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
! 398: int(50)
! 399: bool(true)
! 400: -- fgets() with location set by fseek() with length = 20 --
! 401: int(0)
! 402: int(25)
! 403: string(19) "ab12 ab12 ab12 ab12"
! 404: int(44)
! 405: bool(false)
! 406:
! 407: -- Testing fgets() with file opened using mode x+ --
! 408: -- File content type : numeric --
! 409: -- fgets() with location set by fseek() with default length --
! 410: int(0)
! 411: int(5)
! 412: string(45) "222222222222222222222222222222222222222222222"
! 413: int(50)
! 414: bool(true)
! 415: -- fgets() with location set by fseek() with length = 20 --
! 416: int(0)
! 417: int(25)
! 418: string(19) "2222222222222222222"
! 419: int(44)
! 420: bool(false)
! 421: -- File content type : text --
! 422: -- fgets() with location set by fseek() with default length --
! 423: int(0)
! 424: int(5)
! 425: string(45) "text text text text text text text text text "
! 426: int(50)
! 427: bool(true)
! 428: -- fgets() with location set by fseek() with length = 20 --
! 429: int(0)
! 430: int(25)
! 431: string(19) "text text text text"
! 432: int(44)
! 433: bool(false)
! 434: -- File content type : text_with_new_line --
! 435: -- fgets() with location set by fseek() with default length --
! 436: int(0)
! 437: int(5)
! 438: string(13) "line of text
! 439: "
! 440: int(18)
! 441: bool(false)
! 442: -- fgets() with location set by fseek() with length = 20 --
! 443: int(0)
! 444: int(25)
! 445: string(11) "ne of text
! 446: "
! 447: int(36)
! 448: bool(false)
! 449: -- File content type : alphanumeric --
! 450: -- fgets() with location set by fseek() with default length --
! 451: int(0)
! 452: int(5)
! 453: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
! 454: int(50)
! 455: bool(true)
! 456: -- fgets() with location set by fseek() with length = 20 --
! 457: int(0)
! 458: int(25)
! 459: string(19) "ab12 ab12 ab12 ab12"
! 460: int(44)
! 461: bool(false)
! 462:
! 463: -- Testing fgets() with file opened using mode x+b --
! 464: -- File content type : numeric --
! 465: -- fgets() with location set by fseek() with default length --
! 466: int(0)
! 467: int(5)
! 468: string(45) "222222222222222222222222222222222222222222222"
! 469: int(50)
! 470: bool(true)
! 471: -- fgets() with location set by fseek() with length = 20 --
! 472: int(0)
! 473: int(25)
! 474: string(19) "2222222222222222222"
! 475: int(44)
! 476: bool(false)
! 477: -- File content type : text --
! 478: -- fgets() with location set by fseek() with default length --
! 479: int(0)
! 480: int(5)
! 481: string(45) "text text text text text text text text text "
! 482: int(50)
! 483: bool(true)
! 484: -- fgets() with location set by fseek() with length = 20 --
! 485: int(0)
! 486: int(25)
! 487: string(19) "text text text text"
! 488: int(44)
! 489: bool(false)
! 490: -- File content type : text_with_new_line --
! 491: -- fgets() with location set by fseek() with default length --
! 492: int(0)
! 493: int(5)
! 494: string(13) "line of text
! 495: "
! 496: int(18)
! 497: bool(false)
! 498: -- fgets() with location set by fseek() with length = 20 --
! 499: int(0)
! 500: int(25)
! 501: string(11) "ne of text
! 502: "
! 503: int(36)
! 504: bool(false)
! 505: -- File content type : alphanumeric --
! 506: -- fgets() with location set by fseek() with default length --
! 507: int(0)
! 508: int(5)
! 509: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
! 510: int(50)
! 511: bool(true)
! 512: -- fgets() with location set by fseek() with length = 20 --
! 513: int(0)
! 514: int(25)
! 515: string(19) "ab12 ab12 ab12 ab12"
! 516: int(44)
! 517: bool(false)
! 518:
! 519: -- Testing fgets() with file opened using mode x+t --
! 520: -- File content type : numeric --
! 521: -- fgets() with location set by fseek() with default length --
! 522: int(0)
! 523: int(5)
! 524: string(45) "222222222222222222222222222222222222222222222"
! 525: int(50)
! 526: bool(true)
! 527: -- fgets() with location set by fseek() with length = 20 --
! 528: int(0)
! 529: int(25)
! 530: string(19) "2222222222222222222"
! 531: int(44)
! 532: bool(false)
! 533: -- File content type : text --
! 534: -- fgets() with location set by fseek() with default length --
! 535: int(0)
! 536: int(5)
! 537: string(45) "text text text text text text text text text "
! 538: int(50)
! 539: bool(true)
! 540: -- fgets() with location set by fseek() with length = 20 --
! 541: int(0)
! 542: int(25)
! 543: string(19) "text text text text"
! 544: int(44)
! 545: bool(false)
! 546: -- File content type : text_with_new_line --
! 547: -- fgets() with location set by fseek() with default length --
! 548: int(0)
! 549: int(5)
! 550: string(1) "
! 551: "
! 552: int(6)
! 553: bool(false)
! 554: -- fgets() with location set by fseek() with length = 20 --
! 555: int(0)
! 556: int(25)
! 557: string(12) "ine of text
! 558: "
! 559: int(37)
! 560: bool(false)
! 561: -- File content type : alphanumeric --
! 562: -- fgets() with location set by fseek() with default length --
! 563: int(0)
! 564: int(5)
! 565: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
! 566: int(50)
! 567: bool(true)
! 568: -- fgets() with location set by fseek() with length = 20 --
! 569: int(0)
! 570: int(25)
! 571: string(19) "ab12 ab12 ab12 ab12"
! 572: int(44)
! 573: bool(false)
! 574: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>