| #!/bin/bash |
| |
| function usage { |
| echo "Usage: [OPTIONS] [SUITES]" |
| echo "Run all of the test suites" |
| echo "" |
| echo " -h, --help Print this usage message" |
| echo "" |
| echo " The suites should be listed by the name of their directory." |
| echo " All other options are passed directly to the suites." |
| exit |
| } |
| |
| function process_option { |
| case "$1" in |
| -h|--help) usage;; |
| -*|--*) test_opts="$test_opts $1";; |
| *) tests="$tests $1" |
| esac |
| } |
| |
| for arg in "$@"; do |
| process_option $arg |
| done |
| |
| echo $test_opts |
| |
| function run_tests { |
| base_dir=$(dirname $0) |
| for test_dir in $tests |
| do |
| test_cmd="${base_dir}/${test_dir}/run_tests.sh ${test_opts}" |
| echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" |
| echo $test_cmd |
| echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" |
| $test_cmd |
| |
| done |
| } |
| |
| run_tests || exit |