############################################################################# # Copyright (c) 2013 Linaro # All rights reserved. This program and the accompanying materials # are made available under the terms of the Eclipse Public License v1.0 # which accompanies this distribution, and is available at # http://www.eclipse.org/legal/epl-v10.html # # Contributors: # Linaro ############################################################################# usage() { echo "" echo "Usage: $0 [-h] [-t testnames]" echo "" echo "Runs all tests if no arguments are given." echo "" echo "-h prints this help mesage." echo "-t testnames, run specified tests." echo " currently supported:" echo " ashmem" echo " ashmem_expanded" echo " alarmdev" echo " logger" echo " binder" echo " sync" echo " vfat" echo " evdev" echo "" echo "example:" echo "$ linaro-android-kernel-tests -t \"logger binder\"" } run_ashmemtest() { echo "Running basic ashmemtest." ashmemtest } run_ashmemtest_expanded() { echo "Running expanded ashmemtest." DIR=/data/linaro-android-kernel-test/ashmemtest-expanded FILES=$DIR/*.txt for f in $FILES do BASENAME=${f##*/} TESTNAME="${BASENAME%.*}" echo "running $TESTNAME" ashmemtest-expanded $f &> $DIR/tmp.out diff $DIR/tmp.out $DIR/$TESTNAME.out > /dev/null if [ $? -eq 0 ]; then cat $DIR/tmp.out echo "[ashmem_expanded_$TESTNAME]: test passed" else cat $DIR/tmp.out echo "[ashmem_expanded_$TESTNAME]: test failed" fi rm $DIR/tmp.out done } run_alarm_dev_test() { echo "Running alarm dev test." stop sleep 20 alarm-dev-test start sleep 60 if [ $? -eq 0 ]; then echo "[alarmdevtest]: test passed" else echo "[alarmdevtest]: test failed" fi } run_logger_test() { echo "Running logger dev test." for log in main events radio system do echo "Running for log: $log" loggerdevtest $log if [ $? -eq 0 ]; then echo "[loggerdevtest_$log]: test passed" else echo "[loggerdevtest_$log]: test failed" fi done } run_binder_test() { echo "Running binder test." bindertest.sh } run_sync_test() { echo "Running sync test." sync-basic } run_vfat_test() { echo "Running vfat test." vfat-volid-test.sh } run_evdev_test() { echo "Running evdev test." juice_evtest.sh } run_all() { echo "Running all tests" TESTS="ashmem ashmem_expanded alarmdev logger binder sync vfat evdev" run_tests } run_tests() { for TEST in $TESTS; do case $TEST in ashmem) run_ashmemtest ;; ashmem_expanded) run_ashmemtest_expanded ;; alarmdev) run_alarm_dev_test ;; logger) run_logger_test ;; binder) run_binder_test ;; sync) run_sync_test ;; vfat) run_vfat_test ;; evdev) run_evdev_test ;; *) echo "" echo "Unrecognized test $TEST." usage exit ;; esac done } TESTS= # no input argument # run all tests if [ $# -eq 0 ]; then run_all exit fi while getopts "ht:" OPT do case $OPT in h) usage exit 1 ;; t) TESTS=$OPTARG ;; *) usage exit esac done run_tests