From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 8B6C3436C8;
	Mon, 11 Dec 2023 10:54:58 +0100 (CET)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id 007F2410FD;
	Mon, 11 Dec 2023 10:54:31 +0100 (CET)
Received: from szxga06-in.huawei.com (szxga06-in.huawei.com [45.249.212.32])
 by mails.dpdk.org (Postfix) with ESMTP id BCD9F40ED3
 for <dev@dpdk.org>; Mon, 11 Dec 2023 10:54:24 +0100 (CET)
Received: from mail.maildlp.com (unknown [172.19.163.44])
 by szxga06-in.huawei.com (SkyGuard) with ESMTP id 4SpcXX13gkz1vnkG;
 Mon, 11 Dec 2023 17:54:20 +0800 (CST)
Received: from dggpeml500024.china.huawei.com (unknown [7.185.36.10])
 by mail.maildlp.com (Postfix) with ESMTPS id 36DDC14040D;
 Mon, 11 Dec 2023 17:54:23 +0800 (CST)
Received: from localhost.localdomain (10.50.165.33) by
 dggpeml500024.china.huawei.com (7.185.36.10) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.35; Mon, 11 Dec 2023 17:54:22 +0800
From: Chengwen Feng <fengchengwen@huawei.com>
To: <dev@dpdk.org>, <thomas@monjalon.net>, <ferruh.yigit@amd.com>,
 <stephen@networkplumber.org>
CC: <tangkunshan@huawei.com>
Subject: [RFC v3 08/12] test/argparse: add parse type test
Date: Mon, 11 Dec 2023 09:51:06 +0000
Message-ID: <20231211095110.18946-9-fengchengwen@huawei.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20231211095110.18946-1-fengchengwen@huawei.com>
References: <20231121122651.7078-1-fengchengwen@huawei.com>
 <20231211095110.18946-1-fengchengwen@huawei.com>
MIME-Version: 1.0
Content-Type: text/plain
X-Originating-IP: [10.50.165.33]
X-ClientProxiedBy: dggems703-chm.china.huawei.com (10.3.19.180) To
 dggpeml500024.china.huawei.com (7.185.36.10)
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org

This commit adds parse type test.

Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
---
 app/test/test_argparse.c | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/app/test/test_argparse.c b/app/test/test_argparse.c
index 3e4f4a2cfa..06336714d9 100644
--- a/app/test/test_argparse.c
+++ b/app/test/test_argparse.c
@@ -729,6 +729,27 @@ test_argparse_pos_callback_parse_int(void)
 	return 0;
 }
 
+static int
+test_argparse_parse_type(void)
+{
+	char *str_erange = test_strdup("9999999999999999999999999999999999");
+	char *str_invalid = test_strdup("1a");
+	char *str_ok = test_strdup("123");
+	int value;
+	int ret;
+
+	/* test for int parsing */
+	ret = rte_argparse_parse_type(str_erange, RTE_ARGPARSE_ARG_VALUE_INT, &value);
+	TEST_ASSERT(ret != 0, "Argparse parse type expect failed!");
+	ret = rte_argparse_parse_type(str_invalid, RTE_ARGPARSE_ARG_VALUE_INT, &value);
+	TEST_ASSERT(ret != 0, "Argparse parse type expect failed!");
+	ret = rte_argparse_parse_type(str_ok, RTE_ARGPARSE_ARG_VALUE_INT, &value);
+	TEST_ASSERT(ret == 0, "Argparse parse type expect failed!");
+	TEST_ASSERT(value == 123, "Argparse parse type expect failed!");
+
+	return 0;
+}
+
 static struct unit_test_suite argparse_test_suite  = {
 	.suite_name = "Argparse Unit Test Suite",
 	.setup = test_argparse_setup,
@@ -750,6 +771,7 @@ static struct unit_test_suite argparse_test_suite  = {
 		TEST_CASE(test_argparse_opt_callback_parse_int_of_optional_val),
 		TEST_CASE(test_argparse_pos_autosave_parse_int),
 		TEST_CASE(test_argparse_pos_callback_parse_int),
+		TEST_CASE(test_argparse_parse_type),
 
 		TEST_CASES_END() /**< NULL terminate unit test array */
 	}
-- 
2.17.1