diff options
Diffstat (limited to 'ext/standard/tests/strings/dirname_variation.phpt')
-rw-r--r-- | ext/standard/tests/strings/dirname_variation.phpt | 143 |
1 files changed, 143 insertions, 0 deletions
diff --git a/ext/standard/tests/strings/dirname_variation.phpt b/ext/standard/tests/strings/dirname_variation.phpt new file mode 100644 index 0000000000..da66f0fc55 --- /dev/null +++ b/ext/standard/tests/strings/dirname_variation.phpt @@ -0,0 +1,143 @@ +--TEST-- +Test dirname() function : usage variations +--FILE-- +<?php +/* Prototype: string dirname ( string $path ); + Description: Returns directory name component of path. +*/ +class temp +{ + function __toString() { + return "Object"; + } +} + +$file_path_variations = array ( + /* home dir shortcut char */ + "~/home/user/bar", + "~/home/user/bar/", + "~/home/user/bar.tar", + "~/home/user/bar.tar/", + + /* with hotname:dir notation */ + "hostname:/home/user/bar.tar", + "hostname:/home/user/tbar.gz/", + "hostname:/home/user/My Pics.gz", + "hostname:/home/user/My Pics.gz/", + "hostname:/home/user/My Pics/", + "hostname:/home/user/My Pics", + + /* path containing numeric string */ + "10.5", + "/10.5", + "/10.5/", + "10.5/", + "10/10.gz", + '0', + "0", + + /* object */ + new temp, + + /* path as spaces */ + " ", + ' ', + + /* empty path */ + "", + '', + NULL, + null +); + +function check_dirname( $paths ) { + $loop_counter = 0; + $noOfPaths = count($paths); + for( ; $loop_counter < $noOfPaths; $loop_counter++ ) { + echo "\n--Iteration "; + echo $loop_counter +1; + echo " --\n"; + var_dump( dirname($paths[$loop_counter]) ); + } +} + +echo "*** Testing possible variations in path ***\n"; +check_dirname( $file_path_variations ); + +echo "Done\n"; +?> +--EXPECTREGEX-- +\*\*\* Testing possible variations in path \*\*\* + +--Iteration 1 -- +string\(11\) "~(\\|\/)home(\\|\/)user" + +--Iteration 2 -- +string\(11\) "~(\\|\/)home(\\|\/)user" + +--Iteration 3 -- +string\(11\) "~(\\|\/)home(\\|\/)user" + +--Iteration 4 -- +string\(11\) "~(\\|\/)home(\\|\/)user" + +--Iteration 5 -- +string\(19\) "hostname:(\\|\/)home(\\|\/)user" + +--Iteration 6 -- +string\(19\) "hostname:(\\|\/)home(\\|\/)user" + +--Iteration 7 -- +string\(19\) "hostname:(\\|\/)home(\\|\/)user" + +--Iteration 8 -- +string\(19\) "hostname:(\\|\/)home(\\|\/)user" + +--Iteration 9 -- +string\(19\) "hostname:(\\|\/)home(\\|\/)user" + +--Iteration 10 -- +string\(19\) "hostname:(\\|\/)home(\\|\/)user" + +--Iteration 11 -- +string\(1\) "." + +--Iteration 12 -- +string\(1\) "(\\|\/)" + +--Iteration 13 -- +string\(1\) "(\\|\/)" + +--Iteration 14 -- +string\(1\) "." + +--Iteration 15 -- +string\(2\) "10" + +--Iteration 16 -- +string\(1\) "." + +--Iteration 17 -- +string\(1\) "." + +--Iteration 18 -- +string\(1\) "." + +--Iteration 19 -- +string\(1\) "." + +--Iteration 20 -- +string\(1\) "." + +--Iteration 21 -- +string\(0\) "" + +--Iteration 22 -- +string\(0\) "" + +--Iteration 23 -- +string\(0\) "" + +--Iteration 24 -- +string\(0\) "" +Done
\ No newline at end of file |