selftests: txtimestamp: allow individual txtimestamp tests.

The wrapper script txtimestamp.sh executes a pre-defined list of testcases
sequentially without configuration options available.

Add an option (-r/--run) to setup the test namespace and pass remaining
arguments to txtimestamp binary. The script still runs all tests when no
argument is passed.

Signed-off-by: Jian Yang <jianyang@google.com>
Acked-by: Willem de Bruijn <willemb@google.com>
Acked-by: Soheil Hassas Yeganeh <soheil@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Jian Yang 2020-03-17 12:25:05 -07:00 committed by David S. Miller
parent e28596012d
commit 19882ecb55
1 changed files with 28 additions and 3 deletions

View File

@ -43,15 +43,40 @@ run_test_tcpudpraw() {
}
run_test_all() {
setup
run_test_tcpudpraw # setsockopt
run_test_tcpudpraw -C # cmsg
run_test_tcpudpraw -n # timestamp w/o data
echo "OK. All tests passed"
}
run_test_one() {
setup
./txtimestamp $@
}
usage() {
echo "Usage: $0 [ -r | --run ] <txtimestamp args> | [ -h | --help ]"
echo " (no args) Run all tests"
echo " -r|--run Run an individual test with arguments"
echo " -h|--help Help"
}
main() {
if [[ $# -eq 0 ]]; then
run_test_all
else
if [[ "$1" = "-r" || "$1" == "--run" ]]; then
shift
run_test_one $@
else
usage
fi
fi
}
if [[ "$(ip netns identify)" == "root" ]]; then
../../net/in_netns.sh $0 $@
else
setup
run_test_all
echo "OK. All tests passed"
main $@
fi