]> granicus.if.org Git - php/commitdiff
- update/fix/skip/add for rename tests
authorPierre Joye <pajoye@php.net>
Wed, 27 Jan 2010 11:23:43 +0000 (11:23 +0000)
committerPierre Joye <pajoye@php.net>
Wed, 27 Jan 2010 11:23:43 +0000 (11:23 +0000)
ext/standard/tests/file/rename_variation11-win32.phpt
ext/standard/tests/file/rename_variation12-win32.phpt [new file with mode: 0644]
ext/standard/tests/file/rename_variation12.phpt
ext/standard/tests/file/rename_variation13.phpt
ext/standard/tests/file/rename_variation3-win32.phpt
ext/standard/tests/file/rename_variation6-win32.phpt
ext/standard/tests/file/rename_variation8-win32.phpt [new file with mode: 0644]
ext/standard/tests/file/rename_variation8.phpt
ext/standard/tests/file/rename_variation9.phpt

index d17b0d283c7ce4689da41aac980a8db778760a12..c13a09a95137ef18227eebcfbed6cfecf015f9ca 100644 (file)
@@ -92,12 +92,12 @@ bool(true)
 
 -- Iteration 5 --
 
-Warning: rename(%s\renameVar11\renameVar11Sub\..\\\renameVar11Sub\\..\\..\renameVar11Sub\renameMe.tmp,%s\renameVar11\renameVar11Sub\..\\\renameVar11Sub\\..\\..\renameVar11Sub\IwasRenamed.tmp): No such file or directory in %s on line %d
+Warning: rename(%s\renameVar11\renameVar11Sub\..\\\renameVar11Sub\\..\\..\renameVar11Sub\renameMe.tmp,%s\renameVar11\renameVar11Sub\..\\\renameVar11Sub\\..\\..\renameVar11Sub\IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d
 bool(false)
 
 -- Iteration 6 --
 
-Warning: rename(%s\renameVar11\renameVar11Sub\BADDIR\renameMe.tmp,%s\renameVar11\renameVar11Sub\BADDIR\IwasRenamed.tmp): No such file or directory in %s on line %d
+Warning: rename(%s\renameVar11\renameVar11Sub\BADDIR\renameMe.tmp,%s\renameVar11\renameVar11Sub\BADDIR\IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d
 bool(false)
 
 -- Iteration 7 --
@@ -118,7 +118,7 @@ bool(true)
 
 -- Iteration 11 --
 
-Warning: rename(BADDIR\renameMe.tmp,BADDIR\IwasRenamed.tmp): No such file or directory in %s on line %d
+Warning: rename(BADDIR\renameMe.tmp,BADDIR\IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d
 bool(false)
 
 -- Iteration 12 --
diff --git a/ext/standard/tests/file/rename_variation12-win32.phpt b/ext/standard/tests/file/rename_variation12-win32.phpt
new file mode 100644 (file)
index 0000000..de5fc14
--- /dev/null
@@ -0,0 +1,121 @@
+--TEST--
+Test rename() function : variation - various relative, absolute paths
+--CREDITS--
+Dave Kelsey <d_kelsey@uk.ibm.com>
+--SKIPIF--
+<?php
+if (substr(PHP_OS, 0, 3) != 'WIN') die('skip..  for Windows');
+?>
+--FILE--
+<?php
+/* Prototype  : bool rename(string old_name, string new_name[, resource context])
+ * Description: Rename a file 
+ * Source code: ext/standard/file.c
+ * Alias to functions: 
+ */
+
+/* Creating unique files in various dirs by passing relative paths to $dir arg */
+
+echo "*** Testing rename() with absolute and relative paths ***\n";
+$mainDir = "renameVar11";
+$subDir = "renameVar11Sub";
+$absMainDir = dirname(__FILE__)."/".$mainDir;
+mkdir($absMainDir);
+$absSubDir = $absMainDir."/".$subDir;
+mkdir($absSubDir);
+
+$fromFile = "renameMe.tmp";
+$toFile = "IwasRenamed.tmp";
+
+$old_dir_path = getcwd();
+chdir(dirname(__FILE__));
+
+$allDirs = array(
+  // absolute paths
+  "$absSubDir/",
+  "$absSubDir/../".$subDir,
+  "$absSubDir//.././".$subDir,
+  "$absSubDir/../../".$mainDir."/./".$subDir,
+  "$absSubDir/..///".$subDir."//..//../".$subDir,
+  "$absSubDir/BADDIR",
+  
+  
+  // relative paths
+  $mainDir."/".$subDir,
+  $mainDir."//".$subDir, 
+   $mainDir."///".$subDir, 
+  "./".$mainDir."/../".$mainDir."/".$subDir,
+  "BADDIR",  
+);
+
+for($i = 0; $i<count($allDirs); $i++) {
+  $j = $i+1;
+  $dir = $allDirs[$i];
+  echo "\n-- Iteration $j --\n";
+  touch($absSubDir."/".$fromFile);
+  $res = rename($dir."/".$fromFile, $dir."/".$toFile);
+  var_dump($res);
+  if ($res == true) {
+     $res = rename($dir."/".$toFile, $dir."/".$fromFile);
+     var_dump($res);
+  }
+  unlink($absSubDir."/".$fromFile);
+}
+
+chdir($old_dir_path);
+rmdir($absSubDir);
+rmdir($absMainDir);
+
+echo "\n*** Done ***\n";
+?>
+--EXPECTF--
+*** Testing rename() with absolute and relative paths ***
+
+-- Iteration 1 --
+bool(true)
+bool(true)
+
+-- Iteration 2 --
+bool(true)
+bool(true)
+
+-- Iteration 3 --
+bool(true)
+bool(true)
+
+-- Iteration 4 --
+bool(true)
+bool(true)
+
+-- Iteration 5 --
+
+Warning: rename(%s/renameVar11/renameVar11Sub/..///renameVar11Sub//..//../renameVar11Sub/renameMe.tmp,%s/renameVar11/renameVar11Sub/..///renameVar11Sub//..//../renameVar11Sub/IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d
+bool(false)
+
+-- Iteration 6 --
+
+Warning: rename(%s/renameVar11/renameVar11Sub/BADDIR/renameMe.tmp,%s/renameVar11/renameVar11Sub/BADDIR/IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d
+bool(false)
+
+-- Iteration 7 --
+bool(true)
+bool(true)
+
+-- Iteration 8 --
+bool(true)
+bool(true)
+
+-- Iteration 9 --
+bool(true)
+bool(true)
+
+-- Iteration 10 --
+bool(true)
+bool(true)
+
+-- Iteration 11 --
+
+Warning: rename(BADDIR/renameMe.tmp,BADDIR/IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d
+bool(false)
+
+*** Done ***
\ No newline at end of file
index 11274f03d2dbf4647267d7f7707e00f3e2e1abed..3fc3903b8920e3a78efffec7796bcc234d878ce7 100644 (file)
@@ -2,6 +2,10 @@
 Test rename() function : variation - various relative, absolute paths
 --CREDITS--
 Dave Kelsey <d_kelsey@uk.ibm.com>
+--SKIPIF--
+<?php
+if (substr(PHP_OS, 0, 3) == 'WIN') die('skip..  not for Windows');
+?>
 --FILE--
 <?php
 /* Prototype  : bool rename(string old_name, string new_name[, resource context])
@@ -85,12 +89,12 @@ bool(true)
 
 -- Iteration 5 --
 
-Warning: rename(%s/renameVar11/renameVar11Sub/..///renameVar11Sub//..//../renameVar11Sub/renameMe.tmp,%s/renameVar11/renameVar11Sub/..///renameVar11Sub//..//../renameVar11Sub/IwasRenamed.tmp): No such file or directory in %s on line %d
+Warning: rename(%s/renameVar11/renameVar11Sub/..///renameVar11Sub//..//../renameVar11Sub/renameMe.tmp,%s/renameVar11/renameVar11Sub/..///renameVar11Sub//..//../renameVar11Sub/IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d
 bool(false)
 
 -- Iteration 6 --
 
-Warning: rename(%s/renameVar11/renameVar11Sub/BADDIR/renameMe.tmp,%s/renameVar11/renameVar11Sub/BADDIR/IwasRenamed.tmp): No such file or directory in %s on line %d
+Warning: rename(%s/renameVar11/renameVar11Sub/BADDIR/renameMe.tmp,%s/renameVar11/renameVar11Sub/BADDIR/IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d
 bool(false)
 
 -- Iteration 7 --
@@ -111,7 +115,7 @@ bool(true)
 
 -- Iteration 11 --
 
-Warning: rename(BADDIR/renameMe.tmp,BADDIR/IwasRenamed.tmp): No such file or directory in %s on line %d
+Warning: rename(BADDIR/renameMe.tmp,BADDIR/IwasRenamed.tmp): The system cannot find the path specified. (code: 3) in %s on line %d
 bool(false)
 
 *** Done ***
\ No newline at end of file
index d089c97deb6d1b1c9d144eda696b9fd66a199181..72ad02d1498094a087681218181cf090e73b1348 100644 (file)
Binary files a/ext/standard/tests/file/rename_variation13.phpt and b/ext/standard/tests/file/rename_variation13.phpt differ
index d616cba524d423c93c443a642e392d2eebd9fb4b..209635af32ec1e4ad5029fbad2f57f6f9b9863a9 100644 (file)
@@ -16,52 +16,66 @@ require dirname(__FILE__).'/file.inc';
 
 /* creating directory */
 $file_path = dirname(__FILE__);
-$dirname = "$file_path/rename_variation_dir"; 
+$dirname = "$file_path/rename_variation3_dir"; 
 mkdir($dirname);
 
 /* test rename() by trying to rename an existing file/dir to the same name
   and one another */
 
-$filename = "$file_path/rename_variation.tmp"; 
+$filename = "$file_path/rename_variation3.tmp"; 
 $fp = fopen($filename, "w");
 fclose($fp);
 
 echo "\n-- Renaming file to same file name --\n";
 var_dump( rename($filename, $filename) );
+var_dump( file_exists($filename) );
 
 echo "\n-- Renaming directory to same directory name --\n";
 var_dump( rename($dirname, $dirname) );
+var_dump( file_exists($dirname) );
 
 echo "\n-- Renaming existing file to existing directory name --\n";
 var_dump( rename($filename, $dirname) );
+var_dump( file_exists($filename) );
+var_dump( file_exists($dirname) );
 
 echo "\n-- Renaming existing directory to existing file name --\n";
 $fp = fopen($filename, "w");
 fclose($fp);
+
 var_dump( rename($dirname, $filename) );
+var_dump( file_exists($filename) );
+var_dump( file_exists($dirname) );
 
 echo "Done\n";
 ?>
 --CLEAN--
 <?php
 $file_path = dirname(__FILE__);
-unlink($file_path."/rename_variation_link.tmp");
-unlink($file_path."/rename_variation.tmp");
-rmdir($file_path."/rename_variation_dir");
-rmdir($file_path."/rename_variation.tmp");
+unlink($file_path."/rename_variation3_link.tmp");
+unlink($file_path."/rename_variation3.tmp");
+rmdir($file_path."/rename_variation3_dir");
+rmdir($file_path."/rename_variation3.tmp");
 ?>
 --EXPECTF--
 -- Renaming file to same file name --
 bool(true)
+bool(true)
 
 -- Renaming directory to same directory name --
 bool(true)
+bool(true)
 
 -- Renaming existing file to existing directory name --
 
-Warning: rename(%s/rename_variation.tmp,%s/rename_variation_dir): No such file or directory in %s on line %d
+Warning: rename(%s/rename_variation3.tmp,%s/rename_variation3_dir): Access is denied. (code: 5) in %s on line %d
 bool(false)
+bool(true)
+bool(true)
 
 -- Renaming existing directory to existing file name --
 bool(true)
+bool(true)
+bool(false)
 Done
+
index 6305447b9dc1ffb43ccd1f99820c16b2ca71966d..14d59d0ade8e58aa47e448bc26e4278b0b3804a2 100644 (file)
@@ -4,6 +4,10 @@ Test rename() function: usage variations-6
 <?php
 if (substr(PHP_OS, 0, 3) != 'WIN') die('skip..  for Windows');
 if (!function_exists("symlink")) die("skip symlinks are not supported");
+$ret = exec('mklink rename_variation13tmp.lnk ' . __FILE__ .' 2>&1', $out);
+if (strpos($ret, 'privilege')) {
+       die('skip. SeCreateSymbolicLinkPrivilege not enable for this user.');
+}
 ?>
 --FILE--
 <?php
diff --git a/ext/standard/tests/file/rename_variation8-win32.phpt b/ext/standard/tests/file/rename_variation8-win32.phpt
new file mode 100644 (file)
index 0000000..1d25a12
--- /dev/null
@@ -0,0 +1,70 @@
+--TEST--\r
+Test rename() function: variation\r
+--SKIPIF--\r
+<?php\r
+if (substr(PHP_OS, 0, 3) != 'WIN') die('skip..  for Windows');\r
+?>\r
+--FILE--\r
+<?php\r
+/* Prototype: bool rename ( string $oldname, string $newname [, resource $context] );\r
+   Description: Renames a file or directory\r
+*/\r
+\r
+echo "\n*** Testing rename() on non-existing file ***\n";\r
+$file_path = dirname(__FILE__);\r
+\r
+// try renaming a non existing file\r
+$src_name = $file_path."/non_existent_file.tmp";\r
+$dest_name = $file_path."/rename_variation8_new.tmp";\r
+var_dump( rename($src_name, $dest_name) );\r
+\r
+// ensure that $dest_name didn't get created\r
+var_dump( file_exists($src_name) );  // expecting false\r
+var_dump( file_exists($dest_name) ); // expecting false\r
+\r
+// rename a existing dir to new name\r
+echo "\n*** Testing rename() on existing directory ***\n";\r
+$dir_name = $file_path."/rename_basic_dir";\r
+mkdir($dir_name);\r
+$new_dir_name = $file_path."/rename_basic_dir1";\r
+var_dump( rename($dir_name, $new_dir_name) );\r
+//ensure that $new_dir_name got created\r
+var_dump( file_exists($dir_name) );  // expecting false\r
+var_dump( file_exists($new_dir_name) );  // expecting true\r
+\r
+// try to rename an non_existing dir \r
+echo "\n*** Testing rename() on non-existing directory ***\n";\r
+$non_existent_dir_name = $file_path."/non_existent_dir";\r
+$new_dir_name = "$file_path/rename_basic_dir2";\r
+var_dump( rename($non_existent_dir_name, $new_dir_name) );\r
+// ensure that $new_dir_name didn't get created\r
+var_dump( file_exists($non_existent_dir_name) );  // expecting flase\r
+var_dump( file_exists($new_dir_name) );  // expecting false\r
+\r
+echo "Done\n";\r
+?>\r
+--CLEAN--\r
+<?php\r
+rmdir(dirname(__FILE__)."/rename_basic_dir1");\r
+?>\r
+--EXPECTF--\r
+*** Testing rename() on non-existing file ***\r
+\r
+Warning: rename(%s/non_existent_file.tmp,%s/rename_variation8_new.tmp): The system cannot find the file specified. (code: 2) in %s on line %d\r
+bool(false)\r
+bool(false)\r
+bool(false)\r
+\r
+*** Testing rename() on existing directory ***\r
+bool(true)\r
+bool(false)\r
+bool(true)\r
+\r
+*** Testing rename() on non-existing directory ***\r
+\r
+Warning: rename(%s/non_existent_dir,%s/rename_basic_dir2): The system cannot find the file specified. (code: 2) in %s on line %d\r
+bool(false)\r
+bool(false)\r
+bool(false)\r
+Done\r
+\r
index 269ac67dac1cead160e09398aac77d681dbdbe9b..6e236c376cfc13c10d9b8a41eeadf23303dd3137 100644 (file)
@@ -1,5 +1,9 @@
 --TEST--
 Test rename() function: variation
+--SKIPIF--
+<?php
+if (substr(PHP_OS, 0, 3) == 'WIN') die('skip..  not for Windows');
+?>
 --FILE--
 <?php
 /* Prototype: bool rename ( string $oldname, string $newname [, resource $context] );
@@ -64,3 +68,4 @@ bool(false)
 bool(false)
 bool(false)
 Done
+
index 42897761b27f318e6b384bd35ca3b656993f0d5e..272fa9402585e236d0d80e7c94f79fa51665e640 100644 (file)
@@ -50,3 +50,4 @@ bool(true)
 bool(false)
 bool(true)
 Done
+