Annotation of embedaddon/php/ext/standard/tests/file/fgets_error.phpt, revision 1.1.1.1

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

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