From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Ahern Subject: [PATCH RFC net-next 4/7] selftests: fib_tests: Add command line options Date: Mon, 14 May 2018 19:51:09 -0700 Message-ID: <20180515025112.16647-5-dsahern@gmail.com> References: <20180515025112.16647-1-dsahern@gmail.com> Cc: Thomas.Winter@alliedtelesis.co.nz, idosch@mellanox.com, sharpd@cumulusnetworks.com, roopa@cumulusnetworks.com, David Ahern To: netdev@vger.kernel.org Return-path: Received: from mail-pl0-f65.google.com ([209.85.160.65]:35700 "EHLO mail-pl0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752235AbeEOCv3 (ORCPT ); Mon, 14 May 2018 22:51:29 -0400 Received: by mail-pl0-f65.google.com with SMTP id i5-v6so8500069plt.2 for ; Mon, 14 May 2018 19:51:28 -0700 (PDT) In-Reply-To: <20180515025112.16647-1-dsahern@gmail.com> Sender: netdev-owner@vger.kernel.org List-ID: Add command line options for controlling pause on fail, controlling specific tests to run and verbose mode rather than relying on environment variables. Signed-off-by: David Ahern --- tools/testing/selftests/net/fib_tests.sh | 53 ++++++++++++++++++++++++-------- 1 file changed, 40 insertions(+), 13 deletions(-) diff --git a/tools/testing/selftests/net/fib_tests.sh b/tools/testing/selftests/net/fib_tests.sh index 7e2291161e15..8c99f0689efc 100755 --- a/tools/testing/selftests/net/fib_tests.sh +++ b/tools/testing/selftests/net/fib_tests.sh @@ -6,8 +6,9 @@ ret=0 -VERBOSE=${VERBOSE:=0} -PAUSE_ON_FAIL=${PAUSE_ON_FAIL:=no} +TESTS="unregister down carrier nexthop" +VERBOSE=0 +PAUSE_ON_FAIL=no IP="ip -netns testns" log_test() @@ -565,20 +566,36 @@ fib_nexthop_test() } ################################################################################ -# +# usage -fib_test() +usage() { - if [ -n "$TEST" ]; then - eval $TEST - else - fib_unreg_test - fib_down_test - fib_carrier_test - fib_nexthop_test - fi + cat < Test(s) to run (default: all) + (options: $TESTS) + -p Pause on fail + -v verbose mode (show commands and output) +EOF } +################################################################################ +# main + +while getopts :t:pPhv o +do + case $o in + t) TESTS=$OPTARG;; + p) PAUSE_ON_FAIL=yes;; + v) VERBOSE=$(($VERBOSE + 1));; + h) usage; exit 0;; + *) usage; exit 1;; + esac +done + +PEER_CMD="ip netns exec ${PEER_NS}" + if [ "$(id -u)" -ne 0 ];then echo "SKIP: Need root privileges" exit 0 @@ -598,7 +615,17 @@ fi # start clean cleanup &> /dev/null -fib_test +for t in $TESTS +do + case $t in + fib_unreg_test|unregister) fib_unreg_test;; + fib_down_test|down) fib_down_test;; + fib_carrier_test|carrier) fib_carrier_test;; + fib_nexthop_test|nexthop) fib_nexthop_test;; + + help) echo "Test names: $TESTS"; exit 0;; + esac +done if [ "$TESTS" != "none" ]; then printf "\nTests passed: %3d\n" ${nsuccess} -- 2.11.0