xref: /freebsd/bin/sh/tests/builtins/case9.0 (revision d0b2dbfa0ecf2bbc9709efc5e20baf8e4b44bbbf)
1*13de33a5SJulio Merino
2*13de33a5SJulio Merinoerrors=0
3*13de33a5SJulio Merino
4*13de33a5SJulio Merinof() {
5*13de33a5SJulio Merino	result=
6*13de33a5SJulio Merino	case $1 in
7*13de33a5SJulio Merino	a) result=${result}a ;;
8*13de33a5SJulio Merino	b) result=${result}b ;&
9*13de33a5SJulio Merino	c) result=${result}c ;&
10*13de33a5SJulio Merino	d) result=${result}d ;;
11*13de33a5SJulio Merino	e) result=${result}e ;&
12*13de33a5SJulio Merino	esac
13*13de33a5SJulio Merino}
14*13de33a5SJulio Merino
15*13de33a5SJulio Merinocheck() {
16*13de33a5SJulio Merino	f "$1"
17*13de33a5SJulio Merino	if [ "$result" != "$2" ]; then
18*13de33a5SJulio Merino		printf "For %s, expected %s got %s\n" "$1" "$2" "$result"
19*13de33a5SJulio Merino		errors=$((errors + 1))
20*13de33a5SJulio Merino	fi
21*13de33a5SJulio Merino}
22*13de33a5SJulio Merino
23*13de33a5SJulio Merinocheck '' ''
24*13de33a5SJulio Merinocheck a a
25*13de33a5SJulio Merinocheck b bcd
26*13de33a5SJulio Merinocheck c cd
27*13de33a5SJulio Merinocheck d d
28*13de33a5SJulio Merinocheck e e
29*13de33a5SJulio Merino
30*13de33a5SJulio Merinoif ! (case 1 in
31*13de33a5SJulio Merino	1) false ;&
32*13de33a5SJulio Merino	2) true ;;
33*13de33a5SJulio Merinoesac) then
34*13de33a5SJulio Merino	echo "Subshell bad"
35*13de33a5SJulio Merino	errors=$((errors + 1))
36*13de33a5SJulio Merinofi
37*13de33a5SJulio Merino
38*13de33a5SJulio Merinoexit $((errors != 0))
39