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

1.1     ! misho       1: --TEST--
        !             2: Test fread() function : error conditions
        !             3: --FILE--
        !             4: <?php
        !             5: /*
        !             6:  Prototype: string fread ( resource $handle [, int $length] );
        !             7:  Description: reads up to length bytes from the file pointer referenced by handle. 
        !             8:    Reading stops when up to length bytes have been read, EOF (end of file) is 
        !             9:    reached, (for network streams) when a packet becomes available, or (after 
        !            10:    opening userspace stream) when 8192 bytes have been read whichever comes first.
        !            11: */
        !            12: 
        !            13: echo "*** Testing error conditions ***\n";
        !            14: $filename = __FILE__; 
        !            15: $file_handle = fopen($filename, "r");
        !            16: 
        !            17: // zero argument
        !            18: echo "-- Testing fread() with zero argument --\n";
        !            19: var_dump( fread() );
        !            20: 
        !            21: // more than expected no. of args
        !            22: echo "-- Testing fread() with more than expected number of arguments --\n";
        !            23: var_dump( fread($file_handle, 10, $file_handle) );
        !            24: 
        !            25: // invalid length argument 
        !            26: echo "-- Testing fread() with invalid length arguments --\n";
        !            27: $len = 0; 
        !            28: var_dump( fread($file_handle, $len) );
        !            29: $len = -10;
        !            30: var_dump( fread($file_handle, $len) );
        !            31: 
        !            32: // test invalid arguments : non-resources
        !            33: echo "-- Testing fread() with invalid arguments --\n";
        !            34: $invalid_args = array (
        !            35:   "string",
        !            36:   10,
        !            37:   10.5,
        !            38:   true,
        !            39:   array(1,2,3),
        !            40:   new stdclass,
        !            41: );
        !            42: /* loop to test fread() with different invalid type of args */
        !            43: for($loop_counter = 1; $loop_counter <= count($invalid_args); $loop_counter++) {
        !            44:   echo "-- Iteration $loop_counter --\n";
        !            45:   var_dump( fread($invalid_args[$loop_counter - 1], 10) );
        !            46: }
        !            47: 
        !            48: // fwrite() on a file handle which is already closed
        !            49: echo "-- Testing fwrite() with closed/unset file handle --\n";
        !            50: fclose($file_handle);
        !            51: var_dump( fread($file_handle,$file_content_type) );
        !            52: 
        !            53: // fwrite on a file handle which is unset
        !            54: $fp = fopen($filename, "r");
        !            55: unset($fp); //unset file handle
        !            56: var_dump( fread(@$fp,10) );
        !            57: var_dump( fclose(@$fp) );
        !            58: 
        !            59: echo "Done\n";
        !            60: --EXPECTF--
        !            61: *** Testing error conditions ***
        !            62: -- Testing fread() with zero argument --
        !            63: 
        !            64: Warning: fread() expects exactly 2 parameters, 0 given in %s on line %d
        !            65: bool(false)
        !            66: -- Testing fread() with more than expected number of arguments --
        !            67: 
        !            68: Warning: fread() expects exactly 2 parameters, 3 given in %s on line %d
        !            69: bool(false)
        !            70: -- Testing fread() with invalid length arguments --
        !            71: 
        !            72: Warning: fread(): Length parameter must be greater than 0 in %s on line %d
        !            73: bool(false)
        !            74: 
        !            75: Warning: fread(): Length parameter must be greater than 0 in %s on line %d
        !            76: bool(false)
        !            77: -- Testing fread() with invalid arguments --
        !            78: -- Iteration 1 --
        !            79: 
        !            80: Warning: fread() expects parameter 1 to be resource, string given in %s on line %d
        !            81: bool(false)
        !            82: -- Iteration 2 --
        !            83: 
        !            84: Warning: fread() expects parameter 1 to be resource, integer given in %s on line %d
        !            85: bool(false)
        !            86: -- Iteration 3 --
        !            87: 
        !            88: Warning: fread() expects parameter 1 to be resource, double given in %s on line %d
        !            89: bool(false)
        !            90: -- Iteration 4 --
        !            91: 
        !            92: Warning: fread() expects parameter 1 to be resource, boolean given in %s on line %d
        !            93: bool(false)
        !            94: -- Iteration 5 --
        !            95: 
        !            96: Warning: fread() expects parameter 1 to be resource, array given in %s on line %d
        !            97: bool(false)
        !            98: -- Iteration 6 --
        !            99: 
        !           100: Warning: fread() expects parameter 1 to be resource, object given in %s on line %d
        !           101: bool(false)
        !           102: -- Testing fwrite() with closed/unset file handle --
        !           103: 
        !           104: Notice: Undefined variable: file_content_type in %s on line %d
        !           105: 
        !           106: Warning: fread(): %d is not a valid stream resource in %s on line %d
        !           107: bool(false)
        !           108: 
        !           109: Warning: fread() expects parameter 1 to be resource, null given in %s on line %d
        !           110: bool(false)
        !           111: 
        !           112: Warning: fclose() expects parameter 1 to be resource, null given in %s on line %d
        !           113: bool(false)
        !           114: Done

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