1
0
mirror of git://git.sv.gnu.org/coreutils.git synced 2026-04-20 10:51:48 +02:00

Adapt tests/readlink/ to use test-lib.sh.

This commit is contained in:
Jim Meyering
2007-09-12 18:14:36 +02:00
parent 5cb2610710
commit 10d190b8b6
5 changed files with 233 additions and 323 deletions

View File

@@ -4,3 +4,5 @@ EXTRA_DIST = $(TESTS)
TESTS_ENVIRONMENT = \
CU_TEST_NAME=`basename $(abs_srcdir)`,$$tst \
PATH="$(VG_PATH_PREFIX)`pwd`/../../src$(PATH_SEPARATOR)$$PATH"
include $(top_srcdir)/tests/check.mk

View File

@@ -21,114 +21,90 @@ if test "$VERBOSE" = yes; then
readlink --version
fi
. $srcdir/../test-lib.sh
pwd=`pwd`
t0=`echo "$0" |sed 's,.*/,,'`.tmp; tmp=$t0/$$
trap 'status=$?; cd "$pwd" && chmod -R u+rwx $t0 && rm -rf $t0 && exit $status' 0
trap 'status=$?; (exit $status); exit $status' 1 2 13 15
my_pwd=$("$abs_top_builddir/src/pwd")
tmp=d
fail=1
while :; do
bindir=`cd ../../src && pwd`|| break
my_pwd=`"$bindir/pwd"` || break
fail=0
mkdir $tmp || framework_failure
cd $tmp || framework_failure
mkdir -p $tmp || break
cd $tmp || break
mkdir subdir removed || framework_failure
touch regfile || framework_failure
mkdir subdir removed || break
touch regfile || break
ln -s regfile link1 || framework_failure
ln -s subdir link2 || framework_failure
ln -s missing link3 || framework_failure
ln -s subdir/missing link4 || framework_failure
ln -s regfile link1 || break
ln -s subdir link2 || break
ln -s missing link3 || break
ln -s subdir/missing link4 || break
cd "$pwd/$tmp/removed" || framework_failure
fail=0
break
done
if test $fail = 1; then
echo "$0: failure in testing framework" 1>&2
(exit 1); exit 1
fail=0
# Skip this test if the system doesn't let you remove the working directory.
if rmdir ../removed 2>/dev/null; then
v=`readlink -e .` && fail=1
test -z "$v" || fail=1
fi
fail=1
while :; do
cd "$pwd/$tmp/removed" || break
# Skip this test if the system doesn't let you remove the working directory.
if rmdir ../removed 2>/dev/null; then
v=`readlink -e .` && break
test -z "$v" || break
fi
cd "$pwd/$tmp" || break
fail=0
break
done
if test $fail = 1; then
(exit $fail); exit $fail
fi
cd "$pwd/$tmp" || fail=1
for p in "" "$pwd/$tmp/"; do
fail=1
v=`readlink -e "${p}regfile"` || break
test "$v" = "$my_pwd/$tmp/regfile" || break
v=`readlink -e "${p}regfile"` || fail=1
test "$v" = "$my_pwd/$tmp/regfile" || fail=1
v=`readlink -e "${p}./regfile/"` && break
test -z "$v" || break
v=`readlink -e "${p}./regfile/"` && fail=1
test -z "$v" || fail=1
v=`readlink -e "${p}subdir"` || break
test "$v" = "$my_pwd/$tmp/subdir" || break
v=`readlink -e "${p}subdir"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
v=`readlink -e "${p}./subdir/"` || break
test "$v" = "$my_pwd/$tmp/subdir" || break
v=`readlink -e "${p}./subdir/"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
v=`readlink -e "${p}missing"` && break
test -z "$v" || break
v=`readlink -e "${p}missing"` && fail=1
test -z "$v" || fail=1
v=`readlink -e "${p}./missing/"` && break
test -z "$v" || break
v=`readlink -e "${p}./missing/"` && fail=1
test -z "$v" || fail=1
v=`readlink -e "${p}link1"` || break
test "$v" = "$my_pwd/$tmp/regfile" || break
v=`readlink -e "${p}link1"` || fail=1
test "$v" = "$my_pwd/$tmp/regfile" || fail=1
v=`readlink -e "${p}./link1/"` && break
test -z "$v" || break
v=`readlink -e "${p}./link1/"` && fail=1
test -z "$v" || fail=1
v=`readlink -e "${p}link1/more"` && break
test -z "$v" || break
v=`readlink -e "${p}link1/more"` && fail=1
test -z "$v" || fail=1
v=`readlink -e "${p}link2"` || break
test "$v" = "$my_pwd/$tmp/subdir" || break
v=`readlink -e "${p}link2"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
v=`readlink -e "${p}./link2/"` || break
test "$v" = "$my_pwd/$tmp/subdir" || break
v=`readlink -e "${p}./link2/"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
v=`readlink -e "${p}link2/more"` && break
test -z "$v" || break
v=`readlink -e "${p}link2/more"` && fail=1
test -z "$v" || fail=1
v=`readlink -e "${p}link3"` && break
test -z "$v" || break
v=`readlink -e "${p}link3"` && fail=1
test -z "$v" || fail=1
v=`readlink -e "${p}./link3/"` && break
test -z "$v" || break
v=`readlink -e "${p}./link3/"` && fail=1
test -z "$v" || fail=1
v=`readlink -e "${p}link3/more"` && break
test -z "$v" || break
v=`readlink -e "${p}link3/more"` && fail=1
test -z "$v" || fail=1
v=`readlink -e "${p}link4"` && break
test -z "$v" || break
v=`readlink -e "${p}link4"` && fail=1
test -z "$v" || fail=1
v=`readlink -e "${p}./link4/"` && break
test -z "$v" || break
v=`readlink -e "${p}./link4/"` && fail=1
test -z "$v" || fail=1
v=`readlink -e "${p}link4/more"` && break
test -z "$v" || break
fail=0
v=`readlink -e "${p}link4/more"` && fail=1
test -z "$v" || fail=1
done
(exit $fail); exit $fail

