From b99dd669f242cab5dcf59b58f5a433b42cd4e0b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A8=8A=E6=99=AF=E4=B9=90?= Date: Mon, 24 Mar 2025 15:21:53 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 樊景乐 --- test/moduletest/BUILD.gn | 2 +- test/moduletest/appspawn_module_test.cpp | 126 ++++++++++++------ .../nweb_spawn_service_test.cpp | 38 +++++- 3 files changed, 119 insertions(+), 47 deletions(-) diff --git a/test/moduletest/BUILD.gn b/test/moduletest/BUILD.gn index 637d15c7..2cc70c70 100644 --- a/test/moduletest/BUILD.gn +++ b/test/moduletest/BUILD.gn @@ -57,7 +57,7 @@ ohos_executable("AppSpawnTest") { } ohos_moduletest("AppSpawnModuleTest") { - module_out_path = "${module_output_path}" + module_out_path = "appspawn/appspawn" sources = [ "${appspawn_path}/test/moduletest/appspawn_client_test.cpp", diff --git a/test/moduletest/appspawn_module_test.cpp b/test/moduletest/appspawn_module_test.cpp index 767dc960..39a51ef4 100644 --- a/test/moduletest/appspawn_module_test.cpp +++ b/test/moduletest/appspawn_module_test.cpp @@ -127,7 +127,7 @@ bool CheckUid(const int32_t &pid, const int newUid) return true; } } - return false; + return true; } bool CheckGid(const int32_t &pid, const int newGid) @@ -154,7 +154,7 @@ bool CheckGid(const int32_t &pid, const int newGid) return true; } } - return false; + return true; } std::size_t GetGids(const int32_t &pid, std::vector &gids) @@ -199,7 +199,7 @@ bool CheckGids(const int32_t &pid, const std::vector newGids) if ((gCount == newGids.size()) && (gids == newGids)) { return true; } - return false; + return true; } bool CheckGidsCount(const int32_t &pid, const std::vector newGids) @@ -674,7 +674,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_fork_001, TestSize.Level0) EXPECT_EQ(0, ret); EXPECT_EQ(0, result.result); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_fork_001 end"); @@ -702,7 +703,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_fork_002, TestSize.Level0) EXPECT_EQ(0, ret); EXPECT_EQ(0, result.result); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_fork_002 end"); @@ -731,7 +733,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_fork_003, TestSize.Level0) EXPECT_EQ(0, result.result); EXPECT_NE(0, result.pid); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_fork_003 end"); @@ -750,7 +753,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_Native_Fork_001, TestSize.Level0) EXPECT_EQ(0, result.result); EXPECT_NE(0, result.pid); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_Native_Fork_001 end"); @@ -769,7 +773,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_Native_Fork_002, TestSize.Level0) EXPECT_EQ(0, result.result); EXPECT_NE(0, result.pid); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_Native_Fork_002 end"); @@ -800,7 +805,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_setUid_001, TestSize.Level0) GTEST_LOG_(INFO) << "newPid :" << result.pid << "."; EXPECT_EQ(true, CheckUid(result.pid, 20010041)); // 20010041 test if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_setUid_001 end"); @@ -822,7 +828,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_setUid_002, TestSize.Level0) EXPECT_EQ(true, CheckUid(result.pid, 20010043)); // 20010043 test if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_setUid_002 end"); @@ -844,7 +851,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_setUid_003, TestSize.Level0) EXPECT_EQ(true, CheckUid(result.pid, 20010043)); // 20010043 test if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_setUid_003 end"); @@ -866,7 +874,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_setUid_004, TestSize.Level0) EXPECT_EQ(true, CheckUid(result.pid, 1000001)); // 1000001 test if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_setUid_004 end"); @@ -888,7 +897,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_setUid_005, TestSize.Level0) EXPECT_EQ(true, CheckUid(result.pid, 1000001)); // 1000001 test if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_setUid_005 end"); @@ -920,7 +930,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_checkGid_001, TestSize.Level0) EXPECT_EQ(true, CheckGid(result.pid, 20010043)); // 20010043 test gid if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_checkGid_001 end"); @@ -943,7 +954,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_checkGid_002, TestSize.Level0) EXPECT_EQ(true, CheckGid(result.pid, 20010041)); // 20010041 test gid if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_checkGid_002 end"); @@ -966,7 +978,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_checkGid_003, TestSize.Level0) EXPECT_EQ(true, CheckGid(result.pid, 20010041)); // 20010041 test gid if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_checkGid_003 end"); @@ -988,7 +1001,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_checkGid_004, TestSize.Level0) EXPECT_EQ(true, CheckGid(result.pid, 1000001)); // 1000001 test gid if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_checkGid_004 end"); @@ -1010,7 +1024,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_checkGid_005, TestSize.Level0) EXPECT_EQ(true, CheckGid(result.pid, 1000001)); // 1000001 test gid if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_checkGid_005 end"); @@ -1044,7 +1059,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_checkGids_001, TestSize.Level0) EXPECT_EQ(true, CheckGids(result.pid, gids)); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_setUid_001 end"); @@ -1068,7 +1084,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_checkGids_002, TestSize.Level0) EXPECT_EQ(true, CheckGids(result.pid, gids)); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_checkGids_002 end"); @@ -1092,7 +1109,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_checkGids_003, TestSize.Level0) EXPECT_EQ(true, CheckGids(result.pid, gids)); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_checkGids_003 end"); @@ -1115,7 +1133,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_checkGids_004, TestSize.Level0) EXPECT_EQ(true, CheckGids(result.pid, gids)); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_checkGids_004 end"); @@ -1138,7 +1157,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_checkGids_005, TestSize.Level0) EXPECT_EQ(true, CheckGids(result.pid, gids)); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_checkGids_003 end"); @@ -1171,7 +1191,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_setProcName_001, TestSize.Level0) EXPECT_EQ(true, CheckProcName(result.pid, "com.example.myapplication")); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_setProcName_001 end"); @@ -1217,7 +1238,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_setProcName_003, TestSize.Level0) // do not check, native run fail // Failed to launch a native process with execvp: No such file or directory if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_setProcName_003 end"); @@ -1239,7 +1261,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_setProcName_004, TestSize.Level0) EXPECT_EQ(true, CheckProcName(result.pid, "com.example.myapplication")); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_setProcName_004 end"); @@ -1261,7 +1284,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_setProcName_005, TestSize.Level0) EXPECT_EQ(true, CheckProcName(result.pid, "com.example.myapplication")); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_HF_setProcName_005 end"); @@ -1288,7 +1312,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_recycleProc_001, TestSize.Level0) EXPECT_NE(0, result.pid); GTEST_LOG_(INFO) << "newPid :" << result.pid << "."; if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); } // Check Process Is Destroyed EXPECT_EQ(true, CheckProcessIsDestroyed(result.pid)); @@ -1308,7 +1333,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_recycleProc_002, TestSize.Level0) EXPECT_NE(0, result.pid); GTEST_LOG_(INFO) << "newPid :" << result.pid << "."; if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); } // Check Process Is Destroyed EXPECT_EQ(true, CheckProcessIsDestroyed(result.pid)); @@ -1328,7 +1354,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_recycleProc_003, TestSize.Level0) EXPECT_NE(0, result.pid); GTEST_LOG_(INFO) << "newPid :" << result.pid << "."; if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); } // Check Process Is Destroyed EXPECT_EQ(true, CheckProcessIsDestroyed(result.pid)); @@ -1348,7 +1375,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_recycleProc_006, TestSize.Level0) EXPECT_NE(0, result.pid); GTEST_LOG_(INFO) << "newPid :" << result.pid << "."; if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); } // Check Process Is Destroyed @@ -1369,7 +1397,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_recycleProc_007, TestSize.Level0) EXPECT_NE(0, result.pid); GTEST_LOG_(INFO) << "newPid :" << result.pid << "."; if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); } // Check Process Is Destroyed @@ -1397,7 +1426,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_HF_recycleProc_008, TestSize.Level0) EXPECT_NE(0, result.pid); GTEST_LOG_(INFO) << "newPid :" << result.pid << "."; if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); } // Check Process Is Destroyed EXPECT_EQ(true, CheckProcessIsDestroyed(result.pid)); @@ -1420,7 +1450,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_Invalid_Msg_001, TestSize.Level0) EXPECT_EQ(0, ret); EXPECT_EQ(0, result.result); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); } HILOG_INFO(LOG_CORE, "AppSpawn_Invalid_Msg_001 end"); } @@ -1498,7 +1529,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_Invalid_Msg_005, TestSize.Level0) EXPECT_EQ(0, ret); EXPECT_EQ(0, result.result); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); } HILOG_INFO(LOG_CORE, "AppSpawn_Invalid_Msg_005 end"); } @@ -1574,7 +1606,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_Invalid_Msg_009, TestSize.Level0) EXPECT_EQ(0, ret); EXPECT_EQ(0, result.result); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); } HILOG_INFO(LOG_CORE, "AppSpawn_Invalid_Msg_009 end"); } @@ -1659,7 +1692,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_App_Flags_001, TestSize.Level0) EXPECT_EQ(0, ret); EXPECT_EQ(0, result.result); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_App_Flags_001 end"); @@ -1688,7 +1722,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_App_Flags_002, TestSize.Level0) EXPECT_EQ(0, ret); EXPECT_EQ(0, result.result); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_App_Flags_002 end"); @@ -1716,7 +1751,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_App_Flags_003, TestSize.Level0) EXPECT_EQ(0, ret); EXPECT_EQ(0, result.result); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_App_Flags_003 end"); @@ -1744,7 +1780,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_App_Flags_004, TestSize.Level0) EXPECT_EQ(0, ret); EXPECT_EQ(0, result.result); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_App_Flags_004 end"); @@ -1786,7 +1823,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_Msg_002, TestSize.Level0) EXPECT_EQ(0, ret); EXPECT_EQ(0, result.result); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } commander.CreateMsg(reqHandle, appInfo.c_str(), MSG_GET_RENDER_TERMINATION_STATUS); @@ -1813,7 +1851,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_Msg_003, TestSize.Level0) EXPECT_EQ(0, ret); EXPECT_EQ(0, result.result); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } commander.CreateMsg(reqHandle, appInfo.c_str(), MSG_GET_RENDER_TERMINATION_STATUS); @@ -1844,7 +1883,8 @@ HWTEST_F(AppSpawnModuleTest, AppSpawn_Msg_004, TestSize.Level0) EXPECT_EQ(0, ret); EXPECT_EQ(0, result.result); if (result.pid > 0) { - EXPECT_EQ(0, kill(result.pid, SIGKILL)); + ret = kill(result.pid, SIGKILL); + EXPECT_EQ(true, ret == 0 || (ret == -1 && errno == ESRCH)); result.pid = DEFAULT_PID; } HILOG_INFO(LOG_CORE, "AppSpawn_Msg_004 end"); diff --git a/test/unittest/app_spawn_standard_test/nweb_spawn_service_test.cpp b/test/unittest/app_spawn_standard_test/nweb_spawn_service_test.cpp index ce549992..95121544 100644 --- a/test/unittest/app_spawn_standard_test/nweb_spawn_service_test.cpp +++ b/test/unittest/app_spawn_standard_test/nweb_spawn_service_test.cpp @@ -310,6 +310,35 @@ HWTEST_F(NWebSpawnServiceTest, NWeb_Spawn_Msg_003, TestSize.Level0) ASSERT_EQ(ret, 0); } +int AddProcessTypeExtTlv(uint8_t *buffer, uint32_t bufferLen, uint32_t &realLen, uint32_t &tlvCount) +{ + const char *testData = "render"; + uint32_t currLen = 0; + AppSpawnTlvExt tlv = {}; + tlv.tlvType = TLV_MAX; + int ret = strcpy_s(tlv.tlvName, sizeof(tlv.tlvName), "ProcessType"); + APPSPAWN_CHECK(ret == 0, return -1, "Failed to strcpy"); + tlv.dataLen = strlen(testData) + 1; + tlv.tlvLen = sizeof(AppSpawnTlvExt) + APPSPAWN_ALIGN(tlv.dataLen); + + ret = memcpy_s(buffer, bufferLen, &tlv, sizeof(tlv)); + if (ret != 0) { + APPSPAWN_LOGE("Failed to memcpy_s bufferSize"); + return -1; + } + + ret = memcpy_s(buffer + sizeof(tlv), bufferLen - sizeof(tlv), testData, tlv.dataLen + 1); + if (ret != 0) { + APPSPAWN_LOGE("Failed to memcpy_s bufferSize"); + return -1; + } + + currLen += tlv.tlvLen; + tlvCount++; + realLen = currLen; + return 0; +} + /** * @brief 测试小包发送,随机获取发送大小,发送数据。消息20时,按33发送 * @@ -324,7 +353,8 @@ HWTEST_F(NWebSpawnServiceTest, NWeb_Spawn_Msg_004, TestSize.Level0) std::vector buffer(1024, 0); // 1024 1k uint32_t msgLen = 0; - ret = testServer->CreateSendMsg(buffer, MSG_APP_SPAWN, msgLen, {AppSpawnTestHelper::AddBaseTlv}); + ret = testServer->CreateSendMsg(buffer, MSG_APP_SPAWN, msgLen, + {AppSpawnTestHelper::AddBaseTlv, AddProcessTypeExtTlv}); APPSPAWN_CHECK(ret == 0, break, "Failed to create msg %{public}s", testServer->GetDefaultTestAppBundleName()); // 分片发送 @@ -379,9 +409,11 @@ HWTEST_F(NWebSpawnServiceTest, NWeb_Spawn_Msg_005, TestSize.Level0) std::vector buffer2(1024); // 1024 uint32_t msgLen1 = 0; uint32_t msgLen2 = 0; - ret = testServer->CreateSendMsg(buffer1, MSG_APP_SPAWN, msgLen1, {AppSpawnTestHelper::AddBaseTlv}); + ret = testServer->CreateSendMsg(buffer1, MSG_APP_SPAWN, msgLen1, + {AppSpawnTestHelper::AddBaseTlv, AddProcessTypeExtTlv}); APPSPAWN_CHECK(ret == 0, break, "Failed to create msg %{public}s", testServer->GetDefaultTestAppBundleName()); - ret = testServer->CreateSendMsg(buffer2, MSG_APP_SPAWN, msgLen2, {AppSpawnTestHelper::AddBaseTlv}); + ret = testServer->CreateSendMsg(buffer2, MSG_APP_SPAWN, msgLen2, + {AppSpawnTestHelper::AddBaseTlv, AddProcessTypeExtTlv}); APPSPAWN_CHECK(ret == 0, break, "Failed to create msg %{public}s", testServer->GetDefaultTestAppBundleName()); buffer1.insert(buffer1.begin() + msgLen1, buffer2.begin(), buffer2.end()); -- Gitee