From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 619C6333 for ; Tue, 1 Jul 2014 18:14:38 +0200 (CEST) Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga101.jf.intel.com with ESMTP; 01 Jul 2014 09:14:57 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.01,582,1400050800"; d="scan'208";a="537244484" Received: from irvmail001.ir.intel.com ([163.33.26.43]) by orsmga001.jf.intel.com with ESMTP; 01 Jul 2014 09:13:58 -0700 Received: from sivswdev02.ir.intel.com (sivswdev02.ir.intel.com [10.237.217.46]) by irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id s61GDvEF031957; Tue, 1 Jul 2014 17:13:58 +0100 Received: from sivswdev02.ir.intel.com (localhost [127.0.0.1]) by sivswdev02.ir.intel.com with ESMTP id s61GDvEX010727; Tue, 1 Jul 2014 17:13:57 +0100 Received: (from pdelarax@localhost) by sivswdev02.ir.intel.com with id s61GDvQr010723; Tue, 1 Jul 2014 17:13:57 +0100 From: Pablo de Lara To: dev@dpdk.org Date: Tue, 1 Jul 2014 17:13:57 +0100 Message-Id: <1404231237-10657-1-git-send-email-pablox.de.lara.guarch@intel.com> X-Mailer: git-send-email 1.7.0.7 Subject: [dpdk-dev] [PATCH] app/test: fix and separate vdev test in test_eal_flags X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Jul 2014 16:14:38 -0000 From: Pablo de Lara In EAL flags unit test, vdev test was being included (and broken) in whitelist test. It has been separated in different test and fixed, by calling another primary process, instead of a secondary one. Patch "app/test: fix build switches to enable cmdline tests" from Thomas Monjalon is needed for this patch. Signed-off-by: Pablo de Lara --- app/test/test.c | 1 + app/test/test_eal_flags.c | 57 ++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 55 insertions(+), 3 deletions(-) diff --git a/app/test/test.c b/app/test/test.c index 516829d..a41e43d 100644 --- a/app/test/test.c +++ b/app/test/test.c @@ -86,6 +86,7 @@ do_recursive_call(void) { "test_no_hpet_flag", no_action }, { "test_whitelist_flag", no_action }, { "test_invalid_b_flag", no_action }, + { "test_invalid_vdev_flag", no_action }, { "test_invalid_r_flag", no_action }, #ifdef RTE_LIBRTE_XEN_DOM0 { "test_dom0_misc_flags", no_action }, diff --git a/app/test/test_eal_flags.c b/app/test/test_eal_flags.c index 1b80b80..729d4ee 100644 --- a/app/test/test_eal_flags.c +++ b/app/test/test_eal_flags.c @@ -317,9 +317,6 @@ test_whitelist_flag(void) const char *wlval3[] = {prgname, prefix, mp_flag, "-n", "1", "-c", "1", pci_whitelist, "09:0B.3,type=test", pci_whitelist, "08:00.1,type=normal", -#ifdef RTE_LIBRTE_PMD_RING - vdev, "eth_ring,arg=test", -#endif }; for (i = 0; i < sizeof(wlinval) / sizeof(wlinval[0]); i++) { @@ -391,6 +388,53 @@ test_invalid_b_flag(void) return 0; } +/* + * Test that the app doesn't run with invalid vdev option. + * Final test ensures it does run with valid options as sanity check + */ +#ifdef RTE_LIBRTE_PMD_RING +static int +test_invalid_vdev_flag(void) +{ + /* Test with invalid vdev option */ + const char *vdevinval[] = {prgname, "--file-prefix=vdev","-n", "1", + "-c", "1", vdev, "eth_dummy"}; + + /* Test with valid vdev option */ + const char *vdevval1[] = {prgname, "--file-prefix=vdev", "-n", "1", + "-c", "1", vdev, "eth_ring0"}; + + const char *vdevval2[] = {prgname, "--file-prefix=vdev", "-n", "1", + "-c", "1", vdev, "eth_ring0,args=test"}; + + const char *vdevval3[] = {prgname, "--file-prefix=vdev", "-n", "1", + "-c", "1", vdev, "eth_ring0,nodeaction=r1:0:CREATE"}; + + if (launch_proc(vdevinval) == 0) { + printf("Error - process did run ok with invalid " + "vdev parameter\n"); + return -1; + } + + if (launch_proc(vdevval1) != 0) { + printf("Error - process did not run ok with valid vdev value\n"); + return -1; + } + + if (launch_proc(vdevval2) != 0) { + printf("Error - process did not run ok with valid vdev value," + "with dummy args\n"); + return -1; + } + + if (launch_proc(vdevval3) != 0) { + printf("Error - process did not run ok with valid vdev value," + "with valid args\n"); + return -1; + } + return 0; +} +#endif /* * Test that the app doesn't run with invalid -r option. @@ -1201,6 +1245,13 @@ test_eal_flags(void) return ret; } +#ifdef RTE_LIBRTE_PMD_RING + ret = test_invalid_vdev_flag(); + if (ret < 0) { + printf("Error in test_invalid_vdev_flag()\n"); + return ret; + } +#endif ret = test_invalid_r_flag(); if (ret < 0) { printf("Error in test_invalid_r_flag()\n"); -- 1.7.0.7