Annotation of embedaddon/php/ext/standard/tests/file/copy_variation4.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test copy() function: usage variations - destination file names(empty string, nulls & bools)
3: --SKIPIF--
4: <?php
5: if(substr(PHP_OS, 0, 3) == "AIX")
6: die("skip Do not run on AIX");
7: ?>
8: --FILE--
9: <?php
10: /* Prototype: bool copy ( string $source, string $dest );
11: Description: Makes a copy of the file source to dest.
12: Returns TRUE on success or FALSE on failure.
13: */
14:
15: /* Test copy() function: In creation of destination file names with empty string, nulls & bools
16: and checking the existence and size of destination files
17: */
18:
19: echo "*** Test copy() function: destination file names with empty string, nulls & bools ***\n";
20: $file_path = dirname(__FILE__);
21: $src_file_name = $file_path."/copy_variation4.tmp";
22: $file_handle = fopen($src_file_name, "wb");
23: fwrite( $file_handle, str_repeat(b"Hello2World...\n", 100) );
24: fclose($file_handle);
25:
26: /* array of destination file names */
27: $dest_files = array(
28:
29: /* File names containing(or with) nulls */
30: "",
31: NULL,
32: "\0",
33: FALSE,
34: false,
35: TRUE,
36: true
37: );
38:
39: echo "Size of the source file before copy operation => ";
40: var_dump( filesize($src_file_name) );
41: clearstatcache();
42:
43: echo "\n-- Now applying copy() on source file to create copies --";
44: $count = 1;
45: foreach($dest_files as $dest_file) {
46: echo "\n-- Iteration $count --\n";
47: $dest_file_name = $file_path."/$dest_file";
48:
49: echo "Existence of destination file before copy => ";
50: var_dump( file_exists($dest_file_name) );
51:
52: echo "Copy operation => ";
53: var_dump( copy($src_file_name, $dest_file_name) );
54:
55: echo "Existence of destination file => ";
56: var_dump( file_exists($dest_file_name) );
57:
58: echo "Destination file name => ";
59: print($dest_file_name);
60: echo "\n";
61:
62: echo "Size of source file => ";
63: var_dump( filesize($src_file_name) );
64: clearstatcache();
65:
66: echo "Size of destination file => ";
67: var_dump( filesize($dest_file_name) );
68: clearstatcache();
69:
70: unlink($dest_file_name);
71:
72: $count++;
73:
74: }
75:
76: echo "*** Done ***\n";
77: ?>
78:
79: --CLEAN--
80: <?php
81: unlink(dirname(__FILE__)."/copy_variation4.tmp");
82: ?>
83:
84: --EXPECTF--
85: *** Test copy() function: destination file names with empty string, nulls & bools ***
86: Size of the source file before copy operation => int(1500)
87:
88: -- Now applying copy() on source file to create copies --
89: -- Iteration 1 --
90: Existence of destination file before copy => bool(true)
91: Copy operation =>
92: Warning: copy(): The second argument to copy() function cannot be a directory in %s on line %d
93: bool(false)
94: Existence of destination file => bool(true)
95: Destination file name => %s/
96: Size of source file => int(1500)
97: Size of destination file => int(%d)
98:
99: Warning: unlink(%s): %s
100:
101: -- Iteration 2 --
102: Existence of destination file before copy => bool(true)
103: Copy operation =>
104: Warning: copy(): The second argument to copy() function cannot be a directory in %s on line %d
105: bool(false)
106: Existence of destination file => bool(true)
107: Destination file name => %s/
108: Size of source file => int(1500)
109: Size of destination file => int(%d)
110:
111: Warning: unlink(%s): %s
112:
113: -- Iteration 3 --
114: Existence of destination file before copy => bool(false)
115: Copy operation => bool(false)
116: Existence of destination file => bool(false)
117: Destination file name => %s/
118: Size of source file => int(1500)
119: Size of destination file => bool(false)
120:
121: -- Iteration 4 --
122: Existence of destination file before copy => bool(true)
123: Copy operation =>
124: Warning: copy(): The second argument to copy() function cannot be a directory in %s on line %d
125: bool(false)
126: Existence of destination file => bool(true)
127: Destination file name => %s/
128: Size of source file => int(1500)
129: Size of destination file => int(%d)
130:
131: Warning: unlink(%s): %s
132:
133: -- Iteration 5 --
134: Existence of destination file before copy => bool(true)
135: Copy operation =>
136: Warning: copy(): The second argument to copy() function cannot be a directory in %s on line %d
137: bool(false)
138: Existence of destination file => bool(true)
139: Destination file name => %s/
140: Size of source file => int(1500)
141: Size of destination file => int(%d)
142:
143: Warning: unlink(%s): %s
144:
145: -- Iteration 6 --
146: Existence of destination file before copy => bool(false)
147: Copy operation => bool(true)
148: Existence of destination file => bool(true)
149: Destination file name => %s/1
150: Size of source file => int(1500)
151: Size of destination file => int(1500)
152:
153: -- Iteration 7 --
154: Existence of destination file before copy => bool(false)
155: Copy operation => bool(true)
156: Existence of destination file => bool(true)
157: Destination file name => %s/1
158: Size of source file => int(1500)
159: Size of destination file => int(1500)
160: *** Done ***
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>