Welcome to mirror list, hosted at ThFree Co, Russian Federation.

readlink.tests « testsuite - git.busybox.net/busybox.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 27b52f6c4b025e1c0b773bd184f531570bfdbb50 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/bin/sh

# Readlink tests.
# Copyright 2006 by Natanael Copa <n@tanael.org>
# 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))