freebsd-dev/bin/sh/tests/builtins/case9.0
Julio Merino 13de33a5dc Migrate tools/regression/bin/ tests to the new layout.
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)
2013-12-11 04:09:17 +00:00

40 lines
515 B
Plaintext

# $FreeBSD$
errors=0
f() {
result=
case $1 in
a) result=${result}a ;;
b) result=${result}b ;&
c) result=${result}c ;&
d) result=${result}d ;;
e) result=${result}e ;&
esac
}
check() {
f "$1"
if [ "$result" != "$2" ]; then
printf "For %s, expected %s got %s\n" "$1" "$2" "$result"
errors=$((errors + 1))
fi
}
check '' ''
check a a
check b bcd
check c cd
check d d
check e e
if ! (case 1 in
1) false ;&
2) true ;;
esac) then
echo "Subshell bad"
errors=$((errors + 1))
fi
exit $((errors != 0))