Annotation of embedaddon/php/ext/standard/tests/file/unlink_variation8-win32.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test unlink() function : variation: various valid and invalid paths
3: --CREDITS--
4: Dave Kelsey <d_kelsey@uk.ibm.com>
5: --SKIPIF--
6: <?php
7: if (substr(PHP_OS, 0, 3) != 'WIN') {
8: die('skip.. only for Windows');
9: }
10: ?>
11: --FILE--
12: <?php
13: /* Prototype : bool unlink(string filename[, context context])
14: * Description: Delete a file
15: * Source code: ext/standard/file.c
16: * Alias to functions:
17: */
18:
19: echo "*** Testing unlink() : variation ***\n";
20:
21: $workDir = "unlinkVar8.tmp";
22: $tmpFile = "file.tmp";
23: chdir(__DIR__);
24: mkdir($workDir);
25: $cwd = __DIR__;
26:
27: $files = array(
28: // relative
29: $workDir.'/'.$tmpFile,
30: './'.$workDir.'/'.$tmpFile,
31: $workDir.'/../'.$workDir.'/'.$tmpFile,
32:
33: // relative bad path
34: $workDir.'/../BADDIR/'.$tmpFile,
35: 'BADDIR/'.$tmpFile,
36:
37: //absolute
38: $cwd.'/'.$workDir.'/'.$tmpFile,
39: $cwd.'/./'.$workDir.'/'.$tmpFile,
40: $cwd.'/'.$workDir.'/../'.$workDir.'/'.$tmpFile,
41:
42: //absolute bad path
43: $cwd.'/BADDIR/'.$tmpFile,
44:
45: //trailing separators
46: $workDir.'/'.$tmpFile.'/',
47: $cwd.'/'.$workDir.'/'.$tmpFile.'/',
48:
49: // multiple separators
50: $workDir.'//'.$tmpFile,
51: $cwd.'//'.$workDir.'//'.$tmpFile,
52:
53: );
54:
55:
56: foreach($files as $fileToUnlink) {
57: test_realfile($workDir.'/'.$tmpFile, $fileToUnlink);
58: }
59:
60: rmdir($workDir);
61:
62: function test_realfile($file, $tounlink) {
63: touch($file);
64: echo "-- removing $tounlink --\n";
65: $res = unlink($tounlink);
66: if ($res === true) {
67: if (file_exists($tounlink) === false) {
68: echo "file removed\n";
69: }
70: else {
71: echo "FAILED: file not removed\n";
72: }
73: }
74: else {
75: unlink($file);
76: }
77: }
78: ?>
79: ===DONE===
80: --EXPECTF--
81: *** Testing unlink() : variation ***
82: -- removing unlinkVar8.tmp/file.tmp --
83: file removed
84: -- removing ./unlinkVar8.tmp/file.tmp --
85: file removed
86: -- removing unlinkVar8.tmp/../unlinkVar8.tmp/file.tmp --
87: file removed
88: -- removing unlinkVar8.tmp/../BADDIR/file.tmp --
89:
90: Warning: unlink(unlinkVar8.tmp/../BADDIR/file.tmp): No such file or directory in %s on line %d
91: -- removing BADDIR/file.tmp --
92:
93: Warning: unlink(BADDIR/file.tmp): No such file or directory in %s on line %d
94: -- removing %s/unlinkVar8.tmp/file.tmp --
95: file removed
96: -- removing %s/./unlinkVar8.tmp/file.tmp --
97: file removed
98: -- removing %s/unlinkVar8.tmp/../unlinkVar8.tmp/file.tmp --
99: file removed
100: -- removing %s/BADDIR/file.tmp --
101:
102: Warning: unlink(%s/BADDIR/file.tmp): No such file or directory in %s on line %d
103: -- removing unlinkVar8.tmp/file.tmp/ --
104:
105: Warning: unlink(unlinkVar8.tmp/file.tmp/): Invalid argument in %s on line %d
106: -- removing %s/unlinkVar8.tmp/file.tmp/ --
107:
108: Warning: unlink(%s/unlinkVar8.tmp/file.tmp/): Invalid argument in %s on line %d
109: -- removing unlinkVar8.tmp//file.tmp --
110: file removed
111: -- removing %s//unlinkVar8.tmp//file.tmp --
112: file removed
113: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>