Annotation of embedaddon/php/ext/standard/tests/file/fgets_variation5.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Test fgets() function : usage variations - read beyond filesize
        !             3: --FILE--
        !             4: <?php
        !             5: /*
        !             6:  Prototype: string fgets ( resource $handle [, int $length] );
        !             7:  Description: Gets a line from file pointer
        !             8: */
        !             9: 
        !            10: // include the file.inc for common test funcitons
        !            11: include ("file.inc");
        !            12: 
        !            13: $file_modes = array("w+", "w+b", "w+t",
        !            14:                     "a+", "a+b", "a+t",
        !            15:                     "x+", "x+b", "x+t"); 
        !            16: 
        !            17: $file_content_types = array("numeric", "text", "text_with_new_line", "alphanumeric");
        !            18: 
        !            19: echo "*** Testing fgets() : usage variations ***\n";
        !            20: 
        !            21: $filename = dirname(__FILE__)."/fgets_variation5.tmp";
        !            22: 
        !            23: foreach($file_modes as $file_mode) {
        !            24:   echo "\n-- Testing fgets() with file opened using mode $file_mode --\n";
        !            25: 
        !            26:   foreach($file_content_types as $file_content_type) {
        !            27:     echo "-- File content type : $file_content_type --\n";
        !            28: 
        !            29:     /* create files with $file_content_type */
        !            30:     $file_handle = fopen($filename, $file_mode);
        !            31:     $data = fill_file($file_handle, $file_content_type, 50);
        !            32: 
        !            33:     if ( !$file_handle ) {
        !            34:       echo "Error: failed to open file $filename!";
        !            35:       exit();
        !            36:     }
        !            37: 
        !            38:     /* read with length beyong file size */
        !            39:     echo "-- fgets() with length > filesize --\n";
        !            40:     rewind($file_handle);
        !            41: 
        !            42:     var_dump( ftell($file_handle) );
        !            43:     var_dump( fgets($file_handle, 50 + 23) ); // expected: 50
        !            44:     var_dump( ftell($file_handle) ); // ensure the file pointer position
        !            45:     var_dump( feof($file_handle) );  // enusre if eof set
        !            46: 
        !            47:     //close file
        !            48:     fclose($file_handle);
        !            49: 
        !            50:     // delete file
        !            51:     delete_file($filename);
        !            52:   } // file_content_type loop
        !            53: } // file_mode loop
        !            54: 
        !            55: echo "Done\n";
        !            56: ?>
        !            57: --EXPECTF--
        !            58: *** Testing fgets() : usage variations ***
        !            59: 
        !            60: -- Testing fgets() with file opened using mode w+ --
        !            61: -- File content type : numeric --
        !            62: -- fgets() with length > filesize --
        !            63: int(0)
        !            64: string(50) "22222222222222222222222222222222222222222222222222"
        !            65: int(50)
        !            66: bool(true)
        !            67: -- File content type : text --
        !            68: -- fgets() with length > filesize --
        !            69: int(0)
        !            70: string(50) "text text text text text text text text text text "
        !            71: int(50)
        !            72: bool(true)
        !            73: -- File content type : text_with_new_line --
        !            74: -- fgets() with length > filesize --
        !            75: int(0)
        !            76: string(5) "line
        !            77: "
        !            78: int(5)
        !            79: bool(false)
        !            80: -- File content type : alphanumeric --
        !            81: -- fgets() with length > filesize --
        !            82: int(0)
        !            83: string(50) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
        !            84: int(50)
        !            85: bool(true)
        !            86: 
        !            87: -- Testing fgets() with file opened using mode w+b --
        !            88: -- File content type : numeric --
        !            89: -- fgets() with length > filesize --
        !            90: int(0)
        !            91: string(50) "22222222222222222222222222222222222222222222222222"
        !            92: int(50)
        !            93: bool(true)
        !            94: -- File content type : text --
        !            95: -- fgets() with length > filesize --
        !            96: int(0)
        !            97: string(50) "text text text text text text text text text text "
        !            98: int(50)
        !            99: bool(true)
        !           100: -- File content type : text_with_new_line --
        !           101: -- fgets() with length > filesize --
        !           102: int(0)
        !           103: string(5) "line
        !           104: "
        !           105: int(5)
        !           106: bool(false)
        !           107: -- File content type : alphanumeric --
        !           108: -- fgets() with length > filesize --
        !           109: int(0)
        !           110: string(50) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
        !           111: int(50)
        !           112: bool(true)
        !           113: 
        !           114: -- Testing fgets() with file opened using mode w+t --
        !           115: -- File content type : numeric --
        !           116: -- fgets() with length > filesize --
        !           117: int(0)
        !           118: string(50) "22222222222222222222222222222222222222222222222222"
        !           119: int(50)
        !           120: bool(true)
        !           121: -- File content type : text --
        !           122: -- fgets() with length > filesize --
        !           123: int(0)
        !           124: string(50) "text text text text text text text text text text "
        !           125: int(50)
        !           126: bool(true)
        !           127: -- File content type : text_with_new_line --
        !           128: -- fgets() with length > filesize --
        !           129: int(0)
        !           130: string(5) "line
        !           131: "
        !           132: int(5)
        !           133: bool(false)
        !           134: -- File content type : alphanumeric --
        !           135: -- fgets() with length > filesize --
        !           136: int(0)
        !           137: string(50) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
        !           138: int(50)
        !           139: bool(true)
        !           140: 
        !           141: -- Testing fgets() with file opened using mode a+ --
        !           142: -- File content type : numeric --
        !           143: -- fgets() with length > filesize --
        !           144: int(0)
        !           145: string(50) "22222222222222222222222222222222222222222222222222"
        !           146: int(50)
        !           147: bool(true)
        !           148: -- File content type : text --
        !           149: -- fgets() with length > filesize --
        !           150: int(0)
        !           151: string(50) "text text text text text text text text text text "
        !           152: int(50)
        !           153: bool(true)
        !           154: -- File content type : text_with_new_line --
        !           155: -- fgets() with length > filesize --
        !           156: int(0)
        !           157: string(5) "line
        !           158: "
        !           159: int(5)
        !           160: bool(false)
        !           161: -- File content type : alphanumeric --
        !           162: -- fgets() with length > filesize --
        !           163: int(0)
        !           164: string(50) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
        !           165: int(50)
        !           166: bool(true)
        !           167: 
        !           168: -- Testing fgets() with file opened using mode a+b --
        !           169: -- File content type : numeric --
        !           170: -- fgets() with length > filesize --
        !           171: int(0)
        !           172: string(50) "22222222222222222222222222222222222222222222222222"
        !           173: int(50)
        !           174: bool(true)
        !           175: -- File content type : text --
        !           176: -- fgets() with length > filesize --
        !           177: int(0)
        !           178: string(50) "text text text text text text text text text text "
        !           179: int(50)
        !           180: bool(true)
        !           181: -- File content type : text_with_new_line --
        !           182: -- fgets() with length > filesize --
        !           183: int(0)
        !           184: string(5) "line
        !           185: "
        !           186: int(5)
        !           187: bool(false)
        !           188: -- File content type : alphanumeric --
        !           189: -- fgets() with length > filesize --
        !           190: int(0)
        !           191: string(50) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
        !           192: int(50)
        !           193: bool(true)
        !           194: 
        !           195: -- Testing fgets() with file opened using mode a+t --
        !           196: -- File content type : numeric --
        !           197: -- fgets() with length > filesize --
        !           198: int(0)
        !           199: string(50) "22222222222222222222222222222222222222222222222222"
        !           200: int(50)
        !           201: bool(true)
        !           202: -- File content type : text --
        !           203: -- fgets() with length > filesize --
        !           204: int(0)
        !           205: string(50) "text text text text text text text text text text "
        !           206: int(50)
        !           207: bool(true)
        !           208: -- File content type : text_with_new_line --
        !           209: -- fgets() with length > filesize --
        !           210: int(0)
        !           211: string(5) "line
        !           212: "
        !           213: int(5)
        !           214: bool(false)
        !           215: -- File content type : alphanumeric --
        !           216: -- fgets() with length > filesize --
        !           217: int(0)
        !           218: string(50) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
        !           219: int(50)
        !           220: bool(true)
        !           221: 
        !           222: -- Testing fgets() with file opened using mode x+ --
        !           223: -- File content type : numeric --
        !           224: -- fgets() with length > filesize --
        !           225: int(0)
        !           226: string(50) "22222222222222222222222222222222222222222222222222"
        !           227: int(50)
        !           228: bool(true)
        !           229: -- File content type : text --
        !           230: -- fgets() with length > filesize --
        !           231: int(0)
        !           232: string(50) "text text text text text text text text text text "
        !           233: int(50)
        !           234: bool(true)
        !           235: -- File content type : text_with_new_line --
        !           236: -- fgets() with length > filesize --
        !           237: int(0)
        !           238: string(5) "line
        !           239: "
        !           240: int(5)
        !           241: bool(false)
        !           242: -- File content type : alphanumeric --
        !           243: -- fgets() with length > filesize --
        !           244: int(0)
        !           245: string(50) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
        !           246: int(50)
        !           247: bool(true)
        !           248: 
        !           249: -- Testing fgets() with file opened using mode x+b --
        !           250: -- File content type : numeric --
        !           251: -- fgets() with length > filesize --
        !           252: int(0)
        !           253: string(50) "22222222222222222222222222222222222222222222222222"
        !           254: int(50)
        !           255: bool(true)
        !           256: -- File content type : text --
        !           257: -- fgets() with length > filesize --
        !           258: int(0)
        !           259: string(50) "text text text text text text text text text text "
        !           260: int(50)
        !           261: bool(true)
        !           262: -- File content type : text_with_new_line --
        !           263: -- fgets() with length > filesize --
        !           264: int(0)
        !           265: string(5) "line
        !           266: "
        !           267: int(5)
        !           268: bool(false)
        !           269: -- File content type : alphanumeric --
        !           270: -- fgets() with length > filesize --
        !           271: int(0)
        !           272: string(50) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
        !           273: int(50)
        !           274: bool(true)
        !           275: 
        !           276: -- Testing fgets() with file opened using mode x+t --
        !           277: -- File content type : numeric --
        !           278: -- fgets() with length > filesize --
        !           279: int(0)
        !           280: string(50) "22222222222222222222222222222222222222222222222222"
        !           281: int(50)
        !           282: bool(true)
        !           283: -- File content type : text --
        !           284: -- fgets() with length > filesize --
        !           285: int(0)
        !           286: string(50) "text text text text text text text text text text "
        !           287: int(50)
        !           288: bool(true)
        !           289: -- File content type : text_with_new_line --
        !           290: -- fgets() with length > filesize --
        !           291: int(0)
        !           292: string(5) "line
        !           293: "
        !           294: int(5)
        !           295: bool(false)
        !           296: -- File content type : alphanumeric --
        !           297: -- fgets() with length > filesize --
        !           298: int(0)
        !           299: string(50) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
        !           300: int(50)
        !           301: bool(true)
        !           302: Done

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>