diff --git a/tests/expected/rename/symlink b/tests/expected/rename/symlink index 38e687f57..880215f16 100644 --- a/tests/expected/rename/symlink +++ b/tests/expected/rename/symlink @@ -1,3 +1,7 @@ rename_slink.1: `old' -> `new' rename_slink.2: `old' -> `new' rename_slink.3: `old' -> `new' +`rename_slink.1' -> `rename_symlink.1' +target +`rename_slink.2' -> `rename_symlink.2' +target diff --git a/tests/expected/rename/symlink.err b/tests/expected/rename/symlink.err new file mode 100644 index 000000000..956b1193f --- /dev/null +++ b/tests/expected/rename/symlink.err @@ -0,0 +1 @@ +rename: rename_slink.3: No such file or directory diff --git a/tests/ts/rename/symlink b/tests/ts/rename/symlink index 641dc8a5c..91a053968 100755 --- a/tests/ts/rename/symlink +++ b/tests/ts/rename/symlink @@ -38,4 +38,20 @@ for i in rename_slink.{1..3}; do rm -f $i done +touch target +ln -s target rename_slink.1 +$TS_CMD_RENAME -v slink symlink rename_slink.1 >> $TS_OUTPUT 2>> $TS_ERRLOG +readlink rename_symlink.1 >> $TS_OUTPUT 2>> $TS_ERRLOG +rm -f rename_slink.1 rename_symlink.1 + +rm target +ln -s target rename_slink.2 +$TS_CMD_RENAME -v slink symlink rename_slink.2 >> $TS_OUTPUT 2>> $TS_ERRLOG +readlink rename_symlink.2 >> $TS_OUTPUT 2>> $TS_ERRLOG +rm -f rename_slink.2 rename_symlink.2 + +$TS_CMD_RENAME -v slink symlink rename_slink.3 >> $TS_OUTPUT 2>> $TS_ERRLOG +# The error may differ on Mac OS X due to faccessat()/lstat(); normalize it. +sed -i -e 's/\(rename_slink.3\): not accessible/\1/' -e 's/stat of \(rename_slink.3\) failed/\1/' $TS_ERRLOG + ts_finalize