From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 7297442EBF; Thu, 20 Jul 2023 11:31:35 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id AD73442B8E; Thu, 20 Jul 2023 11:31:15 +0200 (CEST) Received: from szxga08-in.huawei.com (szxga08-in.huawei.com [45.249.212.255]) by mails.dpdk.org (Postfix) with ESMTP id AEDD840DF5 for ; Thu, 20 Jul 2023 11:31:10 +0200 (CEST) Received: from dggpeml100024.china.huawei.com (unknown [172.30.72.53]) by szxga08-in.huawei.com (SkyGuard) with ESMTP id 4R66qN0KHdz18Lk7; Thu, 20 Jul 2023 17:30:24 +0800 (CST) Received: from localhost.localdomain (10.50.163.32) by dggpeml100024.china.huawei.com (7.185.36.115) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Thu, 20 Jul 2023 17:31:08 +0800 From: Chengwen Feng To: , CC: , , , , , , Subject: [PATCH v19 6/6] test/memarea: support dump API test Date: Thu, 20 Jul 2023 09:22:54 +0000 Message-ID: <20230720092254.54157-7-fengchengwen@huawei.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20230720092254.54157-1-fengchengwen@huawei.com> References: <20220721044648.6817-1-fengchengwen@huawei.com> <20230720092254.54157-1-fengchengwen@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-Originating-IP: [10.50.163.32] X-ClientProxiedBy: dggems705-chm.china.huawei.com (10.3.19.182) To dggpeml100024.china.huawei.com (7.185.36.115) X-CFilter-Loop: Reflected X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org This patch supports rte_memarea_dump() API test. Signed-off-by: Chengwen Feng Reviewed-by: Dongdong Liu Acked-by: Morten Brørup --- app/test/test_memarea.c | 52 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/app/test/test_memarea.c b/app/test/test_memarea.c index 805fb82d08..e793022aa2 100644 --- a/app/test/test_memarea.c +++ b/app/test/test_memarea.c @@ -353,6 +353,57 @@ test_memarea_alloc_free(void) TEST_ASSERT(rte_errno == 0, "Expected Zero"); + fprintf(stderr, "There should have no allocated object.\n"); + rte_memarea_dump(ma, stderr, true); + + rte_memarea_destroy(ma); + + return TEST_SUCCESS; +} + +static int +test_memarea_dump(void) +{ + struct rte_memarea_param init; + uint32_t alloced_num = 0; + struct rte_memarea *ma; + void *ptr; + int ret; + + test_memarea_init_param(&init); + init.source = RTE_MEMAREA_SOURCE_LIBC; + init.total_sz = MEMAREA_TEST_DEFAULT_SIZE; + ma = rte_memarea_create(&init); + TEST_ASSERT(ma != NULL, "Memarea creation failed"); + + /* test for invalid parameters */ + rte_errno = 0; + ret = rte_memarea_dump(NULL, stderr, false); + TEST_ASSERT(ret == -1, "Expected -1"); + TEST_ASSERT(rte_errno == EINVAL, "Expected EINVAL"); + rte_errno = 0; + ret = rte_memarea_dump(ma, NULL, false); + TEST_ASSERT(ret == -1, "Expected -1"); + TEST_ASSERT(rte_errno == EINVAL, "Expected EINVAL"); + + /* test for dump */ + ptr = rte_memarea_alloc(ma, 1); + TEST_ASSERT(ptr != NULL, "Memarea allocation failed"); + alloced_num++; + ptr = rte_memarea_alloc(ma, 1); + TEST_ASSERT(ptr != NULL, "Memarea allocation failed"); + alloced_num++; + ptr = rte_memarea_alloc(ma, 1); + TEST_ASSERT(ptr != NULL, "Memarea allocation failed"); + alloced_num++; + ptr = rte_memarea_alloc(ma, MEMAREA_TEST_DEFAULT_SIZE); + TEST_ASSERT(ptr == NULL, "Memarea allocation expect fail"); + ptr = rte_memarea_alloc(ma, MEMAREA_TEST_DEFAULT_SIZE); + TEST_ASSERT(ptr == NULL, "Memarea allocation expect fail"); + fprintf(stderr, "There should have %u allocated object.\n", alloced_num); + ret = rte_memarea_dump(ma, stderr, true); + TEST_ASSERT(ret == 0, "Memarea dump failed"); + rte_memarea_destroy(ma); return TEST_SUCCESS; @@ -370,6 +421,7 @@ static struct unit_test_suite memarea_test_suite = { TEST_CASE(test_memarea_alloc_fail), TEST_CASE(test_memarea_free_fail), TEST_CASE(test_memarea_alloc_free), + TEST_CASE(test_memarea_dump), TEST_CASES_END() /**< NULL terminate unit test array */ } -- 2.17.1