View File

@@ -21,147 +21,123 @@ if test "$VERBOSE" = yes; then
readlink --version
fi
. $srcdir/../test-lib.sh
pwd=`pwd`
t0=`echo "$0" |sed 's,.*/,,'`.tmp; tmp=$t0/$$
trap 'status=$?; cd "$pwd" && chmod -R u+rwx $t0 && rm -rf $t0 && exit $status' 0
trap 'status=$?; (exit $status); exit $status' 1 2 13 15
my_pwd=$("$abs_top_builddir/src/pwd")
tmp=d
fail=1
while :; do
bindir=`cd ../../src && pwd`|| break
my_pwd=`"$bindir/pwd"` || break
fail=0
mkdir $tmp || framework_failure
cd $tmp || framework_failure
mkdir -p $tmp || break
cd $tmp || break
mkdir subdir removed || framework_failure
touch regfile || framework_failure
mkdir subdir removed || break
touch regfile || break
ln -s regfile link1 || framework_failure
ln -s subdir link2 || framework_failure
ln -s missing link3 || framework_failure
ln -s subdir/missing link4 || framework_failure
ln -s regfile link1 || break
ln -s subdir link2 || break
ln -s missing link3 || break
ln -s subdir/missing link4 || break
cd "$pwd/$tmp/removed" || framework_failure
fail=0
break
done
if test $fail = 1; then
echo "$0: failure in testing framework" 1>&2
(exit 1); exit 1
fail=0
# Skip this test if the system doesn't let you remove the working directory.
if rmdir ../removed 2>/dev/null; then
v=`readlink -e .` && fail=1
test -z "$v" || fail=1
fi
fail=1
while :; do
cd "$pwd/$tmp/removed" || break
# Skip this test if the system doesn't let you remove the working directory.
if rmdir ../removed 2>/dev/null; then
v=`readlink -f .` && break
test -z "$v" || break
fi
cd "$pwd/$tmp" || break
fail=0
break
done
if test $fail = 1; then
(exit $fail); exit $fail
fi
cd "$pwd/$tmp" || fail=1
for p in "" "$pwd/$tmp/"; do
fail=1
v=`readlink -f "${p}regfile"` || break
test "$v" = "$my_pwd/$tmp/regfile" || break
v=`readlink -f "${p}regfile"` || fail=1
test "$v" = "$my_pwd/$tmp/regfile" || fail=1
v=`readlink -f "${p}./regfile/"` && break
test -z "$v" || break
v=`readlink -f "${p}./regfile/"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}regfile/more"` && break
test -z "$v" || break
v=`readlink -f "${p}regfile/more"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}./regfile/more/"` && break
test -z "$v" || break
v=`readlink -f "${p}./regfile/more/"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}subdir"` || break
test "$v" = "$my_pwd/$tmp/subdir" || break
v=`readlink -f "${p}subdir"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
v=`readlink -f "${p}./subdir/"` || break
test "$v" = "$my_pwd/$tmp/subdir" || break
v=`readlink -f "${p}./subdir/"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
v=`readlink -f "${p}subdir/more"` || break
test "$v" = "$my_pwd/$tmp/subdir/more" || break
v=`readlink -f "${p}subdir/more"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir/more" || fail=1
v=`readlink -f "${p}./subdir/more/"` && break
test -z "$v" || break
v=`readlink -f "${p}./subdir/more/"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}missing"` || break
test "$v" = "$my_pwd/$tmp/missing" || break
v=`readlink -f "${p}missing"` || fail=1
test "$v" = "$my_pwd/$tmp/missing" || fail=1
v=`readlink -f "${p}./missing/"` && break
test -z "$v" || break
v=`readlink -f "${p}./missing/"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}missing/more"` && break
test -z "$v" || break
v=`readlink -f "${p}missing/more"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}./missing/more/"` && break
test -z "$v" || break
v=`readlink -f "${p}./missing/more/"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}link1"` || break
test "$v" = "$my_pwd/$tmp/regfile" || break
v=`readlink -f "${p}link1"` || fail=1
test "$v" = "$my_pwd/$tmp/regfile" || fail=1
v=`readlink -f "${p}./link1/"` && break
test -z "$v" || break
v=`readlink -f "${p}./link1/"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}link1/more"` && break
test -z "$v" || break
v=`readlink -f "${p}link1/more"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}./link1/more/"` && break
test -z "$v" || break
v=`readlink -f "${p}./link1/more/"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}link2"` || break
test "$v" = "$my_pwd/$tmp/subdir" || break
v=`readlink -f "${p}link2"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
v=`readlink -f "${p}./link2/"` || break
test "$v" = "$my_pwd/$tmp/subdir" || break
v=`readlink -f "${p}./link2/"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
v=`readlink -f "${p}link2/more"` || break
test "$v" = "$my_pwd/$tmp/subdir/more" || break
v=`readlink -f "${p}link2/more"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir/more" || fail=1
v=`readlink -f "${p}./link2/more/"` && break
test -z "$v" || break
v=`readlink -f "${p}./link2/more/"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}link2/more/more2"` && break
test -z "$v" || break
v=`readlink -f "${p}link2/more/more2"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}./link2/more/more2/"` && break
test -z "$v" || break
v=`readlink -f "${p}./link2/more/more2/"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}link3"` || break
test "$v" = "$my_pwd/$tmp/missing" || break
v=`readlink -f "${p}link3"` || fail=1
test "$v" = "$my_pwd/$tmp/missing" || fail=1
v=`readlink -f "${p}./link3/"` && break
test -z "$v" || break
v=`readlink -f "${p}./link3/"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}link3/more"` && break
test -z "$v" || break
v=`readlink -f "${p}link3/more"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}./link3/more/"` && break
test -z "$v" || break
v=`readlink -f "${p}./link3/more/"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}link4"` || break
test "$v" = "$my_pwd/$tmp/subdir/missing" || break
v=`readlink -f "${p}link4"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir/missing" || fail=1
v=`readlink -f "${p}./link4/"` && break
test -z "$v" || break
v=`readlink -f "${p}./link4/"` && fail=1
test -z "$v" || fail=1
v=`readlink -f "${p}link4/more"` && break
test -z "$v" || break
fail=0
v=`readlink -f "${p}link4/more"` && fail=1
test -z "$v" || fail=1
done
(exit $fail); exit $fail

View File

@@ -21,150 +21,127 @@ if test "$VERBOSE" = yes; then
readlink --version
fi
. $srcdir/../test-lib.sh
pwd=`pwd`
t0=`echo "$0" |sed 's,.*/,,'`.tmp; tmp=$t0/$$
trap 'status=$?; cd "$pwd" && chmod -R u+rwx $t0 && rm -rf $t0 && exit $status' 0
trap 'status=$?; (exit $status); exit $status' 1 2 13 15
my_pwd=$("$abs_top_builddir/src/pwd")
tmp=d
fail=1
while :; do
bindir=`cd ../../src && pwd`|| break
my_pwd=`"$bindir/pwd"` || break
fail=0
mkdir $tmp || framework_failure
cd $tmp || framework_failure
mkdir -p $tmp || break
cd $tmp || break
mkdir subdir removed || framework_failure
touch regfile || framework_failure
mkdir subdir removed || break
touch regfile || break
ln -s regfile link1 || framework_failure
ln -s subdir link2 || framework_failure
ln -s missing link3 || framework_failure
ln -s subdir/missing link4 || framework_failure
ln -s regfile link1 || break
ln -s subdir link2 || break
ln -s missing link3 || break
ln -s subdir/missing link4 || break
cd "$pwd/$tmp/removed" || framework_failure
fail=0
break
done
if test $fail = 1; then
echo "$0: failure in testing framework" 1>&2
(exit 1); exit 1
fail=0
# Skip this test if the system doesn't let you remove the working directory.
if rmdir ../removed 2>/dev/null; then
v=`readlink -e .` && fail=1
test -z "$v" || fail=1
fi
fail=1
while :; do
cd "$pwd/$tmp/removed" || break
# Skip this test if the system doesn't let you remove the working directory.
if rmdir ../removed 2>/dev/null; then
v=`readlink -m .` && break
test -z "$v" || break
fi
cd "$pwd/$tmp" || break
fail=0
break
done
if test $fail = 1; then
(exit $fail); exit $fail
fi
cd "$pwd/$tmp" || fail=1
for p in "" "$pwd/$tmp/"; do
fail=1
v=`readlink -m "${p}regfile"` || break
test "$v" = "$my_pwd/$tmp/regfile" || break
v=`readlink -m "${p}regfile"` || fail=1
test "$v" = "$my_pwd/$tmp/regfile" || fail=1
v=`readlink -m "${p}./regfile/"` || break
test "$v" = "$my_pwd/$tmp/regfile" || break
v=`readlink -m "${p}./regfile/"` || fail=1
test "$v" = "$my_pwd/$tmp/regfile" || fail=1
v=`readlink -m "${p}regfile/more"` || break
test "$v" = "$my_pwd/$tmp/regfile/more" || break
v=`readlink -m "${p}regfile/more"` || fail=1
test "$v" = "$my_pwd/$tmp/regfile/more" || fail=1
v=`readlink -m "${p}./regfile/more/"` || break
test "$v" = "$my_pwd/$tmp/regfile/more" || break
v=`readlink -m "${p}./regfile/more/"` || fail=1
test "$v" = "$my_pwd/$tmp/regfile/more" || fail=1
v=`readlink -m "${p}subdir"` || break
test "$v" = "$my_pwd/$tmp/subdir" || break
v=`readlink -m "${p}subdir"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
v=`readlink -m "${p}./subdir/"` || break
test "$v" = "$my_pwd/$tmp/subdir" || break
v=`readlink -m "${p}./subdir/"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
v=`readlink -m "${p}subdir/more"` || break
test "$v" = "$my_pwd/$tmp/subdir/more" || break
v=`readlink -m "${p}subdir/more"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir/more" || fail=1
v=`readlink -m "${p}./subdir/more/"` || break
test "$v" = "$my_pwd/$tmp/subdir/more" || break
v=`readlink -m "${p}./subdir/more/"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir/more" || fail=1
v=`readlink -m "${p}missing"` || break
test "$v" = "$my_pwd/$tmp/missing" || break
v=`readlink -m "${p}missing"` || fail=1
test "$v" = "$my_pwd/$tmp/missing" || fail=1
v=`readlink -m "${p}./missing/"` || break
test "$v" = "$my_pwd/$tmp/missing" || break
v=`readlink -m "${p}./missing/"` || fail=1
test "$v" = "$my_pwd/$tmp/missing" || fail=1
v=`readlink -m "${p}missing/more"` || break
test "$v" = "$my_pwd/$tmp/missing/more" || break
v=`readlink -m "${p}missing/more"` || fail=1
test "$v" = "$my_pwd/$tmp/missing/more" || fail=1
v=`readlink -m "${p}./missing/more/"` || break
test "$v" = "$my_pwd/$tmp/missing/more" || break
v=`readlink -m "${p}./missing/more/"` || fail=1
test "$v" = "$my_pwd/$tmp/missing/more" || fail=1
v=`readlink -m "${p}link1"` || break
test "$v" = "$my_pwd/$tmp/regfile" || break
v=`readlink -m "${p}link1"` || fail=1
test "$v" = "$my_pwd/$tmp/regfile" || fail=1
v=`readlink -m "${p}./link1/"` || break
test "$v" = "$my_pwd/$tmp/regfile" || break
v=`readlink -m "${p}./link1/"` || fail=1
test "$v" = "$my_pwd/$tmp/regfile" || fail=1
v=`readlink -m "${p}link1/more"` || break
test "$v" = "$my_pwd/$tmp/regfile/more" || break
v=`readlink -m "${p}link1/more"` || fail=1
test "$v" = "$my_pwd/$tmp/regfile/more" || fail=1
v=`readlink -m "${p}./link1/more/"` || break
test "$v" = "$my_pwd/$tmp/regfile/more" || break
v=`readlink -m "${p}./link1/more/"` || fail=1
test "$v" = "$my_pwd/$tmp/regfile/more" || fail=1
v=`readlink -m "${p}link2"` || break
test "$v" = "$my_pwd/$tmp/subdir" || break
v=`readlink -m "${p}link2"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
v=`readlink -m "${p}./link2/"` || break
test "$v" = "$my_pwd/$tmp/subdir" || break
v=`readlink -m "${p}./link2/"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir" || fail=1
v=`readlink -m "${p}link2/more"` || break
test "$v" = "$my_pwd/$tmp/subdir/more" || break
v=`readlink -m "${p}link2/more"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir/more" || fail=1
v=`readlink -m "${p}./link2/more/"` || break
test "$v" = "$my_pwd/$tmp/subdir/more" || break
v=`readlink -m "${p}./link2/more/"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir/more" || fail=1
v=`readlink -m "${p}link2/more/more2"` || break
test "$v" = "$my_pwd/$tmp/subdir/more/more2" || break
v=`readlink -m "${p}link2/more/more2"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir/more/more2" || fail=1
v=`readlink -m "${p}./link2/more/more2/"` || break
test "$v" = "$my_pwd/$tmp/subdir/more/more2" || break
v=`readlink -m "${p}./link2/more/more2/"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir/more/more2" || fail=1
v=`readlink -m "${p}link3"` || break
test "$v" = "$my_pwd/$tmp/missing" || break
v=`readlink -m "${p}link3"` || fail=1
test "$v" = "$my_pwd/$tmp/missing" || fail=1
v=`readlink -m "${p}./link3/"` || break
test "$v" = "$my_pwd/$tmp/missing" || break
v=`readlink -m "${p}./link3/"` || fail=1
test "$v" = "$my_pwd/$tmp/missing" || fail=1
v=`readlink -m "${p}link3/more"` || break
test "$v" = "$my_pwd/$tmp/missing/more" || break
v=`readlink -m "${p}link3/more"` || fail=1
test "$v" = "$my_pwd/$tmp/missing/more" || fail=1
v=`readlink -m "${p}./link3/more/"` || break
test "$v" = "$my_pwd/$tmp/missing/more" || break
v=`readlink -m "${p}./link3/more/"` || fail=1
test "$v" = "$my_pwd/$tmp/missing/more" || fail=1
v=`readlink -m "${p}link4"` || break
test "$v" = "$my_pwd/$tmp/subdir/missing" || break
v=`readlink -m "${p}link4"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir/missing" || fail=1
v=`readlink -m "${p}./link4/"` || break
test "$v" = "$my_pwd/$tmp/subdir/missing" || break
v=`readlink -m "${p}./link4/"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir/missing" || fail=1
v=`readlink -m "${p}link4/more"` || break
test "$v" = "$my_pwd/$tmp/subdir/missing/more" || break
v=`readlink -m "${p}link4/more"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir/missing/more" || fail=1
v=`readlink -m "${p}./link4/more/"` || break
test "$v" = "$my_pwd/$tmp/subdir/missing/more" || break
v=`readlink -m "${p}./link4/more/"` || fail=1
test "$v" = "$my_pwd/$tmp/subdir/missing/more" || fail=1
fail=0
done
(exit $fail); exit $fail

