hs-test: support for multiple workers
[vpp.git] / extras / hs-test / test
index e14f3ee..db53d5a 100755 (executable)
@@ -5,6 +5,8 @@ source vars
 args=
 single_test=0
 persist_set=0
+unconfigure_set=0
+debug_set=0
 
 for i in "$@"
 do
@@ -16,12 +18,29 @@ case "${i}" in
             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#*=}"
+        ;;
     --test=*)
         tc_name="${i#*=}"
         if [ $tc_name != "all" ]; then
@@ -32,7 +51,22 @@ esac
 done
 
 if [ $single_test -eq 0 ] && [ $persist_set -eq 1 ]; then
-    echo "persist flag is not supperted while running all tests!"
+    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