From 21dfbaf47610f498cfa6dbfc3fc869763a63f23b Mon Sep 17 00:00:00 2001 From: zhaowenli Date: Fri, 13 Oct 2023 11:58:28 +0000 Subject: [PATCH 1/2] issue:#I880EL Signed-off-by: zhaowenli Change-Id: I74e4912ea8e172cb33fb5f950ce61584b4373ecb --- .../unittest/src/sec_comp_manager_test.cpp | 189 ++++++++++++++++++ 1 file changed, 189 insertions(+) diff --git a/services/security_component_service/sa/test/unittest/src/sec_comp_manager_test.cpp b/services/security_component_service/sa/test/unittest/src/sec_comp_manager_test.cpp index 8bb1655..06dd593 100644 --- a/services/security_component_service/sa/test/unittest/src/sec_comp_manager_test.cpp +++ b/services/security_component_service/sa/test/unittest/src/sec_comp_manager_test.cpp @@ -417,3 +417,192 @@ HWTEST_F(SecCompManagerTest, CheckClickSecurityComponentInfo001, TestSize.Level1 ASSERT_EQ(SC_SERVICE_ERROR_COMPONENT_INFO_INVALID, SecCompManager::GetInstance().ReportSecurityComponentClickEvent( ServiceTestCommon::TEST_SC_ID_1, jsonVaild, caller, touchInfo, nullptr)); } + +/** + * @tc.name: AddSecurityComponentToList003 + * @tc.desc: Test add security component to list sa not exit + * @tc.type: FUNC + * @tc.require: AR000HO9J7 + */ +HWTEST_F(SecCompManagerTest, AddSecurityComponentToList003, TestSize.Level1) +{ + SecCompManager::GetInstance().isSaExit_ = true; + std::shared_ptr compPtr = std::make_shared(); + SecCompEntity entity(compPtr, ServiceTestCommon::TEST_TOKEN_ID, ServiceTestCommon::TEST_SC_ID_1); + ASSERT_EQ(SC_SERVICE_ERROR_SERVICE_NOT_EXIST, + SecCompManager::GetInstance().AddSecurityComponentToList(ServiceTestCommon::TEST_PID_1, entity)); + SecCompManager::GetInstance().isSaExit_ = false; +} + +/** + * @tc.name: DeleteSecurityComponentFromList002 + * @tc.desc: Test delete security component + * @tc.type: FUNC + * @tc.require: AR000HO9J7 + */ +HWTEST_F(SecCompManagerTest, DeleteSecurityComponentFromList002, TestSize.Level1) +{ + std::shared_ptr compPtr = std::make_shared(); + ASSERT_NE(nullptr, compPtr); + compPtr->rect_.x_ = ServiceTestCommon::TEST_COORDINATE; + compPtr->rect_.y_ = ServiceTestCommon::TEST_COORDINATE; + compPtr->rect_.width_ = ServiceTestCommon::TEST_COORDINATE; + compPtr->rect_.height_ = ServiceTestCommon::TEST_COORDINATE; + SecCompEntity entity(compPtr, ServiceTestCommon::TEST_TOKEN_ID, ServiceTestCommon::TEST_SC_ID_1); + ASSERT_EQ(SC_OK, SecCompManager::GetInstance().AddSecurityComponentToList(ServiceTestCommon::TEST_PID_1, entity)); + + auto component = SecCompManager::GetInstance().GetSecurityComponentFromList(ServiceTestCommon::TEST_PID_1, ServiceTestCommon::TEST_SC_ID_1); + ASSERT_NE(nullptr, component); + ASSERT_EQ(SC_OK, SecCompManager::GetInstance().DeleteSecurityComponentFromList(ServiceTestCommon::TEST_PID_1, ServiceTestCommon::TEST_SC_ID_1)); +} + +/** + * @tc.name: RegisterSecurityComponent002 + * @tc.desc: Test register security component + * @tc.type: FUNC + * @tc.require: AR000HO9J7 + */ +HWTEST_F(SecCompManagerTest, RegisterSecurityComponent002, TestSize.Level1) +{ + nlohmann::json jsonInvalid; + LocationButton buttonValid = BuildValidLocationComponent(); + buttonValid.ToJson(jsonInvalid); + SecCompCallerInfo caller = { + .tokenId = ServiceTestCommon::TEST_TOKEN_ID, + .pid = ServiceTestCommon::TEST_PID_1 + }; + int32_t scId; + ASSERT_NE(SC_ENHANCE_ERROR_IN_MALICIOUS_LIST, + SecCompManager::GetInstance().RegisterSecurityComponent(LOCATION_COMPONENT, jsonInvalid, caller, scId)); + ASSERT_EQ(SC_ENHANCE_ERROR_IN_MALICIOUS_LIST, + SecCompManager::GetInstance().RegisterSecurityComponent(LOCATION_COMPONENT, jsonInvalid, caller, scId)); +} + +/** + * @tc.name: UpdateSecurityComponent002 + * @tc.desc: Test update security component + * @tc.type: FUNC + * @tc.require: AR000HO9J7 + */ +HWTEST_F(SecCompManagerTest, UpdateSecurityComponent002, TestSize.Level1) +{ + nlohmann::json jsonValid; + SecCompCallerInfo caller = { + .tokenId = ServiceTestCommon::TEST_TOKEN_ID, + .pid = ServiceTestCommon::TEST_PID_1 + }; + ASSERT_NE(SC_SERVICE_ERROR_COMPONENT_INFO_INVALID, SecCompManager::GetInstance().UpdateSecurityComponent( + ServiceTestCommon::TEST_SC_ID_1, jsonValid, caller)); + + SecCompManager::GetInstance().AddAppToMaliciousAppList(ServiceTestCommon::TEST_PID_1); + LocationButton buttonValid = BuildValidLocationComponent(); + buttonValid.ToJson(jsonValid); + ASSERT_NE(SC_ENHANCE_ERROR_IN_MALICIOUS_LIST, SecCompManager::GetInstance().UpdateSecurityComponent( + ServiceTestCommon::TEST_SC_ID_1, jsonValid, caller)); +} + +/** + * @tc.name: ExitSaProcess001 + * @tc.desc: Test check ExitSaProcess + * @tc.type: FUNC + * @tc.require: AR000HO9J7 + */ +HWTEST_F(SecCompManagerTest, ExitSaProcess001, TestSize.Level1) +{ + SecCompManager::GetInstance().ExitSaProcess(); + SecCompManager::GetInstance().AddAppToMaliciousAppList(ServiceTestCommon::TEST_PID_1); + ASSERT_FALSE(SecCompManager::GetInstance().IsMaliciousAppListEmpty()); + SecCompManager::GetInstance().ExitSaProcess(); + std::shared_ptr compPtr = std::make_shared(); + ASSERT_NE(nullptr, compPtr); + compPtr->rect_.x_ = ServiceTestCommon::TEST_COORDINATE; + compPtr->rect_.y_ = ServiceTestCommon::TEST_COORDINATE; + compPtr->rect_.width_ = ServiceTestCommon::TEST_COORDINATE; + compPtr->rect_.height_ = ServiceTestCommon::TEST_COORDINATE; + SecCompEntity entity(compPtr, ServiceTestCommon::TEST_TOKEN_ID, ServiceTestCommon::TEST_SC_ID_1); + ASSERT_EQ(SC_OK, SecCompManager::GetInstance().AddSecurityComponentToList(ServiceTestCommon::TEST_PID_1, entity)); + SecCompManager::GetInstance().ExitSaProcess(); + SecCompManager::GetInstance().RemoveAppFromMaliciousAppList(ServiceTestCommon::TEST_PID_1); + ASSERT_TRUE(SecCompManager::GetInstance().IsMaliciousAppListEmpty()); + SecCompManager::GetInstance().ExitSaProcess(); +} + +/** + * @tc.name: ExitWhenAppMgrDied001 + * @tc.desc: Test check ExitWhenAppMgrDied + * @tc.type: FUNC + * @tc.require: AR000HO9J7 + */ +HWTEST_F(SecCompManagerTest, ExitWhenAppMgrDied001, TestSize.Level1) +{ + std::shared_ptr compPtr = std::make_shared(); + ASSERT_NE(nullptr, compPtr); + compPtr->rect_.x_ = ServiceTestCommon::TEST_COORDINATE; + compPtr->rect_.y_ = ServiceTestCommon::TEST_COORDINATE; + compPtr->rect_.width_ = ServiceTestCommon::TEST_COORDINATE; + compPtr->rect_.height_ = ServiceTestCommon::TEST_COORDINATE; + SecCompEntity entity(compPtr, ServiceTestCommon::TEST_TOKEN_ID, ServiceTestCommon::TEST_SC_ID_1); + ASSERT_EQ(SC_OK, SecCompManager::GetInstance().AddSecurityComponentToList(1, entity)); + SecCompManager::GetInstance().ExitWhenAppMgrDied(); + SecCompManager::GetInstance().ExitWhenAppMgrDied(); +} + +/** + * @tc.name: SendCheckInfoEnhanceSysEvent001 + * @tc.desc: Test check SendCheckInfoEnhanceSysEvent + * @tc.type: FUNC + * @tc.require: AR000HO9J7 + */ +HWTEST_F(SecCompManagerTest, SendCheckInfoEnhanceSysEvent001, TestSize.Level1) +{ + ASSERT_TRUE(SecCompManager::GetInstance().IsMaliciousAppListEmpty()); + int32_t scId = INVALID_SC_ID; + const std::string scene = ""; + int32_t res = SC_ENHANCE_ERROR_CHALLENGE_CHECK_FAIL; + SecCompManager::GetInstance().SendCheckInfoEnhanceSysEvent(scId, LOCATION_COMPONENT, scene, res); +} + +/** + * @tc.name: DumpSecComp001 + * @tc.desc: Test check DumpSecComp + * @tc.type: FUNC + * @tc.require: AR000HO9J7 + */ +HWTEST_F(SecCompManagerTest, DumpSecComp001, TestSize.Level1) +{ + std::shared_ptr compPtr = std::make_shared(); + ASSERT_NE(nullptr, compPtr); + compPtr->rect_.x_ = ServiceTestCommon::TEST_COORDINATE; + compPtr->rect_.y_ = ServiceTestCommon::TEST_COORDINATE; + compPtr->rect_.width_ = ServiceTestCommon::TEST_COORDINATE; + compPtr->rect_.height_ = ServiceTestCommon::TEST_COORDINATE; + SecCompEntity entity(compPtr, ServiceTestCommon::TEST_TOKEN_ID, ServiceTestCommon::TEST_SC_ID_1); + SecCompManager::GetInstance().isSaExit_ = false; + ASSERT_EQ(SC_OK, SecCompManager::GetInstance().AddSecurityComponentToList(ServiceTestCommon::TEST_PID_1, entity)); + std::string dumpStr; + SecCompManager::GetInstance().DumpSecComp(dumpStr); +} + +/** + * @tc.name: TransformCallBackResult001 + * @tc.desc: Test check TransformCallBackResult + * @tc.type: FUNC + * @tc.require: AR000HO9J7 + */ +HWTEST_F(SecCompManagerTest, TransformCallBackResult001, TestSize.Level1) +{ + int32_t scId = INVALID_SC_ID; + const std::string scene = "REGISTER"; + int32_t res = SC_ENHANCE_ERROR_NOT_EXIST_ENHANCE; + SecCompManager::GetInstance().SendCheckInfoEnhanceSysEvent(scId, LOCATION_COMPONENT, scene, res); + res = SC_ENHANCE_ERROR_VALUE_INVALID; + SecCompManager::GetInstance().SendCheckInfoEnhanceSysEvent(scId, LOCATION_COMPONENT, scene, res); + res = SC_ENHANCE_ERROR_CALLBACK_OPER_FAIL; + SecCompManager::GetInstance().SendCheckInfoEnhanceSysEvent(scId, LOCATION_COMPONENT, scene, res); + res = SC_SERVICE_ERROR_COMPONENT_INFO_INVALID; + SecCompManager::GetInstance().SendCheckInfoEnhanceSysEvent(scId, LOCATION_COMPONENT, scene, res); + res = SC_ENHANCE_ERROR_CALLBACK_CHECK_FAIL; + SecCompManager::GetInstance().SendCheckInfoEnhanceSysEvent(scId, LOCATION_COMPONENT, scene, res); + res = SC_SERVICE_ERROR_VALUE_INVALID; + SecCompManager::GetInstance().SendCheckInfoEnhanceSysEvent(scId, LOCATION_COMPONENT, scene, res); +} \ No newline at end of file -- Gitee From c289483d474d022247edb0b2cf98f9ab6cf5f115 Mon Sep 17 00:00:00 2001 From: zhaowenli Date: Fri, 13 Oct 2023 12:38:42 +0000 Subject: [PATCH 2/2] issue:#I880EL Signed-off-by: zhaowenli Change-Id: I1aaaadbb6373c31d98b81eb6987a155bd89f8720 --- .../unittest/src/sec_comp_manager_test.cpp | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/services/security_component_service/sa/test/unittest/src/sec_comp_manager_test.cpp b/services/security_component_service/sa/test/unittest/src/sec_comp_manager_test.cpp index 06dd593..ad395f7 100644 --- a/services/security_component_service/sa/test/unittest/src/sec_comp_manager_test.cpp +++ b/services/security_component_service/sa/test/unittest/src/sec_comp_manager_test.cpp @@ -426,11 +426,11 @@ HWTEST_F(SecCompManagerTest, CheckClickSecurityComponentInfo001, TestSize.Level1 */ HWTEST_F(SecCompManagerTest, AddSecurityComponentToList003, TestSize.Level1) { - SecCompManager::GetInstance().isSaExit_ = true; - std::shared_ptr compPtr = std::make_shared(); - SecCompEntity entity(compPtr, ServiceTestCommon::TEST_TOKEN_ID, ServiceTestCommon::TEST_SC_ID_1); - ASSERT_EQ(SC_SERVICE_ERROR_SERVICE_NOT_EXIST, - SecCompManager::GetInstance().AddSecurityComponentToList(ServiceTestCommon::TEST_PID_1, entity)); + SecCompManager::GetInstance().isSaExit_ = true; + std::shared_ptr compPtr = std::make_shared(); + SecCompEntity entity(compPtr, ServiceTestCommon::TEST_TOKEN_ID, ServiceTestCommon::TEST_SC_ID_1); + ASSERT_EQ(SC_SERVICE_ERROR_SERVICE_NOT_EXIST, + SecCompManager::GetInstance().AddSecurityComponentToList(ServiceTestCommon::TEST_PID_1, 0, entity)); SecCompManager::GetInstance().isSaExit_ = false; } @@ -449,11 +449,11 @@ HWTEST_F(SecCompManagerTest, DeleteSecurityComponentFromList002, TestSize.Level1 compPtr->rect_.width_ = ServiceTestCommon::TEST_COORDINATE; compPtr->rect_.height_ = ServiceTestCommon::TEST_COORDINATE; SecCompEntity entity(compPtr, ServiceTestCommon::TEST_TOKEN_ID, ServiceTestCommon::TEST_SC_ID_1); - ASSERT_EQ(SC_OK, SecCompManager::GetInstance().AddSecurityComponentToList(ServiceTestCommon::TEST_PID_1, entity)); + ASSERT_EQ(SC_OK, SecCompManager::GetInstance().AddSecurityComponentToList(ServiceTestCommon::TEST_PID_1, 0, entity)); - auto component = SecCompManager::GetInstance().GetSecurityComponentFromList(ServiceTestCommon::TEST_PID_1, ServiceTestCommon::TEST_SC_ID_1); + auto component = SecCompManager::GetInstance().GetSecurityComponentFromList(1, 1); ASSERT_NE(nullptr, component); - ASSERT_EQ(SC_OK, SecCompManager::GetInstance().DeleteSecurityComponentFromList(ServiceTestCommon::TEST_PID_1, ServiceTestCommon::TEST_SC_ID_1)); + ASSERT_EQ(SC_OK, SecCompManager::GetInstance().DeleteSecurityComponentFromList(1, 11)); } /** @@ -494,7 +494,7 @@ HWTEST_F(SecCompManagerTest, UpdateSecurityComponent002, TestSize.Level1) ASSERT_NE(SC_SERVICE_ERROR_COMPONENT_INFO_INVALID, SecCompManager::GetInstance().UpdateSecurityComponent( ServiceTestCommon::TEST_SC_ID_1, jsonValid, caller)); - SecCompManager::GetInstance().AddAppToMaliciousAppList(ServiceTestCommon::TEST_PID_1); + SecCompManager::GetInstance().malicious_.AddAppToMaliciousAppList(ServiceTestCommon::TEST_PID_1); LocationButton buttonValid = BuildValidLocationComponent(); buttonValid.ToJson(jsonValid); ASSERT_NE(SC_ENHANCE_ERROR_IN_MALICIOUS_LIST, SecCompManager::GetInstance().UpdateSecurityComponent( @@ -510,8 +510,8 @@ HWTEST_F(SecCompManagerTest, UpdateSecurityComponent002, TestSize.Level1) HWTEST_F(SecCompManagerTest, ExitSaProcess001, TestSize.Level1) { SecCompManager::GetInstance().ExitSaProcess(); - SecCompManager::GetInstance().AddAppToMaliciousAppList(ServiceTestCommon::TEST_PID_1); - ASSERT_FALSE(SecCompManager::GetInstance().IsMaliciousAppListEmpty()); + SecCompManager::GetInstance().malicious_.AddAppToMaliciousAppList(ServiceTestCommon::TEST_PID_1); + ASSERT_FALSE(SecCompManager::GetInstance().malicious_.IsMaliciousAppListEmpty()); SecCompManager::GetInstance().ExitSaProcess(); std::shared_ptr compPtr = std::make_shared(); ASSERT_NE(nullptr, compPtr); @@ -520,10 +520,10 @@ HWTEST_F(SecCompManagerTest, ExitSaProcess001, TestSize.Level1) compPtr->rect_.width_ = ServiceTestCommon::TEST_COORDINATE; compPtr->rect_.height_ = ServiceTestCommon::TEST_COORDINATE; SecCompEntity entity(compPtr, ServiceTestCommon::TEST_TOKEN_ID, ServiceTestCommon::TEST_SC_ID_1); - ASSERT_EQ(SC_OK, SecCompManager::GetInstance().AddSecurityComponentToList(ServiceTestCommon::TEST_PID_1, entity)); + ASSERT_EQ(SC_OK, SecCompManager::GetInstance().AddSecurityComponentToList(ServiceTestCommon::TEST_PID_1, 0, entity)); SecCompManager::GetInstance().ExitSaProcess(); - SecCompManager::GetInstance().RemoveAppFromMaliciousAppList(ServiceTestCommon::TEST_PID_1); - ASSERT_TRUE(SecCompManager::GetInstance().IsMaliciousAppListEmpty()); + SecCompManager::GetInstance().malicious_.RemoveAppFromMaliciousAppList(ServiceTestCommon::TEST_PID_1); + ASSERT_TRUE(SecCompManager::GetInstance().malicious_.IsMaliciousAppListEmpty()); SecCompManager::GetInstance().ExitSaProcess(); } @@ -542,7 +542,7 @@ HWTEST_F(SecCompManagerTest, ExitWhenAppMgrDied001, TestSize.Level1) compPtr->rect_.width_ = ServiceTestCommon::TEST_COORDINATE; compPtr->rect_.height_ = ServiceTestCommon::TEST_COORDINATE; SecCompEntity entity(compPtr, ServiceTestCommon::TEST_TOKEN_ID, ServiceTestCommon::TEST_SC_ID_1); - ASSERT_EQ(SC_OK, SecCompManager::GetInstance().AddSecurityComponentToList(1, entity)); + ASSERT_EQ(SC_OK, SecCompManager::GetInstance().AddSecurityComponentToList(1, 0, entity)); SecCompManager::GetInstance().ExitWhenAppMgrDied(); SecCompManager::GetInstance().ExitWhenAppMgrDied(); } @@ -555,7 +555,7 @@ HWTEST_F(SecCompManagerTest, ExitWhenAppMgrDied001, TestSize.Level1) */ HWTEST_F(SecCompManagerTest, SendCheckInfoEnhanceSysEvent001, TestSize.Level1) { - ASSERT_TRUE(SecCompManager::GetInstance().IsMaliciousAppListEmpty()); + ASSERT_TRUE(SecCompManager::GetInstance().malicious_.IsMaliciousAppListEmpty()); int32_t scId = INVALID_SC_ID; const std::string scene = ""; int32_t res = SC_ENHANCE_ERROR_CHALLENGE_CHECK_FAIL; @@ -578,7 +578,7 @@ HWTEST_F(SecCompManagerTest, DumpSecComp001, TestSize.Level1) compPtr->rect_.height_ = ServiceTestCommon::TEST_COORDINATE; SecCompEntity entity(compPtr, ServiceTestCommon::TEST_TOKEN_ID, ServiceTestCommon::TEST_SC_ID_1); SecCompManager::GetInstance().isSaExit_ = false; - ASSERT_EQ(SC_OK, SecCompManager::GetInstance().AddSecurityComponentToList(ServiceTestCommon::TEST_PID_1, entity)); + ASSERT_EQ(SC_OK, SecCompManager::GetInstance().AddSecurityComponentToList(ServiceTestCommon::TEST_PID_1, 0, entity)); std::string dumpStr; SecCompManager::GetInstance().DumpSecComp(dumpStr); } -- Gitee