View File

@@ -1,7 +1,7 @@
#!/bin/sh
# test for readlink mode.
# Copyright (C) 2004, 2006 Free Software Foundation, Inc.
# Copyright (C) 2004, 2006, 2007 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -21,49 +21,28 @@ if test "$VERBOSE" = yes; then
readlink --version
fi
pwd=`pwd`
t0=`echo "$0" |sed 's,.*/,,'`.tmp; tmp=$t0/$$
trap 'status=$?; cd "$pwd" && chmod -R u+rwx $t0 && rm -rf $t0 && exit $status' 0
trap 'status=$?; (exit $status); exit $status' 1 2 13 15
. $srcdir/../test-lib.sh
fail=1
while :; do
mkdir -p $tmp || break
cd $tmp || break
mkdir subdir || framework_failure
touch regfile || framework_failure
ln -s regfile link1 || framework_failure
ln -s missing link2 || framework_failure
mkdir subdir || break
touch regfile || break
ln -s regfile link1 || break
ln -s missing link2 || break
fail=0
fail=0
break
done
v=`readlink link1` || fail=1
test "$v" = regfile || fail=1
if test $fail = 1; then
echo "$0: failure in testing framework" 1>&2
(exit 1); exit 1
fi
v=`readlink link2` || fail=1
test "$v" = missing || fail=1
fail=1
while :; do
v=`readlink link1` || break
test "$v" = regfile || break
v=`readlink subdir` && fail=1
test -z "$v" || fail=1
v=`readlink link2` || break
test "$v" = missing || break
v=`readlink regfile` && fail=1
test -z "$v" || fail=1
v=`readlink subdir` && break
test -z "$v" || break
v=`readlink regfile` && break
test -z "$v" || break
v=`readlink missing` && break
test -z "$v" || break
fail=0
break
done
v=`readlink missing` && fail=1
test -z "$v" || fail=1
(exit $fail); exit $fail