cfc6ad9bc6
This change is a proof of concept on how to easily integrate existing tests from the tools/regression/ hierarchy into the /usr/tests/ test suite and on how to adapt them to the new layout for src. To achieve these goals, this change: - Moves tests from tools/regression/bin/<tool>/ to bin/<tool>/tests/. - Renames the previous regress.sh files to legacy_test.sh. - Adds Makefiles to build and install the tests and all their supporting data files into /usr/tests/bin/. - Plugs the legacy_test test programs into the test suite using the new TAP backend for Kyua (appearing in 0.8) so that the code of the test programs does not have to change. - Registers the new directories in the BSD.test.dist mtree file. Reviewed by: freebsd-testing Approved by: rpaulo (mentor)
31 lines
643 B
Plaintext
31 lines
643 B
Plaintext
# $FreeBSD$
|
|
set -e
|
|
|
|
P=${TMPDIR:-/tmp}
|
|
cd $P
|
|
T=$(mktemp -d sh-test.XXXXXX)
|
|
|
|
chmod 0 $T
|
|
if [ `id -u` -ne 0 ]; then
|
|
# Root can always cd, regardless of directory permissions.
|
|
cd -L $T 2>/dev/null && exit 1
|
|
[ "$PWD" = "$P" ]
|
|
[ "$(pwd)" = "$P" ]
|
|
cd -P $T 2>/dev/null && exit 1
|
|
[ "$PWD" = "$P" ]
|
|
[ "$(pwd)" = "$P" ]
|
|
fi
|
|
|
|
chmod 755 $T
|
|
cd $T
|
|
mkdir -p 1/2/3
|
|
ln -s 1/2 link1
|
|
ln -s 2/3 1/link2
|
|
(cd -L 1/../1 && [ "$(pwd -L)" = "$P/$T/1" ])
|
|
(cd -L link1 && [ "$(pwd -L)" = "$P/$T/link1" ])
|
|
(cd -L link1 && [ "$(pwd -P)" = "$P/$T/1/2" ])
|
|
(cd -P link1 && [ "$(pwd -L)" = "$P/$T/1/2" ])
|
|
(cd -P link1 && [ "$(pwd -P)" = "$P/$T/1/2" ])
|
|
|
|
rm -rf ${P}/${T}
|