Annotation of embedaddon/php/ext/standard/tests/file/fseek_ftell_rewind_error1.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Test fseek(), ftell() & rewind() functions : error conditions - fseek()
! 3: --FILE--
! 4: <?php
! 5:
! 6: /* Prototype: int fseek ( resource $handle, int $offset [, int $whence] );
! 7: Description: Seeks on a file pointer
! 8:
! 9: Prototype: bool rewind ( resource $handle );
! 10: Description: Rewind the position of a file pointer
! 11:
! 12: Prototype: int ftell ( resource $handle );
! 13: Description: Tells file pointer read/write position
! 14: */
! 15:
! 16: echo "*** Testing fseek() : error conditions ***\n";
! 17: // zero argument
! 18: echo "-- Testing fseek() with zero argument --\n";
! 19: var_dump( fseek() );
! 20:
! 21: // unexpected no. of args
! 22: echo "-- Testing fseek() with unexpected number of arguments --\n";
! 23: $fp = fopen(__FILE__, "r");
! 24: var_dump( fseek($fp) );
! 25: var_dump( fseek($fp, 10, $fp,10) );
! 26:
! 27: // test invalid arguments : non-resources
! 28: echo "-- Testing fseek() with invalid arguments --\n";
! 29: $invalid_args = array (
! 30: "string",
! 31: 10,
! 32: 10.5,
! 33: true,
! 34: array(1,2,3),
! 35: new stdclass
! 36: );
! 37: /* loop to test fseek() with different invalid type of args */
! 38: for($loop_counter = 1; $loop_counter <= count($invalid_args); $loop_counter++) {
! 39: echo "-- Iteration $loop_counter --\n";
! 40: var_dump( fseek($invalid_args[$loop_counter - 1], 10) );
! 41: }
! 42:
! 43: // fseek() on a file handle which is already closed
! 44: echo "-- Testing fseek() with closed/unset file handle --";
! 45: fclose($fp);
! 46: var_dump(fseek($fp,10));
! 47:
! 48: // fseek() on a file handle which is unset
! 49: $file_handle = fopen(__FILE__, "r");
! 50: unset($file_handle); //unset file handle
! 51: var_dump( fseek(@$file_handle,10));
! 52:
! 53: echo "Done\n";
! 54: ?>
! 55: --EXPECTF--
! 56: *** Testing fseek() : error conditions ***
! 57: -- Testing fseek() with zero argument --
! 58:
! 59: Warning: fseek() expects at least 2 parameters, 0 given in %s on line %d
! 60: bool(false)
! 61: -- Testing fseek() with unexpected number of arguments --
! 62:
! 63: Warning: fseek() expects at least 2 parameters, 1 given in %s on line %d
! 64: bool(false)
! 65:
! 66: Warning: fseek() expects at most 3 parameters, 4 given in %s on line %d
! 67: bool(false)
! 68: -- Testing fseek() with invalid arguments --
! 69: -- Iteration 1 --
! 70:
! 71: Warning: fseek() expects parameter 1 to be resource, string given in %s on line %d
! 72: bool(false)
! 73: -- Iteration 2 --
! 74:
! 75: Warning: fseek() expects parameter 1 to be resource, integer given in %s on line %d
! 76: bool(false)
! 77: -- Iteration 3 --
! 78:
! 79: Warning: fseek() expects parameter 1 to be resource, double given in %s on line %d
! 80: bool(false)
! 81: -- Iteration 4 --
! 82:
! 83: Warning: fseek() expects parameter 1 to be resource, boolean given in %s on line %d
! 84: bool(false)
! 85: -- Iteration 5 --
! 86:
! 87: Warning: fseek() expects parameter 1 to be resource, array given in %s on line %d
! 88: bool(false)
! 89: -- Iteration 6 --
! 90:
! 91: Warning: fseek() expects parameter 1 to be resource, object given in %s on line %d
! 92: bool(false)
! 93: -- Testing fseek() with closed/unset file handle --
! 94: Warning: fseek(): %d is not a valid stream resource in %s on line %d
! 95: bool(false)
! 96:
! 97: Warning: fseek() expects parameter 1 to be resource, null given in %s on line %d
! 98: bool(false)
! 99: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>