From bf231ba795387064e7c4f1781240619429a4ef29 Mon Sep 17 00:00:00 2001 From: Filip Tehlar Date: Wed, 7 Sep 2016 15:47:47 +0200 Subject: 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/.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/.sh Change-Id: If851139cff072ba2e3b3594a3345763d360f3b59 Signed-off-by: Filip Tehlar --- .../vpp_lite_topo/topologies/basic_topo.sh | 37 ++++++++++++---------- 1 file changed, 20 insertions(+), 17 deletions(-) (limited to 'tests/data_plane/vpp_lite_topo/topologies/basic_topo.sh') diff --git a/tests/data_plane/vpp_lite_topo/topologies/basic_topo.sh b/tests/data_plane/vpp_lite_topo/topologies/basic_topo.sh index 09b8e24..15aaa51 100644 --- a/tests/data_plane/vpp_lite_topo/topologies/basic_topo.sh +++ b/tests/data_plane/vpp_lite_topo/topologies/basic_topo.sh @@ -82,26 +82,29 @@ function basic_topo_setup ip addr add 6:0:3::100/64 dev odl ethtool --offload odl rx off tx off - # start vpp1 and vpp2 in separate chroot - ${VPP_LITE_BIN} \ - unix { log /tmp/vpp1.log cli-listen \ - localhost:5002 full-coredump \ - exec ${VPP_LITE_CONF}/vpp1.config } \ - api-trace { on } api-segment {prefix xtr1} - - ${VPP_LITE_BIN} \ - unix { log /tmp/vpp2.log cli-listen \ - localhost:5003 full-coredump \ - exec ${VPP_LITE_CONF}/vpp2.config } \ - api-trace { on } api-segment {prefix xtr2} - - sleep 2 - ${VPP_API_TEST} chroot prefix xtr1 script in ${VPP_LITE_CONF}/vpp1.vat - ${VPP_API_TEST} chroot prefix xtr2 script in ${VPP_LITE_CONF}/vpp2.vat + # generate config files + ./scripts/generate_config.py ${VPP_LITE_CONF} ${CFG_METHOD} + + start_vpp 5002 vpp1 + start_vpp 5003 vpp2 + + echo "* Selected configuration method: $CFG_METHOD" + if [ "$CFG_METHOD" == "cli" ] ; then + echo "exec ${VPP_LITE_CONF}/vpp1.cli" | nc 0 5002 + echo "exec ${VPP_LITE_CONF}/vpp2.cli" | nc 0 5003 + elif [ "$CFG_METHOD" == "vat" ] ; then + sleep 2 + ${VPP_API_TEST} chroot prefix vpp1 script in ${VPP_LITE_CONF}/vpp1.vat + ${VPP_API_TEST} chroot prefix vpp2 script in ${VPP_LITE_CONF}/vpp2.vat + else + echo "=== WARNING:" + echo "=== Invalid configuration method selected!" + echo "=== To resolve this set env variable CFG_METHOD to vat or cli." + echo "===" + fi if [ "$1" != "no_odl" ] ; then post_curl "add-mapping" ${ODL_CONFIG_FILE1} post_curl "add-mapping" ${ODL_CONFIG_FILE2} fi } - -- cgit 1.2.3-korg