fork test
authorAnatol Belski <ab@php.net>
Thu, 30 Jul 2015 05:31:42 +0000 (07:31 +0200)
committerAnatol Belski <ab@php.net>
Thu, 30 Jul 2015 07:05:07 +0000 (09:05 +0200)
ext/standard/tests/strings/dirname_multi.phpt
ext/standard/tests/strings/dirname_multi_win.phpt [new file with mode: 0644]

index bfd7b50ef19678fddb19450b391e0e0a07574721..febbd0c2930b9102ba26667964c30c36cd4d4415 100644 (file)
@@ -1,5 +1,10 @@
 --TEST--
 Test dirname() function : usage variations
+--SKIPIF--
+<?php
+if((substr(PHP_OS, 0, 3) == "WIN"))
+  die('skip not for Windows');
+?>
 --FILE--
 <?php
 /* Prototype: string dirname ( string $path [, int nb]);
diff --git a/ext/standard/tests/strings/dirname_multi_win.phpt b/ext/standard/tests/strings/dirname_multi_win.phpt
new file mode 100644 (file)
index 0000000..4fed589
--- /dev/null
@@ -0,0 +1,31 @@
+--TEST--
+Test dirname() function : usage variations
+--SKIPIF--
+<?php
+if((substr(PHP_OS, 0, 3) != "WIN"))
+  die('skip Windows only');
+?>
+--FILE--
+<?php
+/* Prototype: string dirname ( string $path [, int nb]);
+   Description: Returns directory name component of path.
+*/
+for ($i=0 ; $i<5 ; $i++) {
+       var_dump(dirname("/foo/bar/baz", $i));
+}
+var_dump(dirname("/foo/bar/baz", PHP_INT_MAX));
+var_dump(dirname("g:/foo/bar/baz", PHP_INT_MAX));
+var_dump(dirname("g:foo/bar/baz", PHP_INT_MAX));
+?>
+Done
+--EXPECTF--
+Warning: dirname(): Invalid argument, levels must be >= 1 in %sdirname_multi_win.php on line %d
+NULL
+string(8) "/foo/bar"
+string(4) "/foo"
+string(1) "\"
+string(1) "\"
+string(1) "\"
+string(3) "g:\"
+string(3) "g:."
+Done