From: Raghubansh Kumar Date: Thu, 5 Jul 2007 18:53:34 +0000 (+0000) Subject: fix test: 006_error.phpt & filegroup_basic.phpt X-Git-Tag: php-5.2.4RC1~230 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=87b2a52a16ca3ee1fe23ce4727431e95fa14be68;p=php fix test: 006_error.phpt & filegroup_basic.phpt fix and smaller tests for symlink_link_linkinfo_is_link[basic|error|variation].phpt --- diff --git a/ext/standard/tests/file/006_error.phpt b/ext/standard/tests/file/006_error.phpt index d2079c1422..691e76eae0 100644 --- a/ext/standard/tests/file/006_error.phpt +++ b/ext/standard/tests/file/006_error.phpt @@ -5,9 +5,17 @@ Test fileperms(), chmod() functions: error conditions if (substr(PHP_OS, 0, 3) == 'WIN') { die('skip Not on Windows'); } -elseif (get_current_user() == 'root') { - die( "skip Do not run with root permissions" ); +// Skip if being run by root +$filename = dirname(__FILE__)."/006_root_check.tmp"; +$fp = fopen($filename, 'w'); +fclose($fp); +if(fileowner($filename) == 0) { + unlink ($filename); + die('skip...cannot be run as root\n'); } + +unlink($filename); + ?> --FILE-- --FILE-- @@ -17,7 +17,7 @@ echo "*** Testing filegroup(): basic functionality ***\n"; echo "-- Testing with the file or directory created by owner --\n"; $file_path = dirname(__FILE__); -var_dump( posix_getgrgid( filegroup(__FILE__) ) ); +var_dump( filegroup(__FILE__) ); var_dump( filegroup(".") ); var_dump( filegroup("./..") ); @@ -55,25 +55,15 @@ rmdir($dir_name); --EXPECTF-- *** Testing filegroup(): basic functionality *** -- Testing with the file or directory created by owner -- -array(4) { - ["name"]=> - string(%d) "%s" - ["passwd"]=> - string(1) "x" - ["members"]=> - array(0) { - } - ["gid"]=> - int(%d) -} +int(%d) int(%d) int(%d) int(%d) int(%d) -- Testing with the standard file or directory -- -int(0) -int(0) -int(0) +int(%d) +int(%d) +int(%d) *** Done *** diff --git a/ext/standard/tests/file/symlink_link_linkinfo_is_link_basic1.phpt b/ext/standard/tests/file/symlink_link_linkinfo_is_link_basic1.phpt new file mode 100644 index 0000000000..416e6ae323 --- /dev/null +++ b/ext/standard/tests/file/symlink_link_linkinfo_is_link_basic1.phpt @@ -0,0 +1,114 @@ +--TEST-- +Test symlink(), linkinfo(), link() and is_link() functions: basic functionality - link to files +--SKIPIF-- + +--FILE-- + +--CLEAN-- + +--EXPECTF-- +*** Testing symlink(), linkinfo(), link() and is_link() : basic functionality *** + +-- Iteration 1 -- +-- Testing on soft links -- +bool(true) +int(%d) +bool(true) +-- Testing on hard links -- +bool(true) +int(%d) +bool(false) + +-- Iteration 2 -- +-- Testing on soft links -- +bool(true) +int(%d) +bool(true) +-- Testing on hard links -- +bool(true) +int(%d) +bool(false) +Done diff --git a/ext/standard/tests/file/symlink_link_linkinfo_is_link_basic2.phpt b/ext/standard/tests/file/symlink_link_linkinfo_is_link_basic2.phpt new file mode 100644 index 0000000000..2ecd30951b --- /dev/null +++ b/ext/standard/tests/file/symlink_link_linkinfo_is_link_basic2.phpt @@ -0,0 +1,91 @@ +--TEST-- +Test symlink(), linkinfo(), link() and is_link() functions: basic functionality - link to dirs +--SKIPIF-- + +--FILE-- + +--CLEAN-- + +--EXPECTF-- +*** Testing symlink(), linkinfo(), link() and is_link() : basic functionality *** + +*** Testing symlink(), linkinfo(), link() and is_link() on directory *** + +-- Testing on soft links -- +bool(true) +int(%d) +bool(true) + +-- Testing on hard links -- + +Warning: link(): %s in %s on line %d +bool(false) + +Warning: linkinfo(): No such file or directory in %s on line %d +int(-1) +bool(false) +Done diff --git a/ext/standard/tests/file/symlink_link_linkinfo_is_link_error1.phpt b/ext/standard/tests/file/symlink_link_linkinfo_is_link_error1.phpt new file mode 100644 index 0000000000..80a8e41c65 --- /dev/null +++ b/ext/standard/tests/file/symlink_link_linkinfo_is_link_error1.phpt @@ -0,0 +1,114 @@ +--TEST-- +Test symlink(), linkinfo(), link() and is_link() functions : error conditions - symlink & linkinfo +--SKIPIF-- + +--FILE-- + +--CLEAN-- + +--EXPECTF-- +*** Testing symlink() for error conditions *** + +Warning: Wrong parameter count for symlink() in %s on line %d +NULL + +Warning: Wrong parameter count for symlink() in %s on line %d +NULL + +Warning: symlink(): %s in %s on line %d +bool(false) + +Warning: symlink(): %s in %s on line %d +bool(false) + +Warning: symlink(): %s in %s on line %d +bool(false) + +Warning: symlink(): No such file or directory in %s on line %d +bool(false) + +Warning: symlink(): No such file or directory in %s on line %d +bool(false) + +Warning: symlink(): No such file or directory in %s on line %d +bool(false) + +*** Testing linkinfo() for error conditions *** + +Warning: Wrong parameter count for linkinfo() in %s on line %d +NULL + +Warning: Wrong parameter count for linkinfo() in %s on line %d +NULL + +Warning: linkinfo(): No such file or directory in %s on line %d +int(-1) + +Warning: linkinfo(): No such file or directory in %s on line %d +int(-1) + +Warning: linkinfo(): No such file or directory in %s on line %d +int(-1) +Done diff --git a/ext/standard/tests/file/symlink_link_linkinfo_is_link_error2.phpt b/ext/standard/tests/file/symlink_link_linkinfo_is_link_error2.phpt new file mode 100644 index 0000000000..322ca11305 --- /dev/null +++ b/ext/standard/tests/file/symlink_link_linkinfo_is_link_error2.phpt @@ -0,0 +1,107 @@ +--TEST-- +Test symlink(), linkinfo(), link() and is_link() functions : error conditions - link & is_link +--SKIPIF-- + +--FILE-- + +--CLEAN-- + +--EXPECTF-- +*** Testing link() for error conditions *** + +Warning: Wrong parameter count for link() in %s on line %d +NULL + +Warning: Wrong parameter count for link() in %s on line %d +NULL + +Warning: link(): No such file or directory in %s on line %d +bool(false) + +Warning: link(): No such file or directory in %s on line %d +bool(false) + +Warning: link(): No such file or directory in %s on line %d +bool(false) + +Warning: link(): No such file or directory in %s on line %d +bool(false) + +Warning: link(): No such file or directory in %s on line %d +bool(false) + +Warning: link(): No such file or directory in %s on line %d +bool(false) + +*** Testing is_link() for error conditions *** + +Warning: Wrong parameter count for is_link() in %s on line %d +NULL + +Warning: Wrong parameter count for is_link() in %s on line %d +NULL +bool(false) +bool(false) +bool(false) +bool(false) +Done diff --git a/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation1.phpt b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation1.phpt new file mode 100644 index 0000000000..e3185c4036 --- /dev/null +++ b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation1.phpt @@ -0,0 +1,136 @@ +--TEST-- +Test symlink(), linkinfo(), link() and is_link() functions : usage variations - link name stored in an array/object +--SKIPIF-- + +--FILE-- +linkname = $link; + } +} + +$obj = new object_temp("$dirname/symlink_link_linkinfo_is_link_link.tmp"); +/* Testing on soft links */ +echo "\n-- Working with soft links --\n"; +// creating soft link +var_dump( symlink($filename, $obj->linkname) ); +// check if the link exists +var_dump( linkinfo($obj->linkname) ); +// check if link is soft link +var_dump( is_link($obj->linkname) ); +// delete the link created +unlink($obj->linkname); +// clear the cache +clearstatcache(); + +/* Testing on hard links */ +echo "\n-- Working with hard links --\n"; +// creating hard link +var_dump( link($filename, $obj->linkname) ); +// check if the link exists +var_dump( linkinfo($obj->linkname) ); +// check if link is soft link; expected: false as the link is a hardlink +var_dump( is_link($obj->linkname) ); +// delete the link created +unlink($obj->linkname); +// clear the cache +clearstatcache(); + +echo "\n*** Testing symlink(), link(), linkinfo() and is_link() with linknames stored as members of an array ***\n"; + +$link_arr = array("$dirname/symlink_link_linkinfo_is_link_link.tmp"); + +/* Testing on soft links */ +echo "\n-- Working with soft links --\n"; +// creating soft link +var_dump( symlink($filename, $link_arr[0]) ); +// check if the link exist +var_dump( linkinfo($link_arr[0]) ); +// check if link is soft link +var_dump( is_link($link_arr[0]) ); +// delete the link created +unlink($link_arr[0]); +// clear the cache +clearstatcache(); + +/* Testing on hard links */ +echo "\n-- Working with hard links --\n"; +// creating hard link +var_dump( link($filename, $link_arr[0]) ); +// check if the link exist +var_dump( linkinfo($link_arr[0]) ); +// check if link is soft link; expected: false as this is a hardlink +var_dump( is_link($link_arr[0]) ); +// delete the links created +unlink($link_arr[0]); +// clear the cache +clearstatcache(); + +echo "Done\n"; +?> +--CLEAN-- + +--EXPECTF-- +*** Testing symlink(), link(), linkinfo() and is_link() with linknames stored as members in an object *** + +-- Working with soft links -- +bool(true) +int(%d) +bool(true) + +-- Working with hard links -- +bool(true) +int(%d) +bool(false) + +*** Testing symlink(), link(), linkinfo() and is_link() with linknames stored as members of an array *** + +-- Working with soft links -- +bool(true) +int(%d) +bool(true) + +-- Working with hard links -- +bool(true) +int(%d) +bool(false) +Done diff --git a/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation2.phpt b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation2.phpt new file mode 100644 index 0000000000..6ee6f12429 --- /dev/null +++ b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation2.phpt @@ -0,0 +1,51 @@ +--TEST-- +Test symlink(), linkinfo(), link() and is_link() functions : usage variations - hardlink to non-existent file +--SKIPIF-- + +--FILE-- + +--EXPECTF-- +*** Creating a hard link to a non-existent file *** + +Warning: link(): No such file or directory in %s on line %d +bool(false) + +Warning: linkinfo(): No such file or directory in %s on line %d +int(-1) +bool(false) +Done diff --git a/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation3.phpt b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation3.phpt new file mode 100644 index 0000000000..21c9b57654 --- /dev/null +++ b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation3.phpt @@ -0,0 +1,146 @@ +--TEST-- +Test symlink(), linkinfo(), link() and is_link() functions : usage variations - access/update file through softlink +--SKIPIF-- + +--FILE-- + +--EXPECTF-- +*** Accessing and updating data of file through soft link *** +bool(true) + +-- Access data of the file through the soft link -- +string(80) "texttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttext" + +-- Check size of soft link and file -- +int(80) +int(80) + +Soft link size remains same + +-- Updating file with data through soft link -- +string(91) "texttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttextHello World" + +-- Check size of soft link and file -- +int(91) +int(91) + +Soft link size remains same + +-- Updating file with data and check data through soft link -- +string(11) "Hello World" + +-- Check size of soft link and file -- +int(11) +int(11) + +Soft link size remains same +Done diff --git a/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation4.phpt b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation4.phpt new file mode 100644 index 0000000000..f58937cd12 --- /dev/null +++ b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation4.phpt @@ -0,0 +1,120 @@ +--TEST-- +Test symlink(), linkinfo(), link() and is_link() functions : usage variations - access/update file through hard link +--SKIPIF-- + +--FILE-- + +--EXPECTF-- +*** Accessing and updating data of file through hard link *** + +-- Access data of the file through the hard link -- +bool(true) +string(80) "texttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttext" + +-- Check size of hard link and file -- + +Size of file and hard link are same + +-- Updating file with data through hard link -- +string(91) "texttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttexttextHello World" + +-- Check size of hard link and file -- + +Size of file and hard link are same + +-- Updating file with data and check data through hard link -- +string(11) "Hello World" + +-- Check size of hard link and file -- +int(11) +int(11) + +Size of file and hard link are same +Done diff --git a/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation5.phpt b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation5.phpt new file mode 100644 index 0000000000..f7d27748ee --- /dev/null +++ b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation5.phpt @@ -0,0 +1,75 @@ +--TEST-- +Test symlink(), linkinfo(), link() and is_link() functions : usage variations - work on deleted link +--SKIPIF-- + +--FILE-- + +--CLEAN-- + +--EXPECTF-- +*** Testing linkinfo() and is_link() on deleted link *** +bool(true) +bool(true) + +Warning: linkinfo(): No such file or directory in %s on line %d +int(-1) +bool(false) +Done diff --git a/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation6.phpt b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation6.phpt new file mode 100644 index 0000000000..7684f1d5b3 --- /dev/null +++ b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation6.phpt @@ -0,0 +1,89 @@ +--TEST-- +Test symlink(), linkinfo(), link() and is_link() functions : usage variations - link & dir perms. +--SKIPIF-- + +--FILE-- + +--CLEAN-- + +--EXPECTF-- +*** Creating links in a directory without permission to allow the operation *** +bool(true) + +-- Working with soft links -- + +Warning: symlink(): Permission denied in %s on line %d +bool(false) + +Warning: linkinfo(): Permission denied in %s on line %d +int(-1) +bool(false) + +-- Working with hard links -- + +Warning: link(): Permission denied in %s on line %d +bool(false) + +Warning: linkinfo(): Permission denied in %s on line %d +int(-1) +bool(false) +Done diff --git a/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation7.phpt b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation7.phpt new file mode 100644 index 0000000000..82ca75b64d --- /dev/null +++ b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation7.phpt @@ -0,0 +1,94 @@ +--TEST-- +Test symlink(), linkinfo(), link() and is_link() functions : usage variations - try link to self +--SKIPIF-- + +--FILE-- + +--CLEAN-- + +--EXPECTF-- +*** Create soft link to file and then to itself *** +bool(true) + +Warning: symlink(): File exists in %s on line %d +bool(false) + +*** Create soft link to directory and then to itself *** +bool(true) + +Warning: symlink(): File exists in %s on line %d +bool(false) + +*** Create hard link to file and then to itself *** +bool(true) + +Warning: link(): File exists in %s on line %d +bool(false) +Done diff --git a/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation8.phpt b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation8.phpt new file mode 100644 index 0000000000..27b8f58ef8 --- /dev/null +++ b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation8.phpt @@ -0,0 +1,83 @@ +--TEST-- +Test symlink(), linkinfo(), link() and is_link() functions : usage variations - try link with same name in diff. dir +--SKIPIF-- + +--FILE-- + +--EXPECTF-- +*** Create hard link in different directory with same filename *** + +Warning: link(): File exists in %s on line %d +bool(false) +bool(true) + +*** Create soft link in different directory with same filename *** + +Warning: symlink(): File exists in %s on line %d +bool(false) +bool(true) +Done diff --git a/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation9.phpt b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation9.phpt new file mode 100644 index 0000000000..aacbcd4b3f --- /dev/null +++ b/ext/standard/tests/file/symlink_link_linkinfo_is_link_variation9.phpt @@ -0,0 +1,121 @@ +--TEST-- +Test symlink(), linkinfo(), link() and is_link() functions : usage variations - link & lstat[dev] value +--SKIPIF-- + +--FILE-- + +--CLEAN-- + +--EXPECTF-- +*** Checking lstat() on soft link *** +bool(true) +linkinfo() returns : %d +lstat() returns lstat['dev'] as %d + +linkinfo() value matches lstat['dev'] + +*** Checking lstat() on hard link *** +bool(true) +linkinfo() returns : %d +lstat() returns lstat['dev'] as %d + +linkinfo() value matches lstat['dev'] + +*** Checking lstat() on a soft link to directory *** +bool(true) +linkinfo() returns : %d +lstat() returns lstat['dev'] as %d + +linkinfo() value matches lstat['dev'] +Done