diff options
author | Lorry Tar Creator <lorry-tar-importer@baserock.org> | 2013-03-14 05:42:27 +0000 |
---|---|---|
committer | <> | 2013-04-03 16:25:08 +0000 |
commit | c4dd7a1a684490673e25aaf4fabec5df138854c4 (patch) | |
tree | 4d57c44caae4480efff02b90b9be86f44bf25409 /ext/standard/tests/file/readlink_realpath_basic2.phpt | |
download | php2-master.tar.gz |
Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2.HEADphp-5.4.13master
Diffstat (limited to 'ext/standard/tests/file/readlink_realpath_basic2.phpt')
-rw-r--r-- | ext/standard/tests/file/readlink_realpath_basic2.phpt | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/ext/standard/tests/file/readlink_realpath_basic2.phpt b/ext/standard/tests/file/readlink_realpath_basic2.phpt new file mode 100644 index 0000000..91955cd --- /dev/null +++ b/ext/standard/tests/file/readlink_realpath_basic2.phpt @@ -0,0 +1,86 @@ +--TEST-- +Test readlink() and realpath functions: basic functionality - diff. path notation for files +--SKIPIF-- +<?php +if (substr(PHP_OS, 0, 3) == 'WIN') { + die('skip no symlinks on Windows'); +} +?> +--FILE-- +<?php +/* Prototype: string readlink ( string $path ); + Description: Returns the target of a symbolic link + + Prototype: string realpath ( string $path ); + Description: Returns canonicalized absolute pathname +*/ + +/* creating directories, symbolic links and files */ +$file_path = dirname(__FILE__); +mkdir("$file_path/readlink_realpath_basic2/home/test/", 0777, true); + +$file_handle1 = fopen("$file_path/readlink_realpath_basic2/home/test/readlink_realpath_basic2.tmp", "w"); +$file_handle2 = fopen("$file_path/readlink_realpath_basic2/home/readlink_realpath_basic2.tmp", "w"); +$file_handle3 = fopen("$file_path/readlink_realpath_basic2/readlink_realpath_basic2.tmp", "w"); +fclose($file_handle1); +fclose($file_handle2); +fclose($file_handle3); + +echo "\n*** Testing realpath() on filenames ***\n"; +$filenames = array ( + /* filenames resulting in valid paths */ + "$file_path/readlink_realpath_basic2/home/readlink_realpath_basic2.tmp", + "$file_path/readlink_realpath_basic2/readlink_realpath_basic2.tmp", + "$file_path/readlink_realpath_basic2//home/test//../test/./readlink_realpath_basic2.tmp", + "$file_path/readlink_realpath_basic2/home//../././readlink_realpath_basic2.tmp", + + /* filenames with invalid path */ + "$file_path///readlink_realpath_basic2/home//..//././test//readlink_realpath_basic2.tmp", + "$file_path/readlink_realpath_basic2/home/../home/../test/../readlink_realpath_basic2.tmp", + "$file_path/readlink_realpath_basic2/readlink_realpath_basic2.tmp/" +); + +$counter = 1; +/* loop through $files to read the filepath of $file in the above array */ +foreach($filenames as $file) { + echo "\n-- Iteration $counter --\n"; + var_dump( realpath($file) ); + $counter++; +} + +echo "Done\n"; +?> +--CLEAN-- +<?php +$name_prefix = dirname(__FILE__)."/readlink_realpath_basic2"; +unlink("$name_prefix/home/test/readlink_realpath_basic2.tmp"); +unlink("$name_prefix/home/readlink_realpath_basic2.tmp"); +unlink("$name_prefix/readlink_realpath_basic2.tmp"); +rmdir("$name_prefix/home/test/"); +rmdir("$name_prefix/home/"); +rmdir("$name_prefix/"); +?> +--EXPECTF-- +*** Testing realpath() on filenames *** + +-- Iteration 1 -- +string(%d) "%s/readlink_realpath_basic2/home/readlink_realpath_basic2.tmp" + +-- Iteration 2 -- +string(%d) "%s/readlink_realpath_basic2/readlink_realpath_basic2.tmp" + +-- Iteration 3 -- +string(%d) "%s/readlink_realpath_basic2/home/test/readlink_realpath_basic2.tmp" + +-- Iteration 4 -- +string(%d) "%s/readlink_realpath_basic2/readlink_realpath_basic2.tmp" + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +%s +Done |