From 3f0d887de47e70182a7ae407ec25866d970e7a0b Mon Sep 17 00:00:00 2001 From: wkejing Date: Mon, 25 Oct 2021 17:14:35 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90communication=5Flite=E3=80=91=E3=80=90?= =?UTF-8?q?L0-lwip=E3=80=91testsocket=E7=94=A8=E4=BE=8B=E6=9B=BF=E6=8D=A2?= =?UTF-8?q?=E4=B8=BAtestSelectOneClient?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: wkejing --- .../lwip_hal/src/lwip_func_test.c | 48 ++++++++++++++----- 1 file changed, 36 insertions(+), 12 deletions(-) diff --git a/communication_lite/lwip_hal/src/lwip_func_test.c b/communication_lite/lwip_hal/src/lwip_func_test.c index 8a6ade1fc..891132b7e 100755 --- a/communication_lite/lwip_hal/src/lwip_func_test.c +++ b/communication_lite/lwip_hal/src/lwip_func_test.c @@ -651,22 +651,46 @@ LITE_TEST_CASE(LwipFuncTestSuite, testSelectTimeout, Function | MediumTest | Lev /** * @tc.number : SUB_COMMUNICATION_LWIP_SDK_0500 - * @tc.name : test socket + * @tc.name : test select with one clients * @tc.desc : [C- SOFTWARE -0200] */ -LITE_TEST_CASE(LwipFuncTestSuite, testSocket, Function | MediumTest | Level2) +LITE_TEST_CASE(LwipFuncTestSuite, testSelectOneClient, Function | MediumTest | Level2) { - int ret; - int fdFail = -1; - int fdSuccess = -1; + osThreadAttr_t tSelect; + tSelect.name = "SelectServerTask"; + tSelect.attr_bits = 0U; + tSelect.cb_mem = NULL; + tSelect.cb_size = 0U; + tSelect.stack_mem = NULL; + tSelect.stack_size = DEF_TASK_STACK; + tSelect.priority = DEF_TASK_PRIORITY; - fdFail = socket(0, 0, 0); - TEST_ASSERT_EQUAL_INT(LWIP_TEST_FAIL, fdFail); - fdSuccess = socket(AF_INET, SOCK_STREAM, 0); - TEST_ASSERT_NOT_EQUAL(LWIP_TEST_FAIL, fdSuccess); - - ret = lwip_close(fdSuccess); - TEST_ASSERT_EQUAL_INT(0, ret); + g_selectTimeout = 5; + osThreadId_t serverTaskId = osThreadNew((osThreadFunc_t)SelectServerTask, NULL, &tSelect); + TEST_ASSERT_NOT_NULL(serverTaskId); + osDelay(ONE_SECOND); + if (serverTaskId == NULL) { + printf("create select server task fail!\n"); + } else { + osThreadAttr_t tClient; + osThreadId_t clientTaskId; + tClient.name = "CommTcpClientTask"; + tClient.attr_bits = 0U; + tClient.cb_mem = NULL; + tClient.cb_size = 0U; + tClient.stack_mem = NULL; + tClient.stack_size = DEF_TASK_STACK; + tClient.priority = DEF_TASK_PRIORITY; + clientTaskId = osThreadNew((osThreadFunc_t)CommTcpClientTask, NULL, &tClient); + TEST_ASSERT_NOT_NULL(clientTaskId); + } + + g_selectFlag = 1; + while (g_selectFlag) { + osDelay(ONE_SECOND); + printf("wait select server finish...\n"); + } + TEST_ASSERT_EQUAL_INT(0, g_selectResult); } /** -- GitLab