blob: c3b9eaef145f9febc9a0811ad508d77c5e34914d [file] [log] [blame]
#!/usr/bin/env bash
source vars
args=
single_test=0
persist_set=0
unconfigure_set=0
debug_set=0
vppsrc=
for i in "$@"
do
case "${i}" in
--persist=*)
persist="${i#*=}"
if [ $persist = "true" ]; then
args="$args -persist"
persist_set=1
fi
;;
--debug=*)
debug="${i#*=}"
if [ $debug = "true" ]; then
args="$args -debug"
debug_set=1
fi
;;
--verbose=*)
verbose="${i#*=}"
if [ $verbose = "true" ]; then
args="$args -verbose"
fi
;;
--unconfigure=*)
unconfigure="${i#*=}"
if [ $unconfigure = "true" ]; then
args="$args -unconfigure"
unconfigure_set=1
fi
;;
--cpus=*)
args="$args -cpus ${i#*=}"
;;
--vppsrc=*)
args="$args -vppsrc ${i#*=}"
;;
--test=*)
tc_name="${i#*=}"
if [ $tc_name != "all" ]; then
single_test=1
args="$args -run $tc_name -verbose"
fi
esac
done
if [ $single_test -eq 0 ] && [ $persist_set -eq 1 ]; then
echo "persist flag is not supported while running all tests!"
exit 1
fi
if [ $unconfigure_set -eq 1 ] && [ $single_test -eq 0 ]; then
echo "a single test has to be specified when unconfigure is set"
exit 1
fi
if [ $persist_set -eq 1 ] && [ $unconfigure_set -eq 1 ]; then
echo "setting persist flag and unconfigure flag is not allowed"
exit 1
fi
if [ $single_test -eq 0 ] && [ $debug_set -eq 1 ]; then
echo "VPP debug flag is not supperted while running all tests!"
exit 1
fi
sudo -E go test -timeout=20m -buildvcs=false -v $args