#!/bin/sh # Readlink tests. # Copyright 2006 by Natanael Copa # Licensed under GPLv2, see file LICENSE in this source tree. . ./testing.sh TESTDIR=readlink_testdir TESTFILE="$TESTDIR/testfile" TESTLINK="testlink" FAILLINK="$TESTDIR/$TESTDIR/testlink" # create the dir and test files mkdir -p "./$TESTDIR" touch "./$TESTFILE" ln -s "./$TESTFILE" "./$TESTLINK" testing "readlink on a file" "readlink ./$TESTFILE" "" "" "" testing "readlink on a link" "readlink ./$TESTLINK" "./$TESTFILE\n" "" "" optional FEATURE_READLINK_FOLLOW # shell's $PWD may leave symlinks unresolved. # "pwd" may be a built-in and have the same problem. # External pwd _can't_ have that problem (current dir on Unix is physical). pwd=`which pwd` pwd=`$pwd` testing "readlink -f on a file" "readlink -f ./$TESTFILE" "$pwd/$TESTFILE\n" "" "" testing "readlink -f on a link" "readlink -f ./$TESTLINK" "$pwd/$TESTFILE\n" "" "" testing "readlink -f on an invalid link" "readlink -f ./$FAILLINK" "" "" "" testing "readlink -f on a weird dir" "readlink -f $TESTDIR/../$TESTFILE" "$pwd/$TESTFILE\n" "" "" # clean up rm -r "$TESTLINK" "$TESTDIR" exit $((FAILCOUNT <= 255 ? FAILCOUNT : 255))