summaryrefslogtreecommitdiffstats
path: root/tests/data_plane/vpp_lite_topo/config.sh
diff options
context:
space:
mode:
authorFilip Tehlar <ftehlar@cisco.com>2016-09-07 15:47:47 +0200
committerFilip Tehlar <ftehlar@cisco.com>2016-09-12 14:41:10 +0200
commitbf231ba795387064e7c4f1781240619429a4ef29 (patch)
tree86da34369910ca1c85672ed30d4374d4ecda9ac3 /tests/data_plane/vpp_lite_topo/config.sh
parent1df1d674eaace35d52973786403eb1dbe3c0d5eb (diff)
Introduce an option for testing binary API
This patch introduces an option for choosing a configuration method in tests. Supported methods are VAT and vpp's debug CLI. * Added new aprameter to run.sh to define method (--cfg-method [vat|cli]). Defaults to vat. * When running a test separately the method can be set as follows: $ sudo CFG_METHOD=cli ./tests/<test_case>.sh Again, it defaults to 'vat' if not provided. * Increased readability in test driver scripts when checking test status * When debugging you can stop test execution by running the test with WAIT=1: $ sudo WAIT=1 tests/<test_case>.sh Change-Id: If851139cff072ba2e3b3594a3345763d360f3b59 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Diffstat (limited to 'tests/data_plane/vpp_lite_topo/config.sh')
-rw-r--r--tests/data_plane/vpp_lite_topo/config.sh47
1 files changed, 47 insertions, 0 deletions
diff --git a/tests/data_plane/vpp_lite_topo/config.sh b/tests/data_plane/vpp_lite_topo/config.sh
index e4c3283..a546c52 100644
--- a/tests/data_plane/vpp_lite_topo/config.sh
+++ b/tests/data_plane/vpp_lite_topo/config.sh
@@ -29,6 +29,15 @@ if [ ! -f "${VPP_API_TEST}" ] ; then
exit 1
fi
+if [ "${CFG_METHOD}" == '' ] ; then
+ CFG_METHOD=vat
+ echo
+ echo "* INFO: configuration method not selected, defaulting to 'vat'"
+ echo "* To define the method run the test as follows:"
+ echo "* $ sudo CFG_METHOD=vat|cli ./tests/<tc>.sh"
+ echo
+fi
+
function clean_all
{
echo "Clearing all VPP instances.."
@@ -88,6 +97,44 @@ function clean_all
if [ "$1" != "no_odl" ] ; then
odl_clear_all
fi
+}
+function maybe_pause
+{
+ if [ "$WAIT" == "1" ] ; then
+ read -p "press any key to continue .." -n1
+ fi
+}
+
+
+function start_vpp
+{
+ # start_vpp port prefix
+ ${VPP_LITE_BIN} \
+ unix { log /tmp/$2.log \
+ full-coredump \
+ cli-listen localhost:$1 } \
+ api-trace { on } api-segment { prefix "$2" }
+}
+
+function print_status
+{
+ # show_status rc error_msg
+ if [ $1 -ne 0 ] ; then
+ echo "Test failed: $2"
+ else
+ echo "Test passed."
+ test_result=0
+ fi
+}
+
+function assert_rc_ok
+{
+ # assert_rc_ok rc cleanup_fcn error_msg
+ if [ $1 -ne 0 ] ; then
+ echo $3
+ $2
+ exit $test_result
+ fi
}