1*cd60bc56SAndroid Build Coastguard Worker# Common functions for shell testcases 2*cd60bc56SAndroid Build Coastguard Worker 3*cd60bc56SAndroid Build Coastguard WorkerPASS () { 4*cd60bc56SAndroid Build Coastguard Worker echo "PASS" 5*cd60bc56SAndroid Build Coastguard Worker exit 0 6*cd60bc56SAndroid Build Coastguard Worker} 7*cd60bc56SAndroid Build Coastguard Worker 8*cd60bc56SAndroid Build Coastguard WorkerFAIL () { 9*cd60bc56SAndroid Build Coastguard Worker echo "FAIL" "$@" 10*cd60bc56SAndroid Build Coastguard Worker exit 2 11*cd60bc56SAndroid Build Coastguard Worker} 12*cd60bc56SAndroid Build Coastguard Worker 13*cd60bc56SAndroid Build Coastguard WorkerFAIL_IF_SIGNAL () { 14*cd60bc56SAndroid Build Coastguard Worker ret="$1" 15*cd60bc56SAndroid Build Coastguard Worker if [ "$ret" -gt 127 ]; then 16*cd60bc56SAndroid Build Coastguard Worker signame=$(kill -l $((ret - 128))) 17*cd60bc56SAndroid Build Coastguard Worker FAIL "Killed by SIG$signame" 18*cd60bc56SAndroid Build Coastguard Worker fi 19*cd60bc56SAndroid Build Coastguard Worker} 20*cd60bc56SAndroid Build Coastguard Worker 21*cd60bc56SAndroid Build Coastguard Workerif [ -z "$TEST_BINDIR" ]; then 22*cd60bc56SAndroid Build Coastguard Worker TEST_BINDIR=.. 23*cd60bc56SAndroid Build Coastguard Workerfi 24*cd60bc56SAndroid Build Coastguard Worker 25*cd60bc56SAndroid Build Coastguard WorkerDTC=${TEST_BINDIR}/dtc 26*cd60bc56SAndroid Build Coastguard WorkerDTGET=${TEST_BINDIR}/fdtget 27*cd60bc56SAndroid Build Coastguard WorkerDTPUT=${TEST_BINDIR}/fdtput 28*cd60bc56SAndroid Build Coastguard WorkerFDTDUMP=${TEST_BINDIR}/fdtdump 29*cd60bc56SAndroid Build Coastguard WorkerFDTOVERLAY=${TEST_BINDIR}/fdtoverlay 30*cd60bc56SAndroid Build Coastguard Worker 31*cd60bc56SAndroid Build Coastguard Workerverbose_run () { 32*cd60bc56SAndroid Build Coastguard Worker if [ -z "$QUIET_TEST" ]; then 33*cd60bc56SAndroid Build Coastguard Worker "$@" 34*cd60bc56SAndroid Build Coastguard Worker else 35*cd60bc56SAndroid Build Coastguard Worker "$@" > /dev/null 2> /dev/null 36*cd60bc56SAndroid Build Coastguard Worker fi 37*cd60bc56SAndroid Build Coastguard Worker} 38*cd60bc56SAndroid Build Coastguard Worker 39*cd60bc56SAndroid Build Coastguard Workerverbose_run_check () { 40*cd60bc56SAndroid Build Coastguard Worker verbose_run "$@" 41*cd60bc56SAndroid Build Coastguard Worker ret="$?" 42*cd60bc56SAndroid Build Coastguard Worker FAIL_IF_SIGNAL $ret 43*cd60bc56SAndroid Build Coastguard Worker if [ $ret != 0 ]; then 44*cd60bc56SAndroid Build Coastguard Worker FAIL "Returned error code $ret" 45*cd60bc56SAndroid Build Coastguard Worker fi 46*cd60bc56SAndroid Build Coastguard Worker} 47*cd60bc56SAndroid Build Coastguard Worker 48*cd60bc56SAndroid Build Coastguard Workerverbose_run_log () { 49*cd60bc56SAndroid Build Coastguard Worker LOG="$1" 50*cd60bc56SAndroid Build Coastguard Worker shift 51*cd60bc56SAndroid Build Coastguard Worker "$@" > "$LOG" 2>&1 52*cd60bc56SAndroid Build Coastguard Worker ret=$? 53*cd60bc56SAndroid Build Coastguard Worker if [ -z "$QUIET_TEST" ]; then 54*cd60bc56SAndroid Build Coastguard Worker cat "$LOG" >&2 55*cd60bc56SAndroid Build Coastguard Worker fi 56*cd60bc56SAndroid Build Coastguard Worker return $ret 57*cd60bc56SAndroid Build Coastguard Worker} 58*cd60bc56SAndroid Build Coastguard Worker 59*cd60bc56SAndroid Build Coastguard Workerverbose_run_log_check () { 60*cd60bc56SAndroid Build Coastguard Worker verbose_run_log "$@" 61*cd60bc56SAndroid Build Coastguard Worker ret="$?" 62*cd60bc56SAndroid Build Coastguard Worker FAIL_IF_SIGNAL $ret 63*cd60bc56SAndroid Build Coastguard Worker if [ $ret != 0 ]; then 64*cd60bc56SAndroid Build Coastguard Worker FAIL "Returned error code $ret" 65*cd60bc56SAndroid Build Coastguard Worker fi 66*cd60bc56SAndroid Build Coastguard Worker} 67*cd60bc56SAndroid Build Coastguard Worker 68