summaryrefslogtreecommitdiff
path: root/ext/standard/tests/file/rmdir_variation3.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/tests/file/rmdir_variation3.phpt')
-rw-r--r--ext/standard/tests/file/rmdir_variation3.phpt96
1 files changed, 96 insertions, 0 deletions
diff --git a/ext/standard/tests/file/rmdir_variation3.phpt b/ext/standard/tests/file/rmdir_variation3.phpt
new file mode 100644
index 0000000000..5848007395
--- /dev/null
+++ b/ext/standard/tests/file/rmdir_variation3.phpt
@@ -0,0 +1,96 @@
+--TEST--
+Test rmdir() function : variation: various valid and invalid paths
+--CREDITS--
+Dave Kelsey <d_kelsey@uk.ibm.com>
+--FILE--
+<?php
+/* Prototype : bool rmdir(string dirname[, resource context])
+ * Description: Remove a directory
+ * Source code: ext/standard/file.c
+ * Alias to functions:
+ */
+
+echo "*** Testing rmdir() : variation ***\n";
+
+$workDir = "rmdirVar3.tmp";
+$subDir = "aSubDir";
+mkdir($workDir);
+$cwd = getcwd();
+
+$dirs = array(
+ // relative
+ $workDir.'/'.$subDir,
+ './'.$workDir.'/'.$subDir,
+ $workDir.'/../'.$workDir.'/'.$subDir,
+
+ // relative bad path
+ $workDir.'/../BADDIR/'.$subDir,
+ 'BADDIR/'.$subDir,
+
+ //absolute
+ $cwd.'/'.$workDir.'/'.$subDir,
+ $cwd.'/./'.$workDir.'/'.$subDir,
+ $cwd.'/'.$workDir.'/../'.$workDir.'/'.$subDir,
+
+ //absolute bad path
+ $cwd.'/BADDIR/'.$subDir,
+
+ //trailing separators
+ $workDir.'/'.$subDir.'/',
+ $cwd.'/'.$workDir.'/'.$subDir.'/',
+
+ // multiple separators
+ $workDir.'//'.$subDir,
+ $cwd.'//'.$workDir.'//'.$subDir,
+
+ );
+
+
+foreach($dirs as $dir) {
+ mkdir($workDir.'/'.$subDir);
+ echo "-- removing $dir --\n";
+ $res = rmdir($dir);
+ if ($res === true) {
+ echo "Directory removed\n";
+ }
+ else {
+ rmdir($workDir.'/'.$subDir);
+ }
+}
+
+rmdir($workDir);
+
+?>
+===DONE===
+--EXPECTF--
+*** Testing rmdir() : variation ***
+-- removing rmdirVar3.tmp/aSubDir --
+Directory removed
+-- removing ./rmdirVar3.tmp/aSubDir --
+Directory removed
+-- removing rmdirVar3.tmp/../rmdirVar3.tmp/aSubDir --
+Directory removed
+-- removing rmdirVar3.tmp/../BADDIR/aSubDir --
+
+Warning: rmdir(rmdirVar3.tmp/../BADDIR/aSubDir): No such file or directory in %s on line %d
+-- removing BADDIR/aSubDir --
+
+Warning: rmdir(BADDIR/aSubDir): No such file or directory in %s on line %d
+-- removing %s/rmdirVar3.tmp/aSubDir --
+Directory removed
+-- removing %s/./rmdirVar3.tmp/aSubDir --
+Directory removed
+-- removing %s/rmdirVar3.tmp/../rmdirVar3.tmp/aSubDir --
+Directory removed
+-- removing %s/BADDIR/aSubDir --
+
+Warning: rmdir(%s/BADDIR/aSubDir): No such file or directory in %s on line %d
+-- removing rmdirVar3.tmp/aSubDir/ --
+Directory removed
+-- removing %s/rmdirVar3.tmp/aSubDir/ --
+Directory removed
+-- removing rmdirVar3.tmp//aSubDir --
+Directory removed
+-- removing %s//rmdirVar3.tmp//aSubDir --
+Directory removed
+===DONE=== \ No newline at end of file