From ba1172154da6739f9bf9e11c93f2abbb90a226ac Mon Sep 17 00:00:00 2001 From: Thomas Blume Date: Tue, 14 Jun 2016 14:45:42 +0200 Subject: [PATCH] correct parameter parsing in test-driver script The help text suggest using an equal sign for assigning parameter values but the code only supports spaces. The patch adds support for both. --- lib/test-driver | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/lib/test-driver b/lib/test-driver index 8e575b0..69b47f8 100755 --- a/lib/test-driver +++ b/lib/test-driver @@ -56,21 +56,26 @@ trs_file= # Where to save the metadata of the test run. expect_failure=no color_tests=no enable_hard_errors=yes -while test $# -gt 0; do - case $1 in +while test $# -gt 1; do + arg=${1%=*} + val=${1#*=} + if [ $arg = $val ]; then + val=$2 + shift + fi + case $arg in --help) print_usage; exit $?;; --version) echo "test-driver $scriptversion"; exit $?;; - --test-name) test_name=$2; shift;; - --log-file) log_file=$2; shift;; - --trs-file) trs_file=$2; shift;; - --color-tests) color_tests=$2; shift;; - --expect-failure) expect_failure=$2; shift;; - --enable-hard-errors) enable_hard_errors=$2; shift;; - --) shift; break;; + --test-name) test_name=$val;; + --log-file) log_file=$val;; + --trs-file) trs_file=$val;; + --color-tests) color_tests=$val;; + --expect-failure) expect_failure=$val;; + --enable-hard-errors) enable_hard_errors=$val;; + --) break;; -*) usage_error "invalid option: '$1'";; - *) break;; esac - shift + [ $arg != $val ] && shift done missing_opts= -- 2.6.6