From fe18e9f7e5fb3b856d3da936dd6bd4c8e620635a Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Fri, 16 Nov 2007 11:04:31 +0100 Subject: Port readlink-fp-loop to Solaris. * tests/misc/readlink-fp-loop (symlink_loop_msg): New var, which records the symlink-loop message, whose wording is not standardized by Posix. Do not rely on "echo x > p/1" to work when p/1 has a lot of indirect symlinks. (I'm surprised that it works on Linux. Perhaps a Linux bug?) --- tests/misc/readlink-fp-loop | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'tests/misc/readlink-fp-loop') diff --git a/tests/misc/readlink-fp-loop b/tests/misc/readlink-fp-loop index 9a4472b6f..ee65e2816 100755 --- a/tests/misc/readlink-fp-loop +++ b/tests/misc/readlink-fp-loop @@ -45,8 +45,12 @@ compare out exp || fail=1 # Construct a real loop and make sure readlink still detects it. ln -sf ../s/1 d/2 || framework_failure readlink -v -e p/1 2> out && fail=1 -echo readlink: p/1: Too many levels of symbolic links > exp || framework_failure -compare out exp || fail=1 +readlink_msg=$(cat out) +case $readlink_msg in + 'readlink: p/1: '*) ;; + *) fail=1;; +esac +symlink_loop_msg=${readlink_msg#'readlink: p/1: '} # Exercise the hash table code. ln -nsf ../s/3 d/2 || framework_failure @@ -55,7 +59,7 @@ ln -nsf ../p/5 d/4 || framework_failure ln -nsf ../p/6 d/5 || framework_failure ln -nsf ../p/7 d/6 || framework_failure ln -nsf ../p/8 d/7 || framework_failure -echo x > p/1 || framework_failure +echo x > d/8 || framework_failure readlink -v -e p/1 > out || fail=1 echo "$cwd/d/8" > exp || fail=1 compare out exp || fail=1 @@ -63,7 +67,7 @@ compare out exp || fail=1 # A trivial loop ln -s loop loop readlink -v -e loop 2> out && fail=1 -echo readlink: loop: Too many levels of symbolic links > exp || framework_failure +echo "readlink: loop: $symlink_loop_msg" > exp || framework_failure compare out exp || fail=1 (exit $fail); exit $fail -- cgit v1.2.3