Annotation of embedaddon/php/ext/standard/tests/file/flock_variation.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test flock() function: Variations
3: --FILE--
4: <?php
5: /*
6: Prototype: bool flock(resource $handle, int $operation [, int &$wouldblock]);
7: Description: PHP supports a portable way of locking complete files
8: in an advisory way
9: */
10:
11: echo "*** Testing flock() fun with the various operation and
12: wouldblock values ***\n";
13: $file = dirname(__FILE__)."/flock.tmp";
14: $fp = fopen($file, "w");
15:
16: /* array of operatons */
17: $operations = array(
18: LOCK_SH,
19: LOCK_EX,
20: LOCK_SH|LOCK_NB,
21: LOCK_EX|LOCK_NB,
22: LOCK_SH|LOCK_EX,
23: LOCK_UN,
24: 1,
25: 2,
26: 2.234,
27: TRUE
28: );
29:
30: /* array of wouldblocks */
31: $wouldblocks = array(
32: 0,
33: 1,
34: 2,
35: 1.234,
36: TRUE,
37: FALSE,
38: NULL,
39: array(1,2,3),
40: array(),
41: "string",
42: "",
43: /* binary input */
44: b"string",
45: b"",
46: "\0"
47: );
48:
49: $i = 0;
50: foreach($operations as $operation) {
51: echo "--- Outer iteration $i ---\n";
52: var_dump(flock($fp, $operation));
53: $j = 0;
54: foreach($wouldblocks as $wouldblock) {
55: echo "-- Inner iteration $j in $i --\n";
56: var_dump(flock($fp, $operation, $wouldblock));
57: $j++;
58: }
59: $i++;
60: }
61:
62: fclose($fp);
63: @unlink($file);
64:
65: echo "\n*** Done ***\n";
66: ?>
67: --EXPECTF--
68: *** Testing flock() fun with the various operation and
69: wouldblock values ***
70: --- Outer iteration 0 ---
71: bool(true)
72: -- Inner iteration 0 in 0 --
73: bool(true)
74: -- Inner iteration 1 in 0 --
75: bool(true)
76: -- Inner iteration 2 in 0 --
77: bool(true)
78: -- Inner iteration 3 in 0 --
79: bool(true)
80: -- Inner iteration 4 in 0 --
81: bool(true)
82: -- Inner iteration 5 in 0 --
83: bool(true)
84: -- Inner iteration 6 in 0 --
85: bool(true)
86: -- Inner iteration 7 in 0 --
87: bool(true)
88: -- Inner iteration 8 in 0 --
89: bool(true)
90: -- Inner iteration 9 in 0 --
91: bool(true)
92: -- Inner iteration 10 in 0 --
93: bool(true)
94: -- Inner iteration 11 in 0 --
95: bool(true)
96: -- Inner iteration 12 in 0 --
97: bool(true)
98: -- Inner iteration 13 in 0 --
99: bool(true)
100: --- Outer iteration 1 ---
101: bool(true)
102: -- Inner iteration 0 in 1 --
103: bool(true)
104: -- Inner iteration 1 in 1 --
105: bool(true)
106: -- Inner iteration 2 in 1 --
107: bool(true)
108: -- Inner iteration 3 in 1 --
109: bool(true)
110: -- Inner iteration 4 in 1 --
111: bool(true)
112: -- Inner iteration 5 in 1 --
113: bool(true)
114: -- Inner iteration 6 in 1 --
115: bool(true)
116: -- Inner iteration 7 in 1 --
117: bool(true)
118: -- Inner iteration 8 in 1 --
119: bool(true)
120: -- Inner iteration 9 in 1 --
121: bool(true)
122: -- Inner iteration 10 in 1 --
123: bool(true)
124: -- Inner iteration 11 in 1 --
125: bool(true)
126: -- Inner iteration 12 in 1 --
127: bool(true)
128: -- Inner iteration 13 in 1 --
129: bool(true)
130: --- Outer iteration 2 ---
131: bool(true)
132: -- Inner iteration 0 in 2 --
133: bool(true)
134: -- Inner iteration 1 in 2 --
135: bool(true)
136: -- Inner iteration 2 in 2 --
137: bool(true)
138: -- Inner iteration 3 in 2 --
139: bool(true)
140: -- Inner iteration 4 in 2 --
141: bool(true)
142: -- Inner iteration 5 in 2 --
143: bool(true)
144: -- Inner iteration 6 in 2 --
145: bool(true)
146: -- Inner iteration 7 in 2 --
147: bool(true)
148: -- Inner iteration 8 in 2 --
149: bool(true)
150: -- Inner iteration 9 in 2 --
151: bool(true)
152: -- Inner iteration 10 in 2 --
153: bool(true)
154: -- Inner iteration 11 in 2 --
155: bool(true)
156: -- Inner iteration 12 in 2 --
157: bool(true)
158: -- Inner iteration 13 in 2 --
159: bool(true)
160: --- Outer iteration 3 ---
161: bool(true)
162: -- Inner iteration 0 in 3 --
163: bool(true)
164: -- Inner iteration 1 in 3 --
165: bool(true)
166: -- Inner iteration 2 in 3 --
167: bool(true)
168: -- Inner iteration 3 in 3 --
169: bool(true)
170: -- Inner iteration 4 in 3 --
171: bool(true)
172: -- Inner iteration 5 in 3 --
173: bool(true)
174: -- Inner iteration 6 in 3 --
175: bool(true)
176: -- Inner iteration 7 in 3 --
177: bool(true)
178: -- Inner iteration 8 in 3 --
179: bool(true)
180: -- Inner iteration 9 in 3 --
181: bool(true)
182: -- Inner iteration 10 in 3 --
183: bool(true)
184: -- Inner iteration 11 in 3 --
185: bool(true)
186: -- Inner iteration 12 in 3 --
187: bool(true)
188: -- Inner iteration 13 in 3 --
189: bool(true)
190: --- Outer iteration 4 ---
191: bool(true)
192: -- Inner iteration 0 in 4 --
193: bool(true)
194: -- Inner iteration 1 in 4 --
195: bool(true)
196: -- Inner iteration 2 in 4 --
197: bool(true)
198: -- Inner iteration 3 in 4 --
199: bool(true)
200: -- Inner iteration 4 in 4 --
201: bool(true)
202: -- Inner iteration 5 in 4 --
203: bool(true)
204: -- Inner iteration 6 in 4 --
205: bool(true)
206: -- Inner iteration 7 in 4 --
207: bool(true)
208: -- Inner iteration 8 in 4 --
209: bool(true)
210: -- Inner iteration 9 in 4 --
211: bool(true)
212: -- Inner iteration 10 in 4 --
213: bool(true)
214: -- Inner iteration 11 in 4 --
215: bool(true)
216: -- Inner iteration 12 in 4 --
217: bool(true)
218: -- Inner iteration 13 in 4 --
219: bool(true)
220: --- Outer iteration 5 ---
221: bool(true)
222: -- Inner iteration 0 in 5 --
223: bool(true)
224: -- Inner iteration 1 in 5 --
225: bool(true)
226: -- Inner iteration 2 in 5 --
227: bool(true)
228: -- Inner iteration 3 in 5 --
229: bool(true)
230: -- Inner iteration 4 in 5 --
231: bool(true)
232: -- Inner iteration 5 in 5 --
233: bool(true)
234: -- Inner iteration 6 in 5 --
235: bool(true)
236: -- Inner iteration 7 in 5 --
237: bool(true)
238: -- Inner iteration 8 in 5 --
239: bool(true)
240: -- Inner iteration 9 in 5 --
241: bool(true)
242: -- Inner iteration 10 in 5 --
243: bool(true)
244: -- Inner iteration 11 in 5 --
245: bool(true)
246: -- Inner iteration 12 in 5 --
247: bool(true)
248: -- Inner iteration 13 in 5 --
249: bool(true)
250: --- Outer iteration 6 ---
251: bool(true)
252: -- Inner iteration 0 in 6 --
253: bool(true)
254: -- Inner iteration 1 in 6 --
255: bool(true)
256: -- Inner iteration 2 in 6 --
257: bool(true)
258: -- Inner iteration 3 in 6 --
259: bool(true)
260: -- Inner iteration 4 in 6 --
261: bool(true)
262: -- Inner iteration 5 in 6 --
263: bool(true)
264: -- Inner iteration 6 in 6 --
265: bool(true)
266: -- Inner iteration 7 in 6 --
267: bool(true)
268: -- Inner iteration 8 in 6 --
269: bool(true)
270: -- Inner iteration 9 in 6 --
271: bool(true)
272: -- Inner iteration 10 in 6 --
273: bool(true)
274: -- Inner iteration 11 in 6 --
275: bool(true)
276: -- Inner iteration 12 in 6 --
277: bool(true)
278: -- Inner iteration 13 in 6 --
279: bool(true)
280: --- Outer iteration 7 ---
281: bool(true)
282: -- Inner iteration 0 in 7 --
283: bool(true)
284: -- Inner iteration 1 in 7 --
285: bool(true)
286: -- Inner iteration 2 in 7 --
287: bool(true)
288: -- Inner iteration 3 in 7 --
289: bool(true)
290: -- Inner iteration 4 in 7 --
291: bool(true)
292: -- Inner iteration 5 in 7 --
293: bool(true)
294: -- Inner iteration 6 in 7 --
295: bool(true)
296: -- Inner iteration 7 in 7 --
297: bool(true)
298: -- Inner iteration 8 in 7 --
299: bool(true)
300: -- Inner iteration 9 in 7 --
301: bool(true)
302: -- Inner iteration 10 in 7 --
303: bool(true)
304: -- Inner iteration 11 in 7 --
305: bool(true)
306: -- Inner iteration 12 in 7 --
307: bool(true)
308: -- Inner iteration 13 in 7 --
309: bool(true)
310: --- Outer iteration 8 ---
311: bool(true)
312: -- Inner iteration 0 in 8 --
313: bool(true)
314: -- Inner iteration 1 in 8 --
315: bool(true)
316: -- Inner iteration 2 in 8 --
317: bool(true)
318: -- Inner iteration 3 in 8 --
319: bool(true)
320: -- Inner iteration 4 in 8 --
321: bool(true)
322: -- Inner iteration 5 in 8 --
323: bool(true)
324: -- Inner iteration 6 in 8 --
325: bool(true)
326: -- Inner iteration 7 in 8 --
327: bool(true)
328: -- Inner iteration 8 in 8 --
329: bool(true)
330: -- Inner iteration 9 in 8 --
331: bool(true)
332: -- Inner iteration 10 in 8 --
333: bool(true)
334: -- Inner iteration 11 in 8 --
335: bool(true)
336: -- Inner iteration 12 in 8 --
337: bool(true)
338: -- Inner iteration 13 in 8 --
339: bool(true)
340: --- Outer iteration 9 ---
341: bool(true)
342: -- Inner iteration 0 in 9 --
343: bool(true)
344: -- Inner iteration 1 in 9 --
345: bool(true)
346: -- Inner iteration 2 in 9 --
347: bool(true)
348: -- Inner iteration 3 in 9 --
349: bool(true)
350: -- Inner iteration 4 in 9 --
351: bool(true)
352: -- Inner iteration 5 in 9 --
353: bool(true)
354: -- Inner iteration 6 in 9 --
355: bool(true)
356: -- Inner iteration 7 in 9 --
357: bool(true)
358: -- Inner iteration 8 in 9 --
359: bool(true)
360: -- Inner iteration 9 in 9 --
361: bool(true)
362: -- Inner iteration 10 in 9 --
363: bool(true)
364: -- Inner iteration 11 in 9 --
365: bool(true)
366: -- Inner iteration 12 in 9 --
367: bool(true)
368: -- Inner iteration 13 in 9 --
369: bool(true)
370:
371: *** Done ***
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>