summaryrefslogtreecommitdiff
path: root/ext/standard/tests/file/chmod_variation1.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/tests/file/chmod_variation1.phpt')
-rw-r--r--ext/standard/tests/file/chmod_variation1.phpt34
1 files changed, 34 insertions, 0 deletions
diff --git a/ext/standard/tests/file/chmod_variation1.phpt b/ext/standard/tests/file/chmod_variation1.phpt
new file mode 100644
index 0000000..f35e54e
--- /dev/null
+++ b/ext/standard/tests/file/chmod_variation1.phpt
@@ -0,0 +1,34 @@
+--TEST--
+chmod() on a directory
+--SKIPIF--
+<?php
+if (substr(PHP_OS, 0, 3) == 'WIN') {
+ die('skip non-windows only test');
+}
+?>
+--FILE--
+<?php
+
+define("PERMISSIONS_MASK", 0777);
+
+$dirname = dirname(__FILE__) . "/" . basename(__FILE__, ".php") . "testdir";
+mkdir($dirname);
+
+for ($perms_to_set = 0777; $perms_to_set >= 0; $perms_to_set--) {
+ chmod($dirname, $perms_to_set);
+ $set_perms = (fileperms($dirname) & PERMISSIONS_MASK);
+ clearstatcache();
+ if ($set_perms != $perms_to_set) {
+ printf("Error: %o does not match %o\n", $set_perms, $perms_to_set);
+ }
+}
+
+var_dump(chmod($dirname, 0777));
+rmdir($dirname);
+
+echo "done";
+
+?>
+--EXPECT--
+bool(true)
+done