#!/bin/sh # default: execute all tests TESTS="01_check_rig.sh 02_flash_dfu.sh 03_check_lsusb.sh 04_check_dfu_lsusb.sh 05_flash_dfu_from_app.sh 06_test_simcards.sh" # if command line specifies some specific tests, execute only those if [ $# -ge 1 ]; then TESTS=$* fi TMP=`tempfile` NUM_FAIL=0 # prepare test card ./prepare if [ $? -eq 0 ]; then echo "Prepare done" else echo "Prepare Test FAILED!" exit 2 fi for T in $TESTS; do echo "==> Executing Testcase $T" EXPOUT=${T%%.sh}.out rm $TMP ./$T > $TMP diff -u $EXPOUT $TMP if [ $? -eq 0 ]; then echo "Test $T passed" else echo "Test $T FAILED!" NUM_FAIL=$((NUM_FAIL+1)) fi done echo echo echo "Summary: $NUM_FAIL Tests failed" if [ $NUM_FAIL -gt 0 ]; then exit 1 else exit 0 fi