summaryrefslogtreecommitdiff
path: root/tests/scripts/simfail.sh
blob: 394f223dee077eb234cd874a8b7d634e3465aacb (plain) (blame)
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
#!/bin/sh

if [ ! -x "$1" ]
then
	exit 0
fi

START=0
COUNT=1

while true
do
	echo "*** SIMFAIL (START=$START, COUNT=$COUNT) ***"
	export APLWC_SIMULATE_FAILURE_START=$START
	export APLWC_SIMULATE_FAILURE_COUNT=$COUNT
	$1
	ret=$?
	case $ret in
		99)
			COUNT=$((COUNT + 1))
			;;
		98)
			COUNT=1
			START=$((START + 1))
			;;
		0)
			echo "*** SUCCESS ***"
			exit 0
			;;
		*)
			echo "*** FAILURE $ret ***"
			exit $ret
			;;
	esac
done