Annotation of embedaddon/php/ext/standard/tests/file/fgetss_error.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test fgetss() function : error conditions
3: --FILE--
4: <?php
5: /*
6: Prototype: string fgetss ( resource $handle [, int $length [, string $allowable_tags]] );
7: Description: Gets line from file pointer and strip HTML tags
8: */
9:
10: echo "*** Testing error conditions ***\n";
11: // zero argument
12: echo "-- Testing fgetss() with zero argument --\n";
13: var_dump( fgetss() );
14:
15: // more than expected no. of args
16: echo "-- Testing fgetss() with more than expected number of arguments --\n";
17: $fp = fopen(__FILE__, "r");
18: var_dump( fgetss($fp, 100, '<p><a>', $fp) );
19:
20: // invalid length argument
21: echo "-- Testing fgetss() with invalid length arguments --\n";
22: $len = 0;
23: $allowable_tags = '<p><a>';
24: var_dump( fgetss($fp, $len, $allowable_tags) );
25: $len = -10;
26: var_dump( fgetss($fp, $len, $allowable_tags) );
27: $len = 1;
28: var_dump( fgetss($fp, $len, $allowable_tags) ); // return length - 1 always, expect false
29:
30: // test invalid arguments : non-resources
31: echo "-- Testing fgetss() 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 fgetss() 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( fgetss($invalid_args[$loop_counter - 1], 10, $allowable_tags) );
44: }
45: // fgetss() on a file handle which is already closed
46: echo "-- Testing fgetss() with closed/unset file handle --";
47: fclose($fp);
48: var_dump(fgetss($fp,10,$allowable_tags));
49:
50: // fgetss() on a file handle which is unset
51: $file_handle = fopen(__FILE__, "r");
52: unset($file_handle); //unset file handle
53: var_dump( fgetss(@$file_handle,10));
54:
55: echo "Done\n";
56: ?>
57: --EXPECTF--
58: *** Testing error conditions ***
59: -- Testing fgetss() with zero argument --
60:
61: Warning: fgetss() expects at least 1 parameter, 0 given in %s on line %d
62: bool(false)
63: -- Testing fgetss() with more than expected number of arguments --
64:
65: Warning: fgetss() expects at most 3 parameters, 4 given in %s on line %d
66: bool(false)
67: -- Testing fgetss() with invalid length arguments --
68:
69: Warning: fgetss(): Length parameter must be greater than 0 in %s on line %d
70: bool(false)
71:
72: Warning: fgetss(): Length parameter must be greater than 0 in %s on line %d
73: bool(false)
74: bool(false)
75: -- Testing fgetss() with invalid arguments --
76: -- Iteration 1 --
77:
78: Warning: fgetss() expects parameter 1 to be resource, string given in %s on line %d
79: bool(false)
80: -- Iteration 2 --
81:
82: Warning: fgetss() expects parameter 1 to be resource, integer given in %s on line %d
83: bool(false)
84: -- Iteration 3 --
85:
86: Warning: fgetss() expects parameter 1 to be resource, double given in %s on line %d
87: bool(false)
88: -- Iteration 4 --
89:
90: Warning: fgetss() expects parameter 1 to be resource, boolean given in %s on line %d
91: bool(false)
92: -- Iteration 5 --
93:
94: Warning: fgetss() expects parameter 1 to be resource, array given in %s on line %d
95: bool(false)
96: -- Iteration 6 --
97:
98: Warning: fgetss() expects parameter 1 to be resource, object given in %s on line %d
99: bool(false)
100: -- Testing fgetss() with closed/unset file handle --
101: Warning: fgetss(): 5 is not a valid stream resource in %s on line %d
102: bool(false)
103:
104: Warning: fgetss() expects parameter 1 to be resource, null given in %s on line %d
105: bool(false)
106: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>