From b6636618c51ab918543dc096b31fea02034afeed Mon Sep 17 00:00:00 2001 From: zhaoyuan17 Date: Fri, 24 Sep 2021 23:11:13 +0800 Subject: [PATCH] modify abilityname Signed-off-by: zhaoyuan17 --- .../kits/ability/native/src/ability.cpp | 4 +- .../ability/native/src/ability_thread.cpp | 8 +- .../distributed/continuation_handler.cpp | 2 +- .../test/mock/include/mock_data_ability.h | 20 +- .../ability_thread_dataability_test.cpp | 7 +- .../test/unittest/data_ability_impl_test.cpp | 31 +- .../ohos/aafwk/base/user_object_wrapper.cpp | 2 +- .../cpp/src/ohos/aafwk/content/pac_map.cpp | 3 +- .../data_ability_helper_module_test.cpp | 55 +- .../include/ability_manager_client.h | 6 +- .../include/ability_manager_errors.h | 48 +- .../include/ability_manager_interface.h | 6 +- .../include/want_sender_info.h | 2 +- .../kits/js/@ohos.ability.featureAbility.d.ts | 55 +- .../abilityManager/napi_ability_manager.cpp | 1553 ++++++++++------- .../abilityManager/napi_ability_manager.h | 4 +- .../aafwk/abilityManager/native_module.cpp | 18 +- .../aafwk/featureAbility/napi_context.cpp | 4 + .../napi_data_ability_helper.cpp | 10 +- .../aafwk/formManager/napi_form_manager.cpp | 19 +- .../inner/napi_common/napi_common_ability.cpp | 17 + services/abilitymgr/include/ability_config.h | 2 + .../include/ability_manager_proxy.h | 8 +- .../include/ability_manager_service.h | 7 +- .../include/ability_stack_manager.h | 2 +- services/abilitymgr/include/ability_util.h | 6 +- services/abilitymgr/include/mission_record.h | 4 +- .../include/pending_want_common_event.h | 1 - .../abilitymgr/include/pending_want_key.h | 22 +- .../abilitymgr/include/pending_want_manager.h | 1 - .../abilitymgr/include/pending_want_record.h | 10 +- services/abilitymgr/include/power_storage.h | 1 - .../abilitymgr/src/ability_manager_client.cpp | 5 +- .../abilitymgr/src/ability_manager_proxy.cpp | 7 +- .../src/ability_manager_service.cpp | 31 +- .../src/ability_scheduler_proxy.cpp | 9 +- .../abilitymgr/src/ability_scheduler_stub.cpp | 6 +- .../abilitymgr/src/ability_stack_manager.cpp | 11 +- .../abilitymgr/src/data_ability_manager.cpp | 2 +- .../src/kernal_system_app_manager.cpp | 4 +- .../abilitymgr/src/lock_mission_container.cpp | 1 - .../src/pending_want_common_event.cpp | 2 - services/abilitymgr/src/pending_want_key.cpp | 2 - .../abilitymgr/src/pending_want_manager.cpp | 5 +- .../abilitymgr/src/pending_want_record.cpp | 2 + .../include/appmgr_test_service.h | 1 - .../mock/include/mock_app_manager_client.h | 2 - .../test/mock/include/mock_app_mgr_client.h | 1 - .../libs/aakit/include/ability_scheduler.h | 27 +- .../include/mock_ability_connect_callback.h | 1 - .../ability_scheduler_mock.h | 2 - .../include/appmgr/app_mgr_client.h | 3 - .../include/appmgr/app_state_callback_host.h | 2 - .../include/appmgr/iapp_state_callback.h | 2 - .../include/bundlemgr/bundle_mgr_interface.h | 1 - .../include/bundlemgr/mock_bundle_manager.h | 9 +- .../src/bundlemgr/mock_bundle_manager.cpp | 14 +- .../libs/system_ability_mock/system_ability.h | 2 - .../ability_connect_callback_proxy_test.cpp | 2 +- .../mock_ability_connect_callback_stub.h | 1 - .../ability_connect_callback_stub_test.cpp | 20 +- .../mock_ability_connect_callback_stub.h | 1 - .../ability_connect_manage_test.cpp | 108 +- .../ability_manager_proxy_test.cpp | 4 +- .../ability_manager_service_test.cpp | 6 +- .../ability_manager_stub_impl_mock.h | 1 - .../ability_manager_stub_test.cpp | 2 +- .../ability_manager_stub_mock.h | 1 - .../ability_manager_test.cpp | 4 +- .../system_ability_manager_stub.cpp | 6 - .../ability_record_test.cpp | 6 +- .../ability_scheduler_proxy_test.cpp | 6 +- .../ability_schedule_stub_mock.h | 2 - .../ability_scheduler_stub_test.cpp | 2 +- .../ability_service_start_test.cpp | 2 +- .../ability_stack_manager_test.cpp | 37 +- .../ability_token_proxy_test.cpp | 2 +- .../ability_token_stub_test.cpp | 4 +- .../ability_with_applications_test.cpp | 2 +- .../mock_ability_scheduler.cpp | 8 +- .../abilityms_appms_test.cpp | 4 +- .../app_state_call_back_mock.h | 2 - .../connection_record_test.cpp | 6 +- .../data_ability_manager_test.cpp | 8 +- .../data_ability_record_test.cpp | 4 +- .../unittest/phone/info_test/info_test.cpp | 21 +- .../kernal_system_app_manager_test.cpp | 13 +- .../lifecycle_deal_test.cpp | 4 +- .../phone/lifecycle_test/lifecycle_test.cpp | 16 +- .../lifecycle_test/lifecycle_test_base.h | 1 - .../mission_record_test.cpp | 6 +- .../mission_stack_test/mission_stack_test.cpp | 2 +- .../pending_want_key_test.cpp | 32 +- .../pending_want_manager_test.cpp | 10 +- .../pending_want_record_test.cpp | 10 +- .../sender_info_test/sender_info_test.cpp | 7 +- .../want_receiver_proxy_test.cpp | 7 +- .../want_receiver_stub_impl_mock.h | 1 - .../want_receiver_stub_test.cpp | 3 +- .../want_sender_info_test.cpp | 5 +- .../want_sender_proxy_test.cpp | 6 +- .../want_sender_stub_impl_mock.h | 1 - .../want_sender_stub_test.cpp | 3 +- .../phone/wants_info_test/wants_info_test.cpp | 22 +- .../window_info_test/window_info_test.cpp | 2 +- services/test/BUILD.gn | 1 + .../include/mock_ability_connect_callback.h | 1 - .../mock_ability_connect_callback_stub.h | 1 - .../mock/include/mock_ability_manager_proxy.h | 5 - .../mock/include/mock_ability_mgr_service.h | 3 - .../mock/include/mock_ability_scheduler.h | 7 +- .../include/mock_ability_scheduler_stub.h | 13 +- .../test/mock/include/mock_app_mgr_client.h | 4 - .../test/mock/include/mock_app_scheduler.h | 1 - services/test/mock/include/mock_bundle_mgr.h | 11 +- .../test/mock/include/mock_compled_callback.h | 8 +- services/test/mock/include/mock_context.h | 104 +- .../test/mock/include/mock_want_receiver.h | 7 +- services/test/mock/include/system_ability.h | 1 - services/test/mock/src/mock_bundle_mgr.cpp | 9 + .../ability_mgr_module_test.cpp | 21 +- .../ability_record_module_test.cpp | 3 +- .../ability_stack_module_test.cpp | 12 +- .../dump_module_test/dump_module_test.cpp | 12 +- .../ipc_ability_scheduler_test/BUILD.gn | 2 + .../ipc_ability_scheduler_module_test.cpp | 15 +- .../module_test_dump_util.cpp | 3 +- .../panding_want_manager_test.cpp | 52 +- tools/zip/include/zip.h | 14 + tools/zip/kits/napi/napi_zlib.cpp | 250 ++- tools/zip/kits/napi/napi_zlib.h | 53 + tools/zip/kits/napi/napi_zlib_common.h | 3 +- 132 files changed, 1743 insertions(+), 1388 deletions(-) diff --git a/frameworks/kits/ability/native/src/ability.cpp b/frameworks/kits/ability/native/src/ability.cpp index 22607f8903a..0e7692f90b5 100755 --- a/frameworks/kits/ability/native/src/ability.cpp +++ b/frameworks/kits/ability/native/src/ability.cpp @@ -2089,8 +2089,8 @@ void Ability::CleanFormResource(const int64_t formId) // compatible with int form id int64_t cleanId{-1L}; for (auto param : userReqParams_) { - uint64_t unsignedFormId = static_cast(formId); - uint64_t unsignedParamFirst = static_cast(param.first); + uint64_t unsignedFormId = static_cast(formId); + uint64_t unsignedParamFirst = static_cast(param.first); if ((unsignedParamFirst & 0x00000000ffffffffL) == (unsignedFormId & 0x00000000ffffffffL)) { cleanId = param.first; break; diff --git a/frameworks/kits/ability/native/src/ability_thread.cpp b/frameworks/kits/ability/native/src/ability_thread.cpp index b2032c56374..e08ae0a2e28 100644 --- a/frameworks/kits/ability/native/src/ability_thread.cpp +++ b/frameworks/kits/ability/native/src/ability_thread.cpp @@ -79,11 +79,13 @@ std::string AbilityThread::CreateAbilityName(const std::shared_ptrtype == AbilityType::PAGE) { abilityName = ACE_ABILITY_NAME; } else if (abilityInfo->type == AbilityType::SERVICE) { - abilityName = ACE_SERVICE_ABILITY_NAME; + if (abilityInfo->formEnabled == true) { + abilityName = ACE_FORM_ABILITY_NAME; + } else { + abilityName = ACE_SERVICE_ABILITY_NAME; + } } else if (abilityInfo->type == AbilityType::DATA) { abilityName = ACE_DATA_ABILITY_NAME; - } else if (abilityInfo->type == AbilityType::FORM) { - abilityName = ACE_FORM_ABILITY_NAME; } else { abilityName = abilityInfo->name; } diff --git a/frameworks/kits/ability/native/src/continuation/distributed/continuation_handler.cpp b/frameworks/kits/ability/native/src/continuation/distributed/continuation_handler.cpp index da270fa4c92..86d4baaa872 100755 --- a/frameworks/kits/ability/native/src/continuation/distributed/continuation_handler.cpp +++ b/frameworks/kits/ability/native/src/continuation/distributed/continuation_handler.cpp @@ -133,7 +133,7 @@ void ContinuationHandler::SetAbilityInfo(std::shared_ptr &abilityIn { APP_LOGI("%{public}s called begin", __func__); abilityInfo_ = abilityInfo; - ClearDeviceInfo(abilityInfo); + // ClearDeviceInfo(abilityInfo); APP_LOGI("%{public}s called end", __func__); } diff --git a/frameworks/kits/ability/native/test/mock/include/mock_data_ability.h b/frameworks/kits/ability/native/test/mock/include/mock_data_ability.h index 505362509ef..3d6db6457af 100644 --- a/frameworks/kits/ability/native/test/mock/include/mock_data_ability.h +++ b/frameworks/kits/ability/native/test/mock/include/mock_data_ability.h @@ -34,56 +34,56 @@ public: enum Event { ON_ACTIVE = 0, ON_BACKGROUND, ON_FOREGROUND, ON_INACTIVE, ON_START, ON_STOP, UNDEFINED }; - int OpenFile(const Uri &uri, const std::string &mode) + virtual int OpenFile(const Uri &uri, const std::string &mode) { GTEST_LOG_(INFO) << "MockDataAbility::OpenFile called"; return 1; } - int Insert(const Uri &uri, const NativeRdb::ValuesBucket &value) + virtual int Insert(const Uri &uri, const NativeRdb::ValuesBucket &value) { GTEST_LOG_(INFO) << "MockDataAbility::Insert called"; return 1; } - int Update(const Uri &uri, const NativeRdb::ValuesBucket &value, const NativeRdb::DataAbilityPredicates &predicates) + virtual int Update(const Uri &uri, const NativeRdb::ValuesBucket &value, const NativeRdb::DataAbilityPredicates &predicates) { GTEST_LOG_(INFO) << "MockDataAbility::Update called"; return 1; } - int Delete(const Uri &uri, const NativeRdb::DataAbilityPredicates &predicates) + virtual int Delete(const Uri &uri, const NativeRdb::DataAbilityPredicates &predicates) { GTEST_LOG_(INFO) << "MockDataAbility::Delete called"; return 1; } - int OpenRawFile(const Uri &uri, const std::string &mode) + virtual int OpenRawFile(const Uri &uri, const std::string &mode) { GTEST_LOG_(INFO) << "MockDataAbility::OpenRawFile called"; return 1; } - bool Reload(const Uri &uri, const PacMap &extras) + virtual bool Reload(const Uri &uri, const PacMap &extras) { GTEST_LOG_(INFO) << "MockDataAbility::Reload called"; return 1; } - int BatchInsert(const Uri &uri, const std::vector &values) + virtual int BatchInsert(const Uri &uri, const std::vector &values) { GTEST_LOG_(INFO) << "MockDataAbility::BatchInsert called"; return 1; } - std::shared_ptr Query( + virtual std::shared_ptr Query( const Uri &uri, const std::vector &columns, const NativeRdb::DataAbilityPredicates &predicates) { GTEST_LOG_(INFO) << "MockDataAbility::Query called"; @@ -91,14 +91,14 @@ public: return set; } - std::vector GetFileTypes(const Uri &uri, const std::string &mimeTypeFilter) + virtual std::vector GetFileTypes(const Uri &uri, const std::string &mimeTypeFilter) { GTEST_LOG_(INFO) << "MockDataAbility::GetFileTypes called"; value.push_back(mimeTypeFilter); return value; } - std::string GetType(const Uri &uri) + virtual std::string GetType(const Uri &uri) { GTEST_LOG_(INFO) << "MockDataAbility::GetType called"; std::string value("Type1"); diff --git a/frameworks/kits/ability/native/test/unittest/ability_thread_dataability_test.cpp b/frameworks/kits/ability/native/test/unittest/ability_thread_dataability_test.cpp index e01a99257d5..2334a6c1103 100644 --- a/frameworks/kits/ability/native/test/unittest/ability_thread_dataability_test.cpp +++ b/frameworks/kits/ability/native/test/unittest/ability_thread_dataability_test.cpp @@ -92,6 +92,7 @@ HWTEST_F(AbilityThreadTest, AaFwk_AbilityThread_Query_0100, Function | MediumTes std::shared_ptr abilityInfo = std::make_shared(); abilityInfo->name = "MockDataAbility"; abilityInfo->type = AbilityType::DATA; + abilityInfo->isNativeAbility = true; sptr token = sptr(new (std::nothrow) MockAbilityToken()); EXPECT_NE(token, nullptr); if (token != nullptr) { @@ -102,7 +103,7 @@ HWTEST_F(AbilityThreadTest, AaFwk_AbilityThread_Query_0100, Function | MediumTes abilitythread->Attach(application, abilityRecord, mainRunner); std::shared_ptr mockdataability = std::make_shared(); - Uri uri("dataabilitytest://com.example.myapplication5.DataAbilityTest"); + Uri uri("dataabilitytest:///com.example.myapplication5.DataAbilityTest"); std::vector columns; columns.push_back("string1"); @@ -158,6 +159,7 @@ HWTEST_F(AbilityThreadTest, AaFwk_AbilityThread_GetFileTypes_0100, Function | Me std::shared_ptr abilityInfo = std::make_shared(); abilityInfo->name = "MockDataAbility"; abilityInfo->type = AbilityType::DATA; + abilityInfo->isNativeAbility = true; sptr token = sptr(new (std::nothrow) MockAbilityToken()); EXPECT_NE(token, nullptr); if (token != nullptr) { @@ -226,6 +228,7 @@ HWTEST_F(AbilityThreadTest, AaFwk_AbilityThread_OpenFile_0100, Function | Medium std::shared_ptr abilityInfo = std::make_shared(); abilityInfo->name = "MockDataAbility"; abilityInfo->type = AbilityType::DATA; + abilityInfo->isNativeAbility = true; sptr token = sptr(new (std::nothrow) MockAbilityToken()); EXPECT_NE(token, nullptr); if (token != nullptr) { @@ -285,6 +288,7 @@ HWTEST_F(AbilityThreadTest, AaFwk_AbilityThread_Insert_0100, Function | MediumTe std::shared_ptr abilityInfo = std::make_shared(); abilityInfo->name = "MockDataAbility"; abilityInfo->type = AbilityType::DATA; + abilityInfo->isNativeAbility = true; sptr token = sptr(new (std::nothrow) MockAbilityToken()); EXPECT_NE(token, nullptr); if (token != nullptr) { @@ -340,6 +344,7 @@ HWTEST_F(AbilityThreadTest, AaFwk_AbilityThread_Update_0100, Function | MediumTe std::shared_ptr abilityInfo = std::make_shared(); abilityInfo->name = "MockDataAbility"; abilityInfo->type = AbilityType::DATA; + abilityInfo->isNativeAbility = true; sptr token = sptr(new (std::nothrow) MockAbilityToken()); EXPECT_NE(token, nullptr); if (token != nullptr) { diff --git a/frameworks/kits/ability/native/test/unittest/data_ability_impl_test.cpp b/frameworks/kits/ability/native/test/unittest/data_ability_impl_test.cpp index 8b89f1afac7..e57406e4703 100644 --- a/frameworks/kits/ability/native/test/unittest/data_ability_impl_test.cpp +++ b/frameworks/kits/ability/native/test/unittest/data_ability_impl_test.cpp @@ -66,26 +66,30 @@ HWTEST_F(DataAbilityImplTest, AaFwk_DataAbilityImplTest_Insert_0100, Function | { GTEST_LOG_(INFO) << "AaFwk_DataAbilityImplTest_Insert_0100 start"; std::shared_ptr dataabilityimpl = std::make_shared(); + std::shared_ptr application = std::make_shared(); + std::shared_ptr abilityInfo = std::make_shared(); abilityInfo->name = "MockDataAbility"; abilityInfo->type = AbilityType::DATA; + abilityInfo->isNativeAbility = true; sptr token = sptr(new (std::nothrow) MockAbilityToken()); std::shared_ptr record = std::make_shared(abilityInfo, token); std::shared_ptr eventRunner = EventRunner::Create(abilityInfo->name); sptr abilityThread = sptr(new (std::nothrow) AbilityThread()); std::shared_ptr handler = std::make_shared(eventRunner, abilityThread); - std::shared_ptr dataAbility = std::make_shared(); - std::shared_ptr ability; - ability.reset(dataAbility.get()); + std::shared_ptr ability = std::make_shared(); std::shared_ptr contextDeal = std::make_shared(); - dataabilityimpl->Init(application, record, ability, handler, token, contextDeal); + dataabilityimpl->Init(application, record, ability, handler, token, contextDeal); + EXPECT_NE(dataabilityimpl, nullptr); Uri uri("\nullptr"); int number = 1; + int result = 0; NativeRdb::ValuesBucket value; + result = dataabilityimpl->Insert(uri, value); - EXPECT_EQ(number, dataabilityimpl->Insert(uri, value)); + EXPECT_EQ(number, result); sleep(1); GTEST_LOG_(INFO) << "AaFwk_DataAbilityImplTest_Insert_0100 end"; } @@ -127,9 +131,7 @@ HWTEST_F(DataAbilityImplTest, AaFwk_DataAbilityImplTest_Update_0100, Function | std::shared_ptr eventRunner = EventRunner::Create(abilityInfo->name); sptr abilityThread = sptr(new (std::nothrow) AbilityThread()); std::shared_ptr handler = std::make_shared(eventRunner, abilityThread); - std::shared_ptr dataAbility = std::make_shared(); - std::shared_ptr ability; - ability.reset(dataAbility.get()); + std::shared_ptr ability = std::make_shared(); std::shared_ptr contextDeal = std::make_shared(); dataabilityimpl->Init(application, record, ability, handler, token, contextDeal); @@ -180,9 +182,7 @@ HWTEST_F(DataAbilityImplTest, AaFwk_DataAbilityImplTest_Delete_0100, Function | std::shared_ptr eventRunner = EventRunner::Create(abilityInfo->name); sptr abilityThread = sptr(new (std::nothrow) AbilityThread()); std::shared_ptr handler = std::make_shared(eventRunner, abilityThread); - std::shared_ptr dataAbility = std::make_shared(); - std::shared_ptr ability; - ability.reset(dataAbility.get()); + std::shared_ptr ability = std::make_shared(); std::shared_ptr contextDeal = std::make_shared(); dataabilityimpl->Init(application, record, ability, handler, token, contextDeal); @@ -232,22 +232,15 @@ HWTEST_F(DataAbilityImplTest, AaFwk_DataAbilityImplTest_Query_0100, Function | M std::shared_ptr eventRunner = EventRunner::Create(abilityInfo->name); sptr abilityThread = sptr(new (std::nothrow) AbilityThread()); std::shared_ptr handler = std::make_shared(eventRunner, abilityThread); - std::shared_ptr dataAbility = std::make_shared(); - std::shared_ptr ability; - ability.reset(dataAbility.get()); + std::shared_ptr ability = std::make_shared(); std::shared_ptr contextDeal = std::make_shared(); dataabilityimpl->Init(application, record, ability, handler, token, contextDeal); - Uri uri("\nullptr"); std::vector columns; columns.push_back("string1"); - NativeRdb::DataAbilityPredicates predicates; std::shared_ptr set = dataabilityimpl->Query(uri, columns, predicates); - // if (set != nullptr) { - // EXPECT_STREQ("QueryTest", set->testInf_.c_str()); - // } EXPECT_TRUE(set != nullptr); dataabilityimpl.reset(); sleep(1); diff --git a/frameworks/kits/base/cpp/src/ohos/aafwk/base/user_object_wrapper.cpp b/frameworks/kits/base/cpp/src/ohos/aafwk/base/user_object_wrapper.cpp index 50a7521ebfc..97488a565c4 100755 --- a/frameworks/kits/base/cpp/src/ohos/aafwk/base/user_object_wrapper.cpp +++ b/frameworks/kits/base/cpp/src/ohos/aafwk/base/user_object_wrapper.cpp @@ -34,7 +34,7 @@ bool UserObject::Equals(IObject &other) } UserObject *otherObj = static_cast(IUserObject::Query(&other)); - if (otherObj == nullptr || otherObj->value_ == nullptr) { + if (otherObj == nullptr) { return false; } if (value_->GetClassName() == otherObj->value_->GetClassName()) { diff --git a/frameworks/kits/content/cpp/src/ohos/aafwk/content/pac_map.cpp b/frameworks/kits/content/cpp/src/ohos/aafwk/content/pac_map.cpp index c1527c7bb78..1ce101d21ff 100755 --- a/frameworks/kits/content/cpp/src/ohos/aafwk/content/pac_map.cpp +++ b/frameworks/kits/content/cpp/src/ohos/aafwk/content/pac_map.cpp @@ -1465,8 +1465,9 @@ bool PacMap::StringToMapList(const std::string &str, PacMapList &mapList) const int rawJsonLength = static_cast(str.length()); Json::CharReaderBuilder builder; - std::unique_ptr const jsonReader(builder.newCharReader()); + std::unique_ptr jsonReader(builder.newCharReader()); if (!jsonReader->parse(str.c_str(), str.c_str() + rawJsonLength, &root, &err)) { + jsonReader.reset(); return false; } diff --git a/frameworks/kits/test/moduletest/cpp/abilitytest/data_ability_helper_module_test.cpp b/frameworks/kits/test/moduletest/cpp/abilitytest/data_ability_helper_module_test.cpp index fd2bd3c3c86..7ab861bf8c9 100644 --- a/frameworks/kits/test/moduletest/cpp/abilitytest/data_ability_helper_module_test.cpp +++ b/frameworks/kits/test/moduletest/cpp/abilitytest/data_ability_helper_module_test.cpp @@ -12,7 +12,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - + #include "abs_shared_result_set.h" #include "data_ability_predicates.h" #include "values_bucket.h" @@ -241,20 +241,23 @@ HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_OpenFile_Test_0100, Func EXPECT_NE(fd, -1); std::string result = "123456"; - FILE *file = fdopen(fd, "r"); + FILE *file = nullptr; + file = fdopen(fd, "r"); EXPECT_NE(file, nullptr); - int strSize = 7; - std::string str(""); - str.resize(strSize); - if (!feof(file)) { - fgets(&str[0], strSize, file); + if (file != nullptr) { + int strSize = 7; + std::string str(""); + str.resize(strSize); + if (!feof(file)) { + fgets(&str[0], strSize, file); + } + string stringstr(str); + EXPECT_STREQ(stringstr.c_str(), result.c_str()); + + fclose(file); + system("rm /dataability_openfile_test.txt"); } - string stringstr(str); - EXPECT_STREQ(stringstr.c_str(), result.c_str()); - - fclose(file); - system("rm /dataability_openfile_test.txt"); GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_OpenFile_Test_0100 end"; } @@ -279,21 +282,24 @@ HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_OpenFile_Test_0200, Func EXPECT_NE(fd, -1); std::string result = "123456"; - FILE *file = fdopen(fd, "r"); + FILE *file = nullptr; + file = fdopen(fd, "r"); EXPECT_NE(file, nullptr); - int strSize = 7; - std::string str(""); - str.resize(strSize); - if (!feof(file)) { - fgets(&str[0], strSize, file); + if (file != nullptr) { + int strSize = 7; + std::string str(""); + str.resize(strSize); + if (!feof(file)) { + fgets(&str[0], strSize, file); + } + string stringstr(str); + EXPECT_STREQ(stringstr.c_str(), result.c_str()); + + fclose(file); + system("rm /dataability_openfile_test.txt"); } - string stringstr(str); - EXPECT_STREQ(stringstr.c_str(), result.c_str()); - fclose(file); - system("rm /dataability_openfile_test.txt"); - GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_OpenFile_Test_0200 end"; } @@ -482,7 +488,7 @@ HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_Delete_Test_0200, Functi } /** * @tc.number: AaFwk_DataAbilityHelper_Query_Test_0100 - * @tc.name: DataAbilityHelper + * @tc.name: DataAbilityHelper * @tc.desc: Query with DataAbilityHelper which created with uri. */ HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_Query_Test_0100, Function | MediumTest | Level1) @@ -670,6 +676,5 @@ HWTEST_F(DataAbilityHelperTest, AaFwk_DataAbilityHelper_DenormalizeUri_Test_0200 GTEST_LOG_(INFO) << "AaFwk_DataAbilityHelper_DenormalizeUri_Test_0200 end"; } - } // namespace AppExecFwk } // namespace OHOS \ No newline at end of file diff --git a/interfaces/innerkits/ability_manager/include/ability_manager_client.h b/interfaces/innerkits/ability_manager/include/ability_manager_client.h index 05ee7d2eff8..792ca21fd8d 100644 --- a/interfaces/innerkits/ability_manager/include/ability_manager_client.h +++ b/interfaces/innerkits/ability_manager/include/ability_manager_client.h @@ -322,12 +322,12 @@ public: /** * Sets description information about the mission containing this ability. * - * @param missionDescriptionInfo Indicates the object containing information about the - * mission. This parameter cannot be null. + * @param description Indicates the object containing information about the + * mission. This parameter cannot be null. * @return Returns ERR_OK on success, others on failure. */ ErrCode SetMissionDescriptionInfo( - const sptr &token, const MissionDescriptionInfo &missionDescriptionInfo); + const sptr &token, const MissionDescriptionInfo &description); /** * get current system mission lock mode state. diff --git a/interfaces/innerkits/ability_manager/include/ability_manager_errors.h b/interfaces/innerkits/ability_manager/include/ability_manager_errors.h index e829b47593e..4133e2d9cc4 100644 --- a/interfaces/innerkits/ability_manager/include/ability_manager_errors.h +++ b/interfaces/innerkits/ability_manager/include/ability_manager_errors.h @@ -209,73 +209,91 @@ enum { * Result(2097193) for system is lock mission state. */ LOCK_MISSION_STATE_DENY_REQUEST, + /** - * Result(2097190) for move mission to stack: out of size of moving mission. + * Result(2097194) for move mission to stack: out of size of moving mission. */ MOVE_MISSION_TO_STACK_OUT_OF_SIZE, + /** - * Result(2097191) for move mission to stack: moving missions are not same window mode. + * Result(2097195) for move mission to stack: moving missions are not same window mode. */ MOVE_MISSION_TO_STACK_NOT_SAME_WIN_MODE, + /** - * Result(2097192) for move mission to stack: moving mission is not exist. + * Result(2097196) for move mission to stack: moving mission is not exist. */ MOVE_MISSION_TO_STACK_NOT_EXIST_MISSION, + /** - * Result(2097193) for move mission to stack: target mission or ability can't support multi window display. + * Result(2097197) for move mission to stack: target mission or ability can't support multi window display. */ MOVE_MISSION_TO_STACK_NOT_SUPPORT_MULTI_WIN, + /** - * Result(2097194) for move mission to stack: target mission stack size is overflow. + * Result(2097198) for move mission to stack: target mission stack size is overflow. */ MOVE_MISSION_TO_STACK_TARGET_STACK_OVERFLOW, + /** - * Result(2097195) for move mission to stack: already in moving state, request is denied. + * Result(2097199) for move mission to stack: already in moving state, request is denied. */ MOVE_MISSION_TO_STACK_MOVING_DENIED, + /** - * Result(2097196) for minimize multi window failed. + * Result(2097200) for minimize multi window failed. */ MINIMIZE_MULTI_WINDOW_FAILED, + /** - * Result(2097197) for maximize multiwindow: target mission is not exist in multiwindow stack. + * Result(2097201) for maximize multiwindow: target mission is not exist in multiwindow stack. */ MAXIMIZE_MULTIWINDOW_NOT_EXIST, + /** - * Result(2097198) for maximize multi window failed. + * Result(2097202) for maximize multi window failed. */ MAXIMIZE_MULTIWINDOW_FAILED, + /** - * Result(2097199) for change focus ability failed. + * Result(2097203) for change focus ability failed. */ CHANGE_FOCUS_ABILITY_FAILED, + /** - * Result(2097200) for get floating stack failed + * Result(2097204) for get floating stack failed */ GET_FLOATING_STACK_FAILED, + /** - * Result(2097201) for close mutli window failed + * Result(2097205) for close mutli window failed */ CLOSE_MULTI_WINDOW_FAILED, + /** * Result(2097202) for start ability by setting failed */ START_ABILITY_SETTING_FAILED, + /** - * Result(2097203) for start ability by setting ,the ability not support multiwindow. + * Result(2097206) for start ability by setting ,the ability not support multiwindow. */ START_ABILITY_SETTING_NOT_SUPPORT_MULTI_WIN, /** - * Result(2097194) for no found abilityrecord by caller + * Result(2097207) for no found abilityrecord by caller */ NO_FOUND_ABILITY_BY_CALLER, /** - * Result(2097195) for ability visible attribute is false. + * Result(2097208) for ability visible attribute is false. */ ABILITY_VISIBLE_FALSE_DENY_REQUEST, + /** + * Result(2097209) for caller is not systemapp. + */ + CALLER_ISNOT_SYSTEMAPP, }; enum { diff --git a/interfaces/innerkits/ability_manager/include/ability_manager_interface.h b/interfaces/innerkits/ability_manager/include/ability_manager_interface.h index 92040bdee45..bfe7045417f 100644 --- a/interfaces/innerkits/ability_manager/include/ability_manager_interface.h +++ b/interfaces/innerkits/ability_manager/include/ability_manager_interface.h @@ -408,12 +408,12 @@ public: /** * Sets description information about the mission containing this ability. * - * @param missionDescriptionInfo Indicates the object containing information about the - * mission. This parameter cannot be null. + * @param description Indicates the object containing information about the + * mission. This parameter cannot be null. * @return Returns ERR_OK on success, others on failure. */ virtual int SetMissionDescriptionInfo( - const sptr &token, const MissionDescriptionInfo &missionDescriptionInfo) = 0; + const sptr &token, const MissionDescriptionInfo &description) = 0; /** * get current system mission lock mode state. diff --git a/interfaces/innerkits/ability_manager/include/want_sender_info.h b/interfaces/innerkits/ability_manager/include/want_sender_info.h index a54be9ef504..55ffdc875e3 100644 --- a/interfaces/innerkits/ability_manager/include/want_sender_info.h +++ b/interfaces/innerkits/ability_manager/include/want_sender_info.h @@ -32,7 +32,7 @@ struct WantSenderInfo : public Parcelable { std::string resultWho; int32_t requestCode; std::vector allWants; - int32_t flags; + uint32_t flags; int32_t userId; bool ReadFromParcel(Parcel &parcel); diff --git a/interfaces/kits/js/@ohos.ability.featureAbility.d.ts b/interfaces/kits/js/@ohos.ability.featureAbility.d.ts index 9a9170e063c..d92e73b8404 100644 --- a/interfaces/kits/js/@ohos.ability.featureAbility.d.ts +++ b/interfaces/kits/js/@ohos.ability.featureAbility.d.ts @@ -31,7 +31,6 @@ import { ConnectOptions } from './ability/connectOptions'; declare namespace featureAbility { /** * Obtain the want sended from the source ability. - * * @devices phone, tablet * @since 6 * @sysCap AAFwk @@ -43,7 +42,6 @@ declare namespace featureAbility { /** * Starts a new ability. - * * @devices phone, tablet * @since 6 * @sysCap AAFwk @@ -63,12 +61,11 @@ declare namespace featureAbility { /** * Starts an ability and returns the execution result when the ability is destroyed. - * * @devices phone, tablet * @since 7 * @sysCap AAFwk * @param parameter Indicates the ability to start. - * @return Returns the {@link AbilityResult}. + * @return - */ function startAbilityForResult(parameter: StartAbilityParameter, callback: AsyncCallback): void; function startAbilityForResult(parameter: StartAbilityParameter): Promise; @@ -76,7 +73,6 @@ declare namespace featureAbility { /** * Sets the result code and data to be returned by this Page ability to the caller * and destroys this Page ability. - * * @devices phone, tablet * @since 7 * @sysCap AAFwk @@ -88,36 +84,31 @@ declare namespace featureAbility { /** * Destroys this Page ability. - * * @devices phone, tablet * @since 7 * @sysCap AAFwk * @return - */ function terminateSelf(callback: AsyncCallback): void; - function terminateSelf(): Promise; /** * Obtains the dataAbilityHelper. - * * @devices phone, tablet * @since 7 * @sysCap AAFwk * @param uri Indicates the path of the file to open. * @return Returns the dataAbilityHelper. */ - function acquireDataAbilityHelper(uri: string): DataAbilityHelper; + function acquireDataAbilityHelper(uri: string): DataAbilityHelper; /** * Checks whether the main window of this ability has window focus. - * * @devices phone, tablet * @since 7 * @sysCap AAFwk - * @return Returns {@code true} if this ability currently has window focus; returns {@code false} otherwise. */ - function hasWindowFocus(callback: AsyncCallback): void; - function hasWindowFocus(): Promise; + function hasWindowFocus(callback: AsyncCallback): void; + function hasWindowFocus(): Promise; /** * Connects the current ability to an ability using the AbilityInfo.AbilityType.SERVICE template. @@ -127,18 +118,18 @@ declare namespace featureAbility { * @SysCap aafwk * @param request The element name of the service ability * @param options The remote object instance - * @return Returns the number code of the ability connected + * @return Returns the number of the ability connected */ function connectAbility(request: Want, options:ConnectOptions ): number; /** - * The callback interface was connect successfully. - * @default - - * @devices phone, tablet - * @since 7 - * @SysCap aafwk - * @param connection The number code of the ability connected - */ + * The callback interface was connect successfully. + * @default - + * @devices phone, tablet + * @since 7 + * @SysCap aafwk + * @param connection The number of the ability connected + */ function disconnectAbility(connection: number, callback:AsyncCallback): void; function disconnectAbility(connection: number): Promise; @@ -155,25 +146,5 @@ declare namespace featureAbility { WINDOW_MODE_KEY = "windowMode", DISPLAY_ID_KEY = "displayId" } - - export enum ErrorCode { - NO_ERROR = 0, - INVALID_PARAMETER = -1, - ABILITY_NOT_FOUND = -2, - PERMISSION_DENY = -3 - } - - export enum ContinuationState { - LOCAL_RUNNING = 0, - REMOTE_RUNNING = 1, - REPLICA_RUNNING = 2 - } - - export enum DataAbilityOperationType { - TYPE_INSERT = 1, - TYPE_UPDATE = 2, - TYPE_DELETE = 3, - TYPE_ASSERT = 4, - } } -export default featureAbility; \ No newline at end of file +export default featureAbility; diff --git a/interfaces/kits/napi/aafwk/abilityManager/napi_ability_manager.cpp b/interfaces/kits/napi/aafwk/abilityManager/napi_ability_manager.cpp index f8ed6b99817..323a11b9e15 100644 --- a/interfaces/kits/napi/aafwk/abilityManager/napi_ability_manager.cpp +++ b/interfaces/kits/napi/aafwk/abilityManager/napi_ability_manager.cpp @@ -15,8 +15,6 @@ #include "napi_ability_manager.h" -#include -#include #include #include @@ -66,60 +64,51 @@ napi_value ParseBundleName(napi_env env, std::string &bundleName, napi_value arg } void GetRecentMissionsForResult( - napi_env env, const std::vector recentMissionInfos, napi_value result) + napi_env env, const std::vector &recentMissionInfos, napi_value result) { int32_t index = 0; - std::vector entities = recentMissionInfos; - for (const auto &item : entities) { + for (const auto &item : recentMissionInfos) { napi_value objRecentMissionInfo = nullptr; NAPI_CALL_RETURN_VOID(env, napi_create_object(env, &objRecentMissionInfo)); napi_value id = nullptr; NAPI_CALL_RETURN_VOID(env, napi_create_int32(env, item.id, &id)); - HILOG_INFO("id = [%{public}d]", item.id); NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, objRecentMissionInfo, "id", id)); napi_value baseAbility = nullptr; NAPI_CALL_RETURN_VOID(env, napi_create_object(env, &baseAbility)); - napi_value deviceId1 = nullptr; + napi_value deviceId = nullptr; NAPI_CALL_RETURN_VOID( - env, napi_create_string_utf8(env, item.baseAbility.GetDeviceID().c_str(), NAPI_AUTO_LENGTH, &deviceId1)); - NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, baseAbility, "deviceId", deviceId1)); + env, napi_create_string_utf8(env, item.baseAbility.GetDeviceID().c_str(), NAPI_AUTO_LENGTH, &deviceId)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, baseAbility, "deviceId", deviceId)); - napi_value bundleName1 = nullptr; - NAPI_CALL_RETURN_VOID(env, - napi_create_string_utf8(env, item.baseAbility.GetBundleName().c_str(), NAPI_AUTO_LENGTH, &bundleName1)); - HILOG_INFO("bundleName1 = [%{public}s]", item.baseAbility.GetBundleName().c_str()); - NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, baseAbility, "bundleName", bundleName1)); + napi_value bundleName = nullptr; + NAPI_CALL_RETURN_VOID( + env, napi_create_string_utf8(env, item.baseAbility.GetBundleName().c_str(), NAPI_AUTO_LENGTH, &bundleName)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, baseAbility, "bundleName", bundleName)); - napi_value abilityName1 = nullptr; + napi_value abilityName = nullptr; NAPI_CALL_RETURN_VOID(env, - napi_create_string_utf8(env, item.baseAbility.GetAbilityName().c_str(), NAPI_AUTO_LENGTH, &abilityName1)); - HILOG_INFO("abilityName1 = [%{public}s]", item.baseAbility.GetAbilityName().c_str()); - NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, baseAbility, "abilityName", abilityName1)); + napi_create_string_utf8(env, item.baseAbility.GetAbilityName().c_str(), NAPI_AUTO_LENGTH, &abilityName)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, baseAbility, "abilityName", abilityName)); NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, objRecentMissionInfo, "baseAbility", baseAbility)); napi_value topAbility = nullptr; NAPI_CALL_RETURN_VOID(env, napi_create_object(env, &topAbility)); - napi_value deviceId2 = nullptr; NAPI_CALL_RETURN_VOID( - env, napi_create_string_utf8(env, item.topAbility.GetDeviceID().c_str(), NAPI_AUTO_LENGTH, &deviceId2)); - NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, topAbility, "deviceId", deviceId2)); + env, napi_create_string_utf8(env, item.topAbility.GetDeviceID().c_str(), NAPI_AUTO_LENGTH, &deviceId)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, topAbility, "deviceId", deviceId)); - napi_value bundleName2 = nullptr; NAPI_CALL_RETURN_VOID( - env, napi_create_string_utf8(env, item.topAbility.GetBundleName().c_str(), NAPI_AUTO_LENGTH, &bundleName2)); - HILOG_INFO("bundleName2 = [%{public}s]", item.topAbility.GetBundleName().c_str()); - NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, topAbility, "bundleName", bundleName2)); + env, napi_create_string_utf8(env, item.topAbility.GetBundleName().c_str(), NAPI_AUTO_LENGTH, &bundleName)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, topAbility, "bundleName", bundleName)); - napi_value abilityName2 = nullptr; NAPI_CALL_RETURN_VOID(env, - napi_create_string_utf8(env, item.topAbility.GetAbilityName().c_str(), NAPI_AUTO_LENGTH, &abilityName2)); - NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, topAbility, "abilityName", abilityName2)); - HILOG_INFO("abilityName2 = [%{public}s]", item.topAbility.GetAbilityName().c_str()); + napi_create_string_utf8(env, item.topAbility.GetAbilityName().c_str(), NAPI_AUTO_LENGTH, &abilityName)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, topAbility, "abilityName", abilityName)); NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, objRecentMissionInfo, "topAbility", topAbility)); napi_value missionDescription = nullptr; @@ -143,6 +132,64 @@ void GetRecentMissionsForResult( } } +void GetAbilityMissionInfosForResult( + napi_env env, const std::vector &recentMissionInfos, napi_value result) +{ + int32_t index = 0; + for (const auto &item : recentMissionInfos) { + napi_value objRecentMissionInfo = nullptr; + NAPI_CALL_RETURN_VOID(env, napi_create_object(env, &objRecentMissionInfo)); + + napi_value id = nullptr; + NAPI_CALL_RETURN_VOID(env, napi_create_int32(env, item.id, &id)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, objRecentMissionInfo, "missionId", id)); + + napi_value baseAbility = nullptr; + NAPI_CALL_RETURN_VOID(env, napi_create_object(env, &baseAbility)); + + napi_value deviceId = nullptr; + NAPI_CALL_RETURN_VOID( + env, napi_create_string_utf8(env, item.baseAbility.GetDeviceID().c_str(), NAPI_AUTO_LENGTH, &deviceId)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, baseAbility, "deviceId", deviceId)); + + napi_value bundleName = nullptr; + NAPI_CALL_RETURN_VOID( + env, napi_create_string_utf8(env, item.baseAbility.GetBundleName().c_str(), NAPI_AUTO_LENGTH, &bundleName)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, baseAbility, "bundleName", bundleName)); + + napi_value abilityName = nullptr; + NAPI_CALL_RETURN_VOID(env, + napi_create_string_utf8(env, item.baseAbility.GetAbilityName().c_str(), NAPI_AUTO_LENGTH, &abilityName)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, baseAbility, "abilityName", abilityName)); + + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, objRecentMissionInfo, "bottomAbility", baseAbility)); + + napi_value topAbility = nullptr; + NAPI_CALL_RETURN_VOID(env, napi_create_object(env, &topAbility)); + + NAPI_CALL_RETURN_VOID( + env, napi_create_string_utf8(env, item.topAbility.GetDeviceID().c_str(), NAPI_AUTO_LENGTH, &deviceId)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, topAbility, "deviceId", deviceId)); + + NAPI_CALL_RETURN_VOID( + env, napi_create_string_utf8(env, item.topAbility.GetBundleName().c_str(), NAPI_AUTO_LENGTH, &bundleName)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, topAbility, "bundleName", bundleName)); + + NAPI_CALL_RETURN_VOID(env, + napi_create_string_utf8(env, item.topAbility.GetAbilityName().c_str(), NAPI_AUTO_LENGTH, &abilityName)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, topAbility, "abilityName", abilityName)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, objRecentMissionInfo, "topAbility", topAbility)); + + napi_value nWindowMode = nullptr; + int32_t windowMode = 0; + NAPI_CALL_RETURN_VOID(env, napi_create_int32(env, windowMode, &nWindowMode)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, objRecentMissionInfo, "windowMode", nWindowMode)); + + NAPI_CALL_RETURN_VOID(env, napi_set_element(env, result, index, objRecentMissionInfo)); + index++; + } +} + void GetAllRunningProcessesForResult(napi_env env, const std::vector &info, napi_value result) { int32_t index = 0; @@ -188,6 +235,36 @@ void GetAllRunningProcessesForResult(napi_env env, const std::vector &info, napi_value result) +{ + int32_t index = 0; + + for (const auto &item : info) { + napi_value objAppProcessInfo = nullptr; + NAPI_CALL_RETURN_VOID(env, napi_create_object(env, &objAppProcessInfo)); + + napi_value nPid = nullptr; + NAPI_CALL_RETURN_VOID(env, napi_create_int32(env, item.pid_, &nPid)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, objAppProcessInfo, "pid", nPid)); + + napi_value nUid = nullptr; + NAPI_CALL_RETURN_VOID(env, napi_create_int32(env, item.uid_, &nUid)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, objAppProcessInfo, "uid", nUid)); + + napi_value nProcessName = nullptr; + NAPI_CALL_RETURN_VOID( + env, napi_create_string_utf8(env, item.processName_.c_str(), NAPI_AUTO_LENGTH, &nProcessName)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, objAppProcessInfo, "processName", nProcessName)); + + napi_value nBundleNames = nullptr; + NAPI_CALL_RETURN_VOID(env, napi_create_array(env, &nBundleNames)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, objAppProcessInfo, "bundleNames", nBundleNames)); + + NAPI_CALL_RETURN_VOID(env, napi_set_element(env, result, index, objAppProcessInfo)); + index++; + } +} + int32_t RemoveMissionsForResult(const std::vector &missionIds) { int32_t error = 0; @@ -200,8 +277,51 @@ int32_t RemoveMissionsForResult(const std::vector &missionIds) return error; } +auto NAPI_QueryRecentAbilityMissionInfosAsyncExecuteCallback = [](napi_env env, void *data) { + HILOG_INFO("queryRecentAbilityMissionInfos called(CallBack Mode)..."); + AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; + HILOG_INFO("maxMissionNum = [%{public}d]", async_callback_info->maxMissionNum); + HILOG_INFO("queryType = [%{public}d]", async_callback_info->queryType); + + GetAbilityManagerInstance()->GetRecentMissions( + async_callback_info->maxMissionNum, async_callback_info->queryType, async_callback_info->recentMissionInfo); +}; + +auto NAPI_QueryRecentAbilityMissionInfosAsyncCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("queryRecentAbilityMissionInfos compeleted(CallBack Mode)..."); + AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; + napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; + napi_value callback = nullptr; + napi_value undefined = nullptr; + napi_value callResult = nullptr; + + result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); + napi_create_array(env, &result[1]); + GetRecentMissionsForResult(env, async_callback_info->recentMissionInfo, result[1]); + napi_get_undefined(env, &undefined); + napi_get_reference_value(env, async_callback_info->callback[0], &callback); + napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); + + if (async_callback_info->callback[0] != nullptr) { + napi_delete_reference(env, async_callback_info->callback[0]); + } + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +auto NAPI_QueryRecentAbilityMissionInfosPromiseCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("queryRecentAbilityMissionInfos compeleted(Promise Mode)..."); + AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; + napi_value result = nullptr; + napi_create_array(env, &result); + GetRecentMissionsForResult(env, async_callback_info->recentMissionInfo, result); + napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + napi_value NAPI_QueryRecentAbilityMissionInfosWrap( - napi_env env, napi_callback_info info, bool callBackMode, AsyncMissionInfosCallbackInfo *async_callback_info) + napi_env env, napi_callback_info info, bool callBackMode, AsyncMissionInfosCallbackInfo &async_callback_info) { HILOG_INFO("NAPI_QueryRecentAbilityMissionInfos called..."); if (callBackMode) { @@ -211,41 +331,12 @@ napi_value NAPI_QueryRecentAbilityMissionInfosWrap( napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("queryRecentAbilityMissionInfos called(CallBack Mode)..."); - AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; - HILOG_INFO("maxMissionNum = [%{public}d]", async_callback_info->maxMissionNum); - HILOG_INFO("queryType = [%{public}d]", async_callback_info->queryType); - - GetAbilityManagerInstance()->GetRecentMissions(async_callback_info->maxMissionNum, - async_callback_info->queryType, - async_callback_info->recentMissionInfo); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("queryRecentAbilityMissionInfos compeleted(CallBack Mode)..."); - AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; - napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; - napi_value callback = nullptr; - napi_value undefined = nullptr; - napi_value callResult = nullptr; - - result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); - napi_create_array(env, &result[1]); - GetRecentMissionsForResult(env, async_callback_info->recentMissionInfo, result[1]); - napi_get_undefined(env, &undefined); - napi_get_reference_value(env, async_callback_info->callback[0], &callback); - napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); - - if (async_callback_info->callback[0] != nullptr) { - napi_delete_reference(env, async_callback_info->callback[0]); - } - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - - NAPI_CALL(env, napi_queue_async_work(env, async_callback_info->asyncWork)); + NAPI_QueryRecentAbilityMissionInfosAsyncExecuteCallback, + NAPI_QueryRecentAbilityMissionInfosAsyncCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + + NAPI_CALL(env, napi_queue_async_work(env, async_callback_info.asyncWork)); // create reutrn napi_value ret = 0; NAPI_CALL(env, napi_create_int32(env, 1, &ret)); @@ -257,35 +348,16 @@ napi_value NAPI_QueryRecentAbilityMissionInfosWrap( napi_deferred deferred = nullptr; napi_value promise = nullptr; NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); - async_callback_info->deferred = deferred; + async_callback_info.deferred = deferred; napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("queryRecentAbilityMissionInfos called(Promise Mode)..."); - AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; - HILOG_INFO("maxMissionNum = [%{public}d]", async_callback_info->maxMissionNum); - HILOG_INFO("queryType = [%{public}d]", async_callback_info->queryType); - - GetAbilityManagerInstance()->GetRecentMissions(async_callback_info->maxMissionNum, - async_callback_info->queryType, - async_callback_info->recentMissionInfo); - HILOG_INFO("size = [%{public}zu]", async_callback_info->recentMissionInfo.size()); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("queryRecentAbilityMissionInfos compeleted(Promise Mode)..."); - AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; - napi_value result; - napi_create_array(env, &result); - GetRecentMissionsForResult(env, async_callback_info->recentMissionInfo, result); - napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - napi_queue_async_work(env, async_callback_info->asyncWork); + NAPI_QueryRecentAbilityMissionInfosAsyncExecuteCallback, + NAPI_QueryRecentAbilityMissionInfosPromiseCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + napi_queue_async_work(env, async_callback_info.asyncWork); return promise; } } @@ -318,8 +390,11 @@ napi_value NAPI_QueryRecentAbilityMissionInfos(napi_env env, napi_callback_info callBackMode = true; } - AsyncMissionInfosCallbackInfo *async_callback_info = - new (std::nothrow) AsyncMissionInfosCallbackInfo{.env = env, .asyncWork = nullptr, .deferred = nullptr}; + AsyncMissionInfosCallbackInfo *async_callback_info = new (std::nothrow) AsyncMissionInfosCallbackInfo{ + .env = env, + .asyncWork = nullptr, + .deferred = nullptr, + }; if (async_callback_info == nullptr) { return nullptr; } @@ -330,7 +405,7 @@ napi_value NAPI_QueryRecentAbilityMissionInfos(napi_env env, napi_callback_info napi_create_reference(env, argv[NUMBER_OF_PARAMETERS_TWO], 1, &async_callback_info->callback[0]); } - napi_value ret = NAPI_QueryRecentAbilityMissionInfosWrap(env, info, callBackMode, async_callback_info); + napi_value ret = NAPI_QueryRecentAbilityMissionInfosWrap(env, info, callBackMode, *async_callback_info); if (ret == nullptr) { delete async_callback_info; async_callback_info = nullptr; @@ -339,52 +414,66 @@ napi_value NAPI_QueryRecentAbilityMissionInfos(napi_env env, napi_callback_info return ((callBackMode) ? (nullptr) : (ret)); } +auto NAPI_GetpreviousAbilityMissionInfosAsyncExecuteCallback = [](napi_env env, void *data) { + HILOG_INFO("getpreviousAbilityMissionInfos called(CallBack Mode)..."); + AsyncPreviousMissionInfosCallbackInfo *async_callback_info = (AsyncPreviousMissionInfosCallbackInfo *)data; + HILOG_INFO("maxMissionNum = [%{public}d]", async_callback_info->maxMissionNum); + + GetAbilityManagerInstance()->GetRecentMissions( + async_callback_info->maxMissionNum, 1, async_callback_info->previousMissionInfo); +}; + +auto NAPI_GetpreviousAbilityMissionInfosAsyncCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("getpreviousAbilityMissionInfos compeleted(CallBack Mode)..."); + AsyncPreviousMissionInfosCallbackInfo *async_callback_info = (AsyncPreviousMissionInfosCallbackInfo *)data; + napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; + napi_value callback = nullptr; + napi_value undefined = nullptr; + napi_value callResult = nullptr; + + result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); + napi_create_array(env, &result[1]); + GetAbilityMissionInfosForResult(env, async_callback_info->previousMissionInfo, result[1]); + napi_get_undefined(env, &undefined); + napi_get_reference_value(env, async_callback_info->callback[0], &callback); + napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); + + if (async_callback_info->callback[0] != nullptr) { + napi_delete_reference(env, async_callback_info->callback[0]); + } + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +auto NAPI_GetpreviousAbilityMissionInfosPromiseCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("getpreviousAbilityMissionInfos compeleted(Promise Mode)..."); + AsyncPreviousMissionInfosCallbackInfo *async_callback_info = (AsyncPreviousMissionInfosCallbackInfo *)data; + napi_value result = nullptr; + napi_create_array(env, &result); + GetAbilityMissionInfosForResult(env, async_callback_info->previousMissionInfo, result); + napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + napi_value NAPI_GetpreviousAbilityMissionInfosWrap(napi_env env, napi_callback_info info, bool callBackMode, - AsyncPreviousMissionInfosCallbackInfo *async_callback_info) + AsyncPreviousMissionInfosCallbackInfo &async_callback_info) { HILOG_INFO("NAPI_GetpreviousAbilityMissionInfosWrap called..."); if (callBackMode) { napi_value resourceName = nullptr; napi_create_string_latin1(env, "NAPI_GetpreviousAbilityMissionInfosWrap", NAPI_AUTO_LENGTH, &resourceName); + napi_value resource = nullptr; napi_create_async_work(env, - nullptr, + resource, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("getpreviousAbilityMissionInfos called(CallBack Mode)..."); - AsyncPreviousMissionInfosCallbackInfo *async_callback_info = - (AsyncPreviousMissionInfosCallbackInfo *)data; - HILOG_INFO("maxMissionNum = [%{public}d]", async_callback_info->maxMissionNum); - - GetAbilityManagerInstance()->GetRecentMissions( - async_callback_info->maxMissionNum, 1, async_callback_info->previousMissionInfo); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("getpreviousAbilityMissionInfos compeleted(CallBack Mode)..."); - AsyncPreviousMissionInfosCallbackInfo *async_callback_info = - (AsyncPreviousMissionInfosCallbackInfo *)data; - napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; - napi_value callback = nullptr; - napi_value undefined = nullptr; - napi_value callResult = nullptr; - - result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); - napi_create_array(env, &result[1]); - GetRecentMissionsForResult(env, async_callback_info->previousMissionInfo, result[1]); - napi_get_undefined(env, &undefined); - napi_get_reference_value(env, async_callback_info->callback[0], &callback); - napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); - - if (async_callback_info->callback[0] != nullptr) { - napi_delete_reference(env, async_callback_info->callback[0]); - } - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - - NAPI_CALL(env, napi_queue_async_work(env, async_callback_info->asyncWork)); + NAPI_GetpreviousAbilityMissionInfosAsyncExecuteCallback, + NAPI_GetpreviousAbilityMissionInfosAsyncCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + + NAPI_CALL(env, napi_queue_async_work(env, async_callback_info.asyncWork)); // create reutrn napi_value ret = 0; NAPI_CALL(env, napi_create_int32(env, 1, &ret)); @@ -397,35 +486,16 @@ napi_value NAPI_GetpreviousAbilityMissionInfosWrap(napi_env env, napi_callback_i napi_deferred deferred = nullptr; napi_value promise = nullptr; NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); - async_callback_info->deferred = deferred; + async_callback_info.deferred = deferred; napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("getpreviousAbilityMissionInfos called(Promise Mode)..."); - AsyncPreviousMissionInfosCallbackInfo *async_callback_info = - (AsyncPreviousMissionInfosCallbackInfo *)data; - HILOG_INFO("maxMissionNum = [%{public}d]", async_callback_info->maxMissionNum); - - GetAbilityManagerInstance()->GetRecentMissions( - async_callback_info->maxMissionNum, 1, async_callback_info->previousMissionInfo); - HILOG_INFO("size = [%{public}zu]", async_callback_info->previousMissionInfo.size()); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("getpreviousAbilityMissionInfos compeleted(Promise Mode)..."); - AsyncPreviousMissionInfosCallbackInfo *async_callback_info = - (AsyncPreviousMissionInfosCallbackInfo *)data; - napi_value result; - napi_create_array(env, &result); - GetRecentMissionsForResult(env, async_callback_info->previousMissionInfo, result); - napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - napi_queue_async_work(env, async_callback_info->asyncWork); + NAPI_GetpreviousAbilityMissionInfosAsyncExecuteCallback, + NAPI_GetpreviousAbilityMissionInfosPromiseCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + napi_queue_async_work(env, async_callback_info.asyncWork); return promise; } } @@ -453,7 +523,11 @@ napi_value NAPI_GetPreviousAbilityMissionInfos(napi_env env, napi_callback_info } AsyncPreviousMissionInfosCallbackInfo *async_callback_info = - new (std::nothrow) AsyncPreviousMissionInfosCallbackInfo{.env = env, .asyncWork = nullptr, .deferred = nullptr}; + new (std::nothrow) AsyncPreviousMissionInfosCallbackInfo{ + .env = env, + .asyncWork = nullptr, + .deferred = nullptr, + }; if (async_callback_info == nullptr) { return nullptr; } @@ -463,7 +537,7 @@ napi_value NAPI_GetPreviousAbilityMissionInfos(napi_env env, napi_callback_info napi_create_reference(env, argv[1], 1, &async_callback_info->callback[0]); } - napi_value ret = NAPI_GetpreviousAbilityMissionInfosWrap(env, info, callBackMode, async_callback_info); + napi_value ret = NAPI_GetpreviousAbilityMissionInfosWrap(env, info, callBackMode, *async_callback_info); if (ret == nullptr) { delete async_callback_info; async_callback_info = nullptr; @@ -472,8 +546,52 @@ napi_value NAPI_GetPreviousAbilityMissionInfos(napi_env env, napi_callback_info return ((callBackMode) ? (nullptr) : (ret)); } +auto NAPI_QueryRunningAbilityMissionInfosAsyncExecuteCallback = [](napi_env env, void *data) { + HILOG_INFO("NAPI_QueryRunningAbilityMissionInfosWrap called(CallBack Mode)..."); + AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; + HILOG_INFO("maxMissionNum = [%{public}d]", async_callback_info->maxMissionNum); + HILOG_INFO("queryType = [%{public}d]", async_callback_info->queryType); + + GetAbilityManagerInstance()->GetRecentMissions( + async_callback_info->maxMissionNum, async_callback_info->queryType, async_callback_info->recentMissionInfo); + HILOG_INFO("size = [%{public}zu]", async_callback_info->recentMissionInfo.size()); +}; + +auto NAPI_QueryRunningAbilityMissionInfosAsyncCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("NAPI_QueryRunningAbilityMissionInfosWrap compeleted(CallBack Mode)..."); + AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; + napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; + napi_value callback = nullptr; + napi_value undefined = nullptr; + napi_value callResult = nullptr; + + result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); + napi_create_array(env, &result[1]); + GetRecentMissionsForResult(env, async_callback_info->recentMissionInfo, result[1]); + napi_get_undefined(env, &undefined); + napi_get_reference_value(env, async_callback_info->callback[0], &callback); + napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); + + if (async_callback_info->callback[0] != nullptr) { + napi_delete_reference(env, async_callback_info->callback[0]); + } + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +auto NAPI_QueryRunningAbilityMissionInfosPromiseCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("queryRunningAbilityMissionInfos compeleted(Promise Mode)..."); + AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; + napi_value result = nullptr; + napi_create_array(env, &result); + GetRecentMissionsForResult(env, async_callback_info->recentMissionInfo, result); + napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + napi_value NAPI_QueryRunningAbilityMissionInfosWrap( - napi_env env, napi_callback_info info, bool callBackMode, AsyncMissionInfosCallbackInfo *async_callback_info) + napi_env env, napi_callback_info info, bool callBackMode, AsyncMissionInfosCallbackInfo &async_callback_info) { HILOG_INFO("NAPI_QueryRunningAbilityMissionInfosWrap called..."); if (callBackMode) { @@ -483,42 +601,12 @@ napi_value NAPI_QueryRunningAbilityMissionInfosWrap( napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("NAPI_QueryRunningAbilityMissionInfosWrap called(CallBack Mode)..."); - AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; - HILOG_INFO("maxMissionNum = [%{public}d]", async_callback_info->maxMissionNum); - HILOG_INFO("queryType = [%{public}d]", async_callback_info->queryType); - - GetAbilityManagerInstance()->GetRecentMissions(async_callback_info->maxMissionNum, - async_callback_info->queryType, - async_callback_info->recentMissionInfo); - HILOG_INFO("size = [%{public}zu]", async_callback_info->recentMissionInfo.size()); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("NAPI_QueryRunningAbilityMissionInfosWrap compeleted(CallBack Mode)..."); - AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; - napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; - napi_value callback = nullptr; - napi_value undefined = nullptr; - napi_value callResult = nullptr; - - result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); - napi_create_array(env, &result[1]); - GetRecentMissionsForResult(env, async_callback_info->recentMissionInfo, result[1]); - napi_get_undefined(env, &undefined); - napi_get_reference_value(env, async_callback_info->callback[0], &callback); - napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); - - if (async_callback_info->callback[0] != nullptr) { - napi_delete_reference(env, async_callback_info->callback[0]); - } - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - - NAPI_CALL(env, napi_queue_async_work(env, async_callback_info->asyncWork)); + NAPI_QueryRunningAbilityMissionInfosAsyncExecuteCallback, + NAPI_QueryRunningAbilityMissionInfosAsyncCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + + NAPI_CALL(env, napi_queue_async_work(env, async_callback_info.asyncWork)); // create reutrn napi_value ret = 0; NAPI_CALL(env, napi_create_int32(env, 0, &ret)); @@ -530,35 +618,16 @@ napi_value NAPI_QueryRunningAbilityMissionInfosWrap( napi_deferred deferred = nullptr; napi_value promise = nullptr; NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); - async_callback_info->deferred = deferred; + async_callback_info.deferred = deferred; napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("queryRunningAbilityMissionInfos called(Promise Mode)..."); - AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; - HILOG_INFO("maxMissionNum = [%{public}d]", async_callback_info->maxMissionNum); - HILOG_INFO("queryType = [%{public}d]", async_callback_info->queryType); - - GetAbilityManagerInstance()->GetRecentMissions(async_callback_info->maxMissionNum, - async_callback_info->queryType, - async_callback_info->recentMissionInfo); - HILOG_INFO("size = [%{public}zu]", async_callback_info->recentMissionInfo.size()); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("queryRunningAbilityMissionInfos compeleted(Promise Mode)..."); - AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; - napi_value result; - napi_create_array(env, &result); - GetRecentMissionsForResult(env, async_callback_info->recentMissionInfo, result); - napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - napi_queue_async_work(env, async_callback_info->asyncWork); + NAPI_QueryRunningAbilityMissionInfosAsyncExecuteCallback, + NAPI_QueryRunningAbilityMissionInfosPromiseCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + napi_queue_async_work(env, async_callback_info.asyncWork); return promise; } } @@ -585,8 +654,11 @@ napi_value NAPI_QueryRunningAbilityMissionInfos(napi_env env, napi_callback_info callBackMode = true; } - AsyncMissionInfosCallbackInfo *async_callback_info = - new (std::nothrow) AsyncMissionInfosCallbackInfo{.env = env, .asyncWork = nullptr, .deferred = nullptr}; + AsyncMissionInfosCallbackInfo *async_callback_info = new (std::nothrow) AsyncMissionInfosCallbackInfo{ + .env = env, + .asyncWork = nullptr, + .deferred = nullptr, + }; if (async_callback_info == nullptr) { return nullptr; } @@ -598,7 +670,7 @@ napi_value NAPI_QueryRunningAbilityMissionInfos(napi_env env, napi_callback_info napi_create_reference(env, argv[1], 1, &async_callback_info->callback[0]); } - napi_value ret = NAPI_QueryRunningAbilityMissionInfosWrap(env, info, callBackMode, async_callback_info); + napi_value ret = NAPI_QueryRunningAbilityMissionInfosWrap(env, info, callBackMode, *async_callback_info); if (ret == nullptr) { delete async_callback_info; async_callback_info = nullptr; @@ -607,8 +679,180 @@ napi_value NAPI_QueryRunningAbilityMissionInfos(napi_env env, napi_callback_info return ((callBackMode) ? (nullptr) : (ret)); } +auto NAPI_GetActiveAbilityMissionInfosAsyncExecuteCallback = [](napi_env env, void *data) { + HILOG_INFO("NAPI_GetActiveAbilityMissionInfosWrap called(CallBack Mode)..."); + AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; + HILOG_INFO("maxMissionNum = [%{public}d]", async_callback_info->maxMissionNum); + HILOG_INFO("queryType = [%{public}d]", async_callback_info->queryType); + + GetAbilityManagerInstance()->GetRecentMissions( + async_callback_info->maxMissionNum, async_callback_info->queryType, async_callback_info->recentMissionInfo); + HILOG_INFO("size = [%{public}zu]", async_callback_info->recentMissionInfo.size()); +}; + +auto NAPI_GetActiveAbilityMissionInfosAsyncCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("NAPI_GetActiveAbilityMissionInfosWrap compeleted(CallBack Mode)..."); + AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; + napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; + napi_value callback = nullptr; + napi_value undefined = nullptr; + napi_value callResult = nullptr; + + result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); + napi_create_array(env, &result[1]); + GetAbilityMissionInfosForResult(env, async_callback_info->recentMissionInfo, result[1]); + napi_get_undefined(env, &undefined); + napi_get_reference_value(env, async_callback_info->callback[0], &callback); + napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); + + if (async_callback_info->callback[0] != nullptr) { + napi_delete_reference(env, async_callback_info->callback[0]); + } + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +auto NAPI_GetActiveAbilityMissionInfosPromiseCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("getActiveAbilityMissionInfos compeleted(Promise Mode)..."); + AsyncMissionInfosCallbackInfo *async_callback_info = (AsyncMissionInfosCallbackInfo *)data; + napi_value result = nullptr; + napi_create_array(env, &result); + GetAbilityMissionInfosForResult(env, async_callback_info->recentMissionInfo, result); + napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +napi_value NAPI_GetActiveAbilityMissionInfosWrap( + napi_env env, napi_callback_info info, bool callBackMode, AsyncMissionInfosCallbackInfo &async_callback_info) +{ + HILOG_INFO("NAPI_GetActiveAbilityMissionInfosWrap called..."); + if (callBackMode) { + napi_value resourceName = nullptr; + napi_create_string_latin1(env, "NAPI_GetActiveAbilityMissionInfosCallBack", NAPI_AUTO_LENGTH, &resourceName); + + napi_create_async_work(env, + nullptr, + resourceName, + NAPI_GetActiveAbilityMissionInfosAsyncExecuteCallback, + NAPI_GetActiveAbilityMissionInfosAsyncCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + + NAPI_CALL(env, napi_queue_async_work(env, async_callback_info.asyncWork)); + // create reutrn + napi_value ret = 0; + NAPI_CALL(env, napi_create_int32(env, 0, &ret)); + return ret; + } else { + napi_value resourceName = nullptr; + napi_create_string_latin1(env, "NAPI_GetActiveAbilityMissionInfosPromise", NAPI_AUTO_LENGTH, &resourceName); + + napi_deferred deferred = nullptr; + napi_value promise = nullptr; + NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); + async_callback_info.deferred = deferred; + + napi_create_async_work(env, + nullptr, + resourceName, + NAPI_GetActiveAbilityMissionInfosAsyncExecuteCallback, + NAPI_GetActiveAbilityMissionInfosPromiseCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + napi_queue_async_work(env, async_callback_info.asyncWork); + return promise; + } +} + +napi_value NAPI_GetActiveAbilityMissionInfos(napi_env env, napi_callback_info info) +{ + size_t argc = NUMBER_OF_PARAMETERS_TWO; + napi_value argv[NUMBER_OF_PARAMETERS_TWO] = {}; + NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, NULL, NULL)); + HILOG_INFO("argc = [%{public}zu]", argc); + + napi_valuetype valuetype0 = napi_valuetype::napi_null; + NAPI_CALL(env, napi_typeof(env, argv[0], &valuetype0)); + NAPI_ASSERT(env, valuetype0 == napi_number, "Wrong argument type. Numbers expected."); + + int32_t value0 = 0; + NAPI_CALL(env, napi_get_value_int32(env, argv[0], &value0)); + + bool callBackMode = false; + if (argc >= NUMBER_OF_PARAMETERS_TWO) { + napi_valuetype valuetype = napi_valuetype::napi_null; + NAPI_CALL(env, napi_typeof(env, argv[1], &valuetype)); + NAPI_ASSERT(env, valuetype == napi_function, "Wrong argument type. Function expected."); + callBackMode = true; + } + + AsyncMissionInfosCallbackInfo *async_callback_info = new (std::nothrow) AsyncMissionInfosCallbackInfo{ + .env = env, + .asyncWork = nullptr, + .deferred = nullptr, + }; + if (async_callback_info == nullptr) { + return nullptr; + } + + async_callback_info->maxMissionNum = value0; + async_callback_info->queryType = QUERY_RECENT_RUNNING_MISSION_INFO_TYPE; + + if (callBackMode) { + napi_create_reference(env, argv[1], 1, &async_callback_info->callback[0]); + } + + napi_value ret = NAPI_GetActiveAbilityMissionInfosWrap(env, info, callBackMode, *async_callback_info); + if (ret == nullptr) { + delete async_callback_info; + async_callback_info = nullptr; + } + + return ((callBackMode) ? (nullptr) : (ret)); +} + +auto NAPI_GetAllRunningProcessesAsyncExecuteCallback = [](napi_env env, void *data) { + HILOG_INFO("getAllRunningProcesses called(CallBack Mode)..."); + AsyncCallbackInfo *async_callback_info = (AsyncCallbackInfo *)data; + GetAppManagerInstance()->GetAllRunningProcesses(async_callback_info->info); +}; + +auto NAPI_GetAllRunningProcessesAsyncCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("getAllRunningProcesses compeleted(CallBack Mode)..."); + AsyncCallbackInfo *async_callback_info = (AsyncCallbackInfo *)data; + napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; + napi_value callback = nullptr; + napi_value undefined = nullptr; + napi_value callResult = nullptr; + + result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); + napi_create_array(env, &result[1]); + GetAllRunningProcessesForResult(env, async_callback_info->info, result[1]); + napi_get_undefined(env, &undefined); + napi_get_reference_value(env, async_callback_info->callback[0], &callback); + napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); + + if (async_callback_info->callback[0] != nullptr) { + napi_delete_reference(env, async_callback_info->callback[0]); + } + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +auto NAPI_GetAllRunningProcessesPromiseCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("getAllRunningProcesses compeleted(Promise Mode)..."); + AsyncCallbackInfo *async_callback_info = (AsyncCallbackInfo *)data; + napi_value result = nullptr; + napi_create_array(env, &result); + GetAllRunningProcessesForResult(env, async_callback_info->info, result); + napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + napi_value NAPI_GetAllRunningProcessesWrap( - napi_env env, napi_callback_info info, bool callBackMode, AsyncCallbackInfo *async_callback_info) + napi_env env, napi_callback_info info, bool callBackMode, AsyncCallbackInfo &async_callback_info) { HILOG_INFO("NAPI_GetAllRunningProcessesWrap called..."); if (callBackMode) { @@ -618,36 +862,12 @@ napi_value NAPI_GetAllRunningProcessesWrap( napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("getAllRunningProcesses called(CallBack Mode)..."); - AsyncCallbackInfo *async_callback_info = (AsyncCallbackInfo *)data; - GetAppManagerInstance()->GetAllRunningProcesses(async_callback_info->info); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("getAllRunningProcesses compeleted(CallBack Mode)..."); - AsyncCallbackInfo *async_callback_info = (AsyncCallbackInfo *)data; - napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; - napi_value callback = nullptr; - napi_value undefined = nullptr; - napi_value callResult = nullptr; - - result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); - napi_create_array(env, &result[1]); - GetAllRunningProcessesForResult(env, async_callback_info->info, result[1]); - napi_get_undefined(env, &undefined); - napi_get_reference_value(env, async_callback_info->callback[0], &callback); - napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); - - if (async_callback_info->callback[0] != nullptr) { - napi_delete_reference(env, async_callback_info->callback[0]); - } - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - - NAPI_CALL(env, napi_queue_async_work(env, async_callback_info->asyncWork)); + NAPI_GetAllRunningProcessesAsyncExecuteCallback, + NAPI_GetAllRunningProcessesAsyncCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + + NAPI_CALL(env, napi_queue_async_work(env, async_callback_info.asyncWork)); // create reutrn napi_value ret = 0; NAPI_CALL(env, napi_create_int32(env, 0, &ret)); @@ -659,29 +879,16 @@ napi_value NAPI_GetAllRunningProcessesWrap( napi_deferred deferred = nullptr; napi_value promise = nullptr; NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); - async_callback_info->deferred = deferred; + async_callback_info.deferred = deferred; napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("getAllRunningProcesses called(Promise Mode)..."); - AsyncCallbackInfo *async_callback_info = (AsyncCallbackInfo *)data; - GetAppManagerInstance()->GetAllRunningProcesses(async_callback_info->info); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("getAllRunningProcesses compeleted(Promise Mode)..."); - AsyncCallbackInfo *async_callback_info = (AsyncCallbackInfo *)data; - napi_value result; - napi_create_array(env, &result); - GetAllRunningProcessesForResult(env, async_callback_info->info, result); - napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - napi_queue_async_work(env, async_callback_info->asyncWork); + NAPI_GetAllRunningProcessesAsyncExecuteCallback, + NAPI_GetAllRunningProcessesPromiseCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + napi_queue_async_work(env, async_callback_info.asyncWork); return promise; } } @@ -701,8 +908,129 @@ napi_value NAPI_GetAllRunningProcesses(napi_env env, napi_callback_info info) callBackMode = true; } - AsyncCallbackInfo *async_callback_info = - new (std::nothrow) AsyncCallbackInfo{.env = env, .asyncWork = nullptr, .deferred = nullptr}; + AsyncCallbackInfo *async_callback_info = new (std::nothrow) AsyncCallbackInfo{ + .env = env, + .asyncWork = nullptr, + .deferred = nullptr, + }; + if (async_callback_info == nullptr) { + return nullptr; + } + + if (callBackMode) { + napi_create_reference(env, argv[0], 1, &async_callback_info->callback[0]); + } + + napi_value ret = NAPI_GetAllRunningProcessesWrap(env, info, callBackMode, *async_callback_info); + if (ret == nullptr) { + delete async_callback_info; + async_callback_info = nullptr; + } + + return ((callBackMode) ? (nullptr) : (ret)); +} + +auto NAPI_GetActiveProcessInfosAsyncExecuteCallback = [](napi_env env, void *data) { + HILOG_INFO("getActiveProcessInfos called(CallBack Mode)..."); + AsyncCallbackInfo *async_callback_info = (AsyncCallbackInfo *)data; + GetAppManagerInstance()->GetAllRunningProcesses(async_callback_info->info); +}; + +auto NAPI_GetActiveProcessInfosAsyncCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("getActiveProcessInfos compeleted(CallBack Mode)..."); + AsyncCallbackInfo *async_callback_info = (AsyncCallbackInfo *)data; + napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; + napi_value callback = nullptr; + napi_value undefined = nullptr; + napi_value callResult = nullptr; + + result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); + napi_create_array(env, &result[1]); + GetActiveProcessInfosForResult(env, async_callback_info->info, result[1]); + napi_get_undefined(env, &undefined); + napi_get_reference_value(env, async_callback_info->callback[0], &callback); + napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); + + if (async_callback_info->callback[0] != nullptr) { + napi_delete_reference(env, async_callback_info->callback[0]); + } + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +auto NAPI_GetActiveProcessInfosPromiseCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("getActiveProcessInfos compeleted(Promise Mode)..."); + AsyncCallbackInfo *async_callback_info = (AsyncCallbackInfo *)data; + napi_value result = nullptr; + napi_create_array(env, &result); + GetActiveProcessInfosForResult(env, async_callback_info->info, result); + napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +napi_value NAPI_GetActiveProcessInfosWrap( + napi_env env, napi_callback_info info, bool callBackMode, AsyncCallbackInfo &async_callback_info) +{ + HILOG_INFO("NAPI_GetActiveProcessInfosWrap called..."); + if (callBackMode) { + napi_value resourceName = nullptr; + napi_create_string_latin1(env, "NAPI_GetActiveProcessInfosCallBack", NAPI_AUTO_LENGTH, &resourceName); + + napi_create_async_work(env, + nullptr, + resourceName, + NAPI_GetActiveProcessInfosAsyncExecuteCallback, + NAPI_GetActiveProcessInfosAsyncCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + + NAPI_CALL(env, napi_queue_async_work(env, async_callback_info.asyncWork)); + // create reutrn + napi_value ret = 0; + NAPI_CALL(env, napi_create_int32(env, 0, &ret)); + return ret; + } else { + napi_value resourceName = nullptr; + napi_create_string_latin1(env, "NAPI_GetActiveProcessInfosPromise", NAPI_AUTO_LENGTH, &resourceName); + + napi_deferred deferred = nullptr; + napi_value promise = nullptr; + NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); + async_callback_info.deferred = deferred; + + napi_create_async_work(env, + nullptr, + resourceName, + NAPI_GetActiveProcessInfosAsyncExecuteCallback, + NAPI_GetActiveProcessInfosPromiseCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + napi_queue_async_work(env, async_callback_info.asyncWork); + return promise; + } +} + +napi_value NAPI_GetActiveProcessInfos(napi_env env, napi_callback_info info) +{ + size_t argc = 1; + napi_value argv[1] = {}; + NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, NULL, NULL)); + HILOG_INFO("argc = [%{public}zu]", argc); + + bool callBackMode = false; + if (argc >= 1) { + napi_valuetype valuetype = napi_valuetype::napi_null; + NAPI_CALL(env, napi_typeof(env, argv[0], &valuetype)); + NAPI_ASSERT(env, valuetype == napi_function, "Wrong argument type. Function expected."); + callBackMode = true; + } + + AsyncCallbackInfo *async_callback_info = new (std::nothrow) AsyncCallbackInfo{ + .env = env, + .asyncWork = nullptr, + .deferred = nullptr, + }; if (async_callback_info == nullptr) { return nullptr; } @@ -711,7 +1039,7 @@ napi_value NAPI_GetAllRunningProcesses(napi_env env, napi_callback_info info) napi_create_reference(env, argv[0], 1, &async_callback_info->callback[0]); } - napi_value ret = NAPI_GetAllRunningProcessesWrap(env, info, callBackMode, async_callback_info); + napi_value ret = NAPI_GetActiveProcessInfosWrap(env, info, callBackMode, *async_callback_info); if (ret == nullptr) { delete async_callback_info; async_callback_info = nullptr; @@ -720,8 +1048,47 @@ napi_value NAPI_GetAllRunningProcesses(napi_env env, napi_callback_info info) return ((callBackMode) ? (nullptr) : (ret)); } +auto NAPI_RemoveMissionAsyncExecuteCallback = [](napi_env env, void *data) { + HILOG_INFO("removeMission called(CallBack Mode)..."); + AsyncRemoveMissionCallbackInfo *async_callback_info = (AsyncRemoveMissionCallbackInfo *)data; + async_callback_info->result = GetAbilityManagerInstance()->RemoveMission(async_callback_info->index); +}; + +auto NAPI_RemoveMissionAsyncCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("removeMission compeleted(CallBack Mode)..."); + AsyncRemoveMissionCallbackInfo *async_callback_info = (AsyncRemoveMissionCallbackInfo *)data; + napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; + napi_value callback = nullptr; + napi_value undefined = nullptr; + napi_value callResult = nullptr; + + result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); + napi_create_int32(async_callback_info->env, async_callback_info->result, &result[1]); + napi_get_undefined(env, &undefined); + + napi_get_reference_value(env, async_callback_info->callback[0], &callback); + napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); + + if (async_callback_info->callback[0] != nullptr) { + napi_delete_reference(env, async_callback_info->callback[0]); + } + + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +auto NAPI_RemoveMissionPromiseCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("removeMission compeleted(Promise Mode)..."); + AsyncRemoveMissionCallbackInfo *async_callback_info = (AsyncRemoveMissionCallbackInfo *)data; + napi_value result = nullptr; + napi_create_int32(async_callback_info->env, async_callback_info->result, &result); + napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + napi_value NAPI_RemoveMissionWrap( - napi_env env, napi_callback_info info, bool callBackMode, AsyncRemoveMissionCallbackInfo *async_callback_info) + napi_env env, napi_callback_info info, bool callBackMode, AsyncRemoveMissionCallbackInfo &async_callback_info) { HILOG_INFO("NAPI_RemoveMission called..."); if (callBackMode) { @@ -731,37 +1098,12 @@ napi_value NAPI_RemoveMissionWrap( napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("removeMission called(CallBack Mode)..."); - AsyncRemoveMissionCallbackInfo *async_callback_info = (AsyncRemoveMissionCallbackInfo *)data; - async_callback_info->result = GetAbilityManagerInstance()->RemoveMission(async_callback_info->index); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("removeMission compeleted(CallBack Mode)..."); - AsyncRemoveMissionCallbackInfo *async_callback_info = (AsyncRemoveMissionCallbackInfo *)data; - napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; - napi_value callback = nullptr; - napi_value undefined = nullptr; - napi_value callResult = nullptr; - - result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); - napi_create_int32(async_callback_info->env, async_callback_info->result, &result[1]); - napi_get_undefined(env, &undefined); - - napi_get_reference_value(env, async_callback_info->callback[0], &callback); - napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); - - if (async_callback_info->callback[0] != nullptr) { - napi_delete_reference(env, async_callback_info->callback[0]); - } - - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - - NAPI_CALL(env, napi_queue_async_work(env, async_callback_info->asyncWork)); + NAPI_RemoveMissionAsyncExecuteCallback, + NAPI_RemoveMissionAsyncCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + + NAPI_CALL(env, napi_queue_async_work(env, async_callback_info.asyncWork)); // create reutrn napi_value ret = 0; NAPI_CALL(env, napi_create_int32(env, 0, &ret)); @@ -773,28 +1115,16 @@ napi_value NAPI_RemoveMissionWrap( napi_deferred deferred = nullptr; napi_value promise = nullptr; NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); - async_callback_info->deferred = deferred; + async_callback_info.deferred = deferred; napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("removeMission called(Promise Mode)..."); - AsyncRemoveMissionCallbackInfo *async_callback_info = (AsyncRemoveMissionCallbackInfo *)data; - async_callback_info->result = GetAbilityManagerInstance()->RemoveMission(async_callback_info->index); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("removeMission compeleted(Promise Mode)..."); - AsyncRemoveMissionCallbackInfo *async_callback_info = (AsyncRemoveMissionCallbackInfo *)data; - napi_value result; - napi_create_int32(async_callback_info->env, async_callback_info->result, &result); - napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - napi_queue_async_work(env, async_callback_info->asyncWork); + NAPI_RemoveMissionAsyncExecuteCallback, + NAPI_RemoveMissionPromiseCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + napi_queue_async_work(env, async_callback_info.asyncWork); return promise; } } @@ -821,8 +1151,11 @@ napi_value NAPI_RemoveMission(napi_env env, napi_callback_info info) callBackMode = true; } - AsyncRemoveMissionCallbackInfo *async_callback_info = - new (std::nothrow) AsyncRemoveMissionCallbackInfo{.env = env, .asyncWork = nullptr, .deferred = nullptr}; + AsyncRemoveMissionCallbackInfo *async_callback_info = new (std::nothrow) AsyncRemoveMissionCallbackInfo{ + .env = env, + .asyncWork = nullptr, + .deferred = nullptr, + }; if (async_callback_info == nullptr) { return nullptr; } @@ -832,7 +1165,7 @@ napi_value NAPI_RemoveMission(napi_env env, napi_callback_info info) napi_create_reference(env, argv[1], 1, &async_callback_info->callback[0]); } - napi_value ret = NAPI_RemoveMissionWrap(env, info, callBackMode, async_callback_info); + napi_value ret = NAPI_RemoveMissionWrap(env, info, callBackMode, *async_callback_info); if (ret == nullptr) { delete async_callback_info; async_callback_info = nullptr; @@ -841,8 +1174,47 @@ napi_value NAPI_RemoveMission(napi_env env, napi_callback_info info) return ((callBackMode) ? (nullptr) : (ret)); } +auto NAPI_RemoveMissionsAsyncExecuteCallback = [](napi_env env, void *data) { + HILOG_INFO("removeMissions called(CallBack Mode)..."); + AsyncRemoveMissionsCallbackInfo *async_callback_info = (AsyncRemoveMissionsCallbackInfo *)data; + async_callback_info->result = RemoveMissionsForResult(async_callback_info->missionIds); +}; + +auto NAPI_RemoveMissionsAsyncCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("removeMissions compeleted(CallBack Mode)..."); + AsyncRemoveMissionsCallbackInfo *async_callback_info = (AsyncRemoveMissionsCallbackInfo *)data; + napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; + napi_value callback = nullptr; + napi_value undefined = nullptr; + napi_value callResult = nullptr; + + result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); + napi_create_int32(async_callback_info->env, async_callback_info->result, &result[1]); + napi_get_undefined(env, &undefined); + + napi_get_reference_value(env, async_callback_info->callback[0], &callback); + napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); + + if (async_callback_info->callback[0] != nullptr) { + napi_delete_reference(env, async_callback_info->callback[0]); + } + + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +auto NAPI_RemoveMissionsPromiseCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("removeMissions compeleted(Promise Mode)..."); + AsyncRemoveMissionsCallbackInfo *async_callback_info = (AsyncRemoveMissionsCallbackInfo *)data; + napi_value result = nullptr; + napi_create_int32(async_callback_info->env, async_callback_info->result, &result); + napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + napi_value NAPI_RemoveMissionsWrap( - napi_env env, napi_callback_info info, bool callBackMode, AsyncRemoveMissionsCallbackInfo *async_callback_info) + napi_env env, napi_callback_info info, bool callBackMode, AsyncRemoveMissionsCallbackInfo &async_callback_info) { HILOG_INFO("NAPI_RemoveMissions called..."); if (callBackMode) { @@ -852,37 +1224,12 @@ napi_value NAPI_RemoveMissionsWrap( napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("removeMissions called(CallBack Mode)..."); - AsyncRemoveMissionsCallbackInfo *async_callback_info = (AsyncRemoveMissionsCallbackInfo *)data; - async_callback_info->result = RemoveMissionsForResult(async_callback_info->missionIds); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("removeMissions compeleted(CallBack Mode)..."); - AsyncRemoveMissionsCallbackInfo *async_callback_info = (AsyncRemoveMissionsCallbackInfo *)data; - napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; - napi_value callback = nullptr; - napi_value undefined = nullptr; - napi_value callResult = nullptr; - - result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); - napi_create_int32(async_callback_info->env, async_callback_info->result, &result[1]); - napi_get_undefined(env, &undefined); - - napi_get_reference_value(env, async_callback_info->callback[0], &callback); - napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); - - if (async_callback_info->callback[0] != nullptr) { - napi_delete_reference(env, async_callback_info->callback[0]); - } - - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - - NAPI_CALL(env, napi_queue_async_work(env, async_callback_info->asyncWork)); + NAPI_RemoveMissionsAsyncExecuteCallback, + NAPI_RemoveMissionsAsyncCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + + NAPI_CALL(env, napi_queue_async_work(env, async_callback_info.asyncWork)); // create reutrn napi_value ret = 0; NAPI_CALL(env, napi_create_int32(env, 0, &ret)); @@ -894,28 +1241,16 @@ napi_value NAPI_RemoveMissionsWrap( napi_deferred deferred = nullptr; napi_value promise = nullptr; NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); - async_callback_info->deferred = deferred; + async_callback_info.deferred = deferred; napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("removeMissions called(Promise Mode)..."); - AsyncRemoveMissionsCallbackInfo *async_callback_info = (AsyncRemoveMissionsCallbackInfo *)data; - async_callback_info->result = RemoveMissionsForResult(async_callback_info->missionIds); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("removeMissions compeleted(Promise Mode)..."); - AsyncRemoveMissionsCallbackInfo *async_callback_info = (AsyncRemoveMissionsCallbackInfo *)data; - napi_value result; - napi_create_int32(async_callback_info->env, async_callback_info->result, &result); - napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - napi_queue_async_work(env, async_callback_info->asyncWork); + NAPI_RemoveMissionsAsyncExecuteCallback, + NAPI_RemoveMissionsPromiseCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + napi_queue_async_work(env, async_callback_info.asyncWork); return promise; } } @@ -953,8 +1288,11 @@ napi_value NAPI_RemoveMissions(napi_env env, napi_callback_info info) callBackMode = true; } - AsyncRemoveMissionsCallbackInfo *async_callback_info = - new (std::nothrow) AsyncRemoveMissionsCallbackInfo{.env = env, .asyncWork = nullptr, .deferred = nullptr}; + AsyncRemoveMissionsCallbackInfo *async_callback_info = new (std::nothrow) AsyncRemoveMissionsCallbackInfo{ + .env = env, + .asyncWork = nullptr, + .deferred = nullptr, + }; if (async_callback_info == nullptr) { return nullptr; } @@ -964,7 +1302,7 @@ napi_value NAPI_RemoveMissions(napi_env env, napi_callback_info info) napi_create_reference(env, argv[1], 1, &async_callback_info->callback[0]); } - napi_value ret = NAPI_RemoveMissionsWrap(env, info, callBackMode, async_callback_info); + napi_value ret = NAPI_RemoveMissionsWrap(env, info, callBackMode, *async_callback_info); if (ret == nullptr) { delete async_callback_info; async_callback_info = nullptr; @@ -973,8 +1311,47 @@ napi_value NAPI_RemoveMissions(napi_env env, napi_callback_info info) return ((callBackMode) ? (nullptr) : (ret)); } +auto NAPI_ClearMissionsAsyncExecuteCallback = [](napi_env env, void *data) { + HILOG_INFO("clearMissions called(CallBack Mode)..."); + AsyncClearMissionsCallbackInfo *async_callback_info = (AsyncClearMissionsCallbackInfo *)data; + async_callback_info->result = GetAbilityManagerInstance()->RemoveStack(DEFAULT_STACK_ID); +}; + +auto NAPI_ClearMissionsAsyncCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("clearMissions compeleted(CallBack Mode)..."); + AsyncClearMissionsCallbackInfo *async_callback_info = (AsyncClearMissionsCallbackInfo *)data; + napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; + napi_value callback = nullptr; + napi_value undefined = nullptr; + napi_value callResult = nullptr; + + result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); + napi_create_int32(async_callback_info->env, async_callback_info->result, &result[1]); + napi_get_undefined(env, &undefined); + + napi_get_reference_value(env, async_callback_info->callback[0], &callback); + napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); + + if (async_callback_info->callback[0] != nullptr) { + napi_delete_reference(env, async_callback_info->callback[0]); + } + + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +auto NAPI_ClearMissionsPromiseCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("clearMissions compeleted(Promise Mode)..."); + AsyncClearMissionsCallbackInfo *async_callback_info = (AsyncClearMissionsCallbackInfo *)data; + napi_value result = nullptr; + napi_create_int32(async_callback_info->env, async_callback_info->result, &result); + napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + napi_value NAPI_ClearMissionsWrap( - napi_env env, napi_callback_info info, bool callBackMode, AsyncClearMissionsCallbackInfo *async_callback_info) + napi_env env, napi_callback_info info, bool callBackMode, AsyncClearMissionsCallbackInfo &async_callback_info) { HILOG_INFO("NAPI_ClearMissions called..."); if (callBackMode) { @@ -984,37 +1361,12 @@ napi_value NAPI_ClearMissionsWrap( napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("clearMissions called(CallBack Mode)..."); - AsyncClearMissionsCallbackInfo *async_callback_info = (AsyncClearMissionsCallbackInfo *)data; - async_callback_info->result = GetAbilityManagerInstance()->RemoveStack(DEFAULT_STACK_ID); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("clearMissions compeleted(CallBack Mode)..."); - AsyncClearMissionsCallbackInfo *async_callback_info = (AsyncClearMissionsCallbackInfo *)data; - napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; - napi_value callback = nullptr; - napi_value undefined = nullptr; - napi_value callResult = nullptr; - - result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); - napi_create_int32(async_callback_info->env, async_callback_info->result, &result[1]); - napi_get_undefined(env, &undefined); - - napi_get_reference_value(env, async_callback_info->callback[0], &callback); - napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); - - if (async_callback_info->callback[0] != nullptr) { - napi_delete_reference(env, async_callback_info->callback[0]); - } - - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - - NAPI_CALL(env, napi_queue_async_work(env, async_callback_info->asyncWork)); + NAPI_ClearMissionsAsyncExecuteCallback, + NAPI_ClearMissionsAsyncCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + + NAPI_CALL(env, napi_queue_async_work(env, async_callback_info.asyncWork)); // create reutrn napi_value ret = 0; NAPI_CALL(env, napi_create_int32(env, 0, &ret)); @@ -1026,28 +1378,16 @@ napi_value NAPI_ClearMissionsWrap( napi_deferred deferred; napi_value promise; NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); - async_callback_info->deferred = deferred; + async_callback_info.deferred = deferred; napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("clearMissions called(Promise Mode)..."); - AsyncClearMissionsCallbackInfo *async_callback_info = (AsyncClearMissionsCallbackInfo *)data; - async_callback_info->result = GetAbilityManagerInstance()->RemoveStack(DEFAULT_STACK_ID); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("clearMissions compeleted(Promise Mode)..."); - AsyncClearMissionsCallbackInfo *async_callback_info = (AsyncClearMissionsCallbackInfo *)data; - napi_value result; - napi_create_int32(async_callback_info->env, async_callback_info->result, &result); - napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - napi_queue_async_work(env, async_callback_info->asyncWork); + NAPI_ClearMissionsAsyncExecuteCallback, + NAPI_ClearMissionsPromiseCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + napi_queue_async_work(env, async_callback_info.asyncWork); return promise; } } @@ -1067,8 +1407,11 @@ napi_value NAPI_ClearMissions(napi_env env, napi_callback_info info) callBackMode = true; } - AsyncClearMissionsCallbackInfo *async_callback_info = - new (std::nothrow) AsyncClearMissionsCallbackInfo{.env = env, .asyncWork = nullptr, .deferred = nullptr}; + AsyncClearMissionsCallbackInfo *async_callback_info = new (std::nothrow) AsyncClearMissionsCallbackInfo{ + .env = env, + .asyncWork = nullptr, + .deferred = nullptr, + }; if (async_callback_info == nullptr) { return nullptr; } @@ -1077,7 +1420,7 @@ napi_value NAPI_ClearMissions(napi_env env, napi_callback_info info) napi_create_reference(env, argv[0], 1, &async_callback_info->callback[0]); } - napi_value ret = NAPI_ClearMissionsWrap(env, info, callBackMode, async_callback_info); + napi_value ret = NAPI_ClearMissionsWrap(env, info, callBackMode, *async_callback_info); if (ret == nullptr) { delete async_callback_info; async_callback_info = nullptr; @@ -1086,8 +1429,47 @@ napi_value NAPI_ClearMissions(napi_env env, napi_callback_info info) return ((callBackMode) ? (nullptr) : (ret)); } +auto NAPI_MoveMissionToTopAsyncExecuteCallback = [](napi_env env, void *data) { + HILOG_INFO("moveMissionToTop called(CallBack Mode)..."); + AsyncMoveMissionToTopCallbackInfo *async_callback_info = (AsyncMoveMissionToTopCallbackInfo *)data; + async_callback_info->result = GetAbilityManagerInstance()->MoveMissionToTop(async_callback_info->index); +}; + +auto NAPI_MoveMissionToTopAsyncCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("moveMissionToTop compeleted(CallBack Mode)..."); + AsyncMoveMissionToTopCallbackInfo *async_callback_info = (AsyncMoveMissionToTopCallbackInfo *)data; + napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; + napi_value callback = nullptr; + napi_value undefined = nullptr; + napi_value callResult = nullptr; + + result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); + napi_create_int32(async_callback_info->env, async_callback_info->result, &result[1]); + napi_get_undefined(env, &undefined); + + napi_get_reference_value(env, async_callback_info->callback[0], &callback); + napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); + + if (async_callback_info->callback[0] != nullptr) { + napi_delete_reference(env, async_callback_info->callback[0]); + } + + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +auto NAPI_MoveMissionToTopPromiseCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("moveMissionToTop compeleted(Promise Mode)..."); + AsyncMoveMissionToTopCallbackInfo *async_callback_info = (AsyncMoveMissionToTopCallbackInfo *)data; + napi_value result = nullptr; + napi_create_int32(async_callback_info->env, async_callback_info->result, &result); + napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + napi_value NAPI_MoveMissionToTopWrap( - napi_env env, napi_callback_info info, bool callBackMode, AsyncMoveMissionToTopCallbackInfo *async_callback_info) + napi_env env, napi_callback_info info, bool callBackMode, AsyncMoveMissionToTopCallbackInfo &async_callback_info) { HILOG_INFO("NAPI_MoveMissionToTop called..."); if (callBackMode) { @@ -1097,37 +1479,12 @@ napi_value NAPI_MoveMissionToTopWrap( napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("moveMissionToTop called(CallBack Mode)..."); - AsyncMoveMissionToTopCallbackInfo *async_callback_info = (AsyncMoveMissionToTopCallbackInfo *)data; - async_callback_info->result = GetAbilityManagerInstance()->MoveMissionToTop(async_callback_info->index); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("moveMissionToTop compeleted(CallBack Mode)..."); - AsyncMoveMissionToTopCallbackInfo *async_callback_info = (AsyncMoveMissionToTopCallbackInfo *)data; - napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; - napi_value callback = nullptr; - napi_value undefined = nullptr; - napi_value callResult = nullptr; - - result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); - napi_create_int32(async_callback_info->env, async_callback_info->result, &result[1]); - napi_get_undefined(env, &undefined); - - napi_get_reference_value(env, async_callback_info->callback[0], &callback); - napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); - - if (async_callback_info->callback[0] != nullptr) { - napi_delete_reference(env, async_callback_info->callback[0]); - } - - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - - NAPI_CALL(env, napi_queue_async_work(env, async_callback_info->asyncWork)); + NAPI_MoveMissionToTopAsyncExecuteCallback, + NAPI_MoveMissionToTopAsyncCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + + NAPI_CALL(env, napi_queue_async_work(env, async_callback_info.asyncWork)); // create reutrn napi_value ret = 0; NAPI_CALL(env, napi_create_int32(env, 0, &ret)); @@ -1139,28 +1496,16 @@ napi_value NAPI_MoveMissionToTopWrap( napi_deferred deferred = nullptr; napi_value promise = nullptr; NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); - async_callback_info->deferred = deferred; + async_callback_info.deferred = deferred; napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("moveMissionToTop called(Promise Mode)..."); - AsyncMoveMissionToTopCallbackInfo *async_callback_info = (AsyncMoveMissionToTopCallbackInfo *)data; - async_callback_info->result = GetAbilityManagerInstance()->MoveMissionToTop(async_callback_info->index); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("moveMissionToTop compeleted(Promise Mode)..."); - AsyncMoveMissionToTopCallbackInfo *async_callback_info = (AsyncMoveMissionToTopCallbackInfo *)data; - napi_value result; - napi_create_int32(async_callback_info->env, async_callback_info->result, &result); - napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - napi_queue_async_work(env, async_callback_info->asyncWork); + NAPI_MoveMissionToTopAsyncExecuteCallback, + NAPI_MoveMissionToTopPromiseCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + napi_queue_async_work(env, async_callback_info.asyncWork); return promise; } } @@ -1186,8 +1531,11 @@ napi_value NAPI_MoveMissionToTop(napi_env env, napi_callback_info info) callBackMode = true; } - AsyncMoveMissionToTopCallbackInfo *async_callback_info = - new (std::nothrow) AsyncMoveMissionToTopCallbackInfo{.env = env, .asyncWork = nullptr, .deferred = nullptr}; + AsyncMoveMissionToTopCallbackInfo *async_callback_info = new (std::nothrow) AsyncMoveMissionToTopCallbackInfo{ + .env = env, + .asyncWork = nullptr, + .deferred = nullptr, + }; if (async_callback_info == nullptr) { return nullptr; } @@ -1197,7 +1545,7 @@ napi_value NAPI_MoveMissionToTop(napi_env env, napi_callback_info info) napi_create_reference(env, argv[1], 1, &async_callback_info->callback[0]); } - napi_value ret = NAPI_MoveMissionToTopWrap(env, info, callBackMode, async_callback_info); + napi_value ret = NAPI_MoveMissionToTopWrap(env, info, callBackMode, *async_callback_info); if (ret == nullptr) { delete async_callback_info; async_callback_info = nullptr; @@ -1206,8 +1554,47 @@ napi_value NAPI_MoveMissionToTop(napi_env env, napi_callback_info info) return ((callBackMode) ? (nullptr) : (ret)); } +auto NAPI_KillProcessesByBundleNameAsyncExecuteCallback = [](napi_env env, void *data) { + HILOG_INFO("killProcessesByBundleName called(CallBack Mode)..."); + AsyncKillProcessCallbackInfo *async_callback_info = (AsyncKillProcessCallbackInfo *)data; + async_callback_info->result = GetAbilityManagerInstance()->KillProcess(async_callback_info->bundleName); +}; + +auto NAPI_KillProcessesByBundleNameAsyncCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("killProcessesByBundleName compeleted(CallBack Mode)..."); + AsyncKillProcessCallbackInfo *async_callback_info = (AsyncKillProcessCallbackInfo *)data; + napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; + napi_value callback = nullptr; + napi_value undefined = nullptr; + napi_value callResult = nullptr; + + result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); + napi_create_int32(async_callback_info->env, async_callback_info->result, &result[1]); + napi_get_undefined(env, &undefined); + + napi_get_reference_value(env, async_callback_info->callback[0], &callback); + napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); + + if (async_callback_info->callback[0] != nullptr) { + napi_delete_reference(env, async_callback_info->callback[0]); + } + + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +auto NAPI_KillProcessesByBundleNamePromiseCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("killProcessesByBundleName compeleted(Promise Mode)..."); + AsyncKillProcessCallbackInfo *async_callback_info = (AsyncKillProcessCallbackInfo *)data; + napi_value result = nullptr; + napi_create_int32(async_callback_info->env, async_callback_info->result, &result); + napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + napi_value NAPI_KillProcessesByBundleNameWrap( - napi_env env, napi_callback_info info, bool callBackMode, AsyncKillProcessCallbackInfo *async_callback_info) + napi_env env, napi_callback_info info, bool callBackMode, AsyncKillProcessCallbackInfo &async_callback_info) { HILOG_INFO("NAPI_KillProcessesByBundleName called..."); if (callBackMode) { @@ -1217,37 +1604,12 @@ napi_value NAPI_KillProcessesByBundleNameWrap( napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("killProcessesByBundleName called(CallBack Mode)..."); - AsyncKillProcessCallbackInfo *async_callback_info = (AsyncKillProcessCallbackInfo *)data; - async_callback_info->result = GetAbilityManagerInstance()->KillProcess(async_callback_info->bundleName); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("killProcessesByBundleName compeleted(CallBack Mode)..."); - AsyncKillProcessCallbackInfo *async_callback_info = (AsyncKillProcessCallbackInfo *)data; - napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; - napi_value callback; - napi_value undefined; - napi_value callResult = 0; - - result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); - napi_create_int32(async_callback_info->env, async_callback_info->result, &result[1]); - napi_get_undefined(env, &undefined); - - napi_get_reference_value(env, async_callback_info->callback[0], &callback); - napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); - - if (async_callback_info->callback[0] != nullptr) { - napi_delete_reference(env, async_callback_info->callback[0]); - } - - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - - NAPI_CALL(env, napi_queue_async_work(env, async_callback_info->asyncWork)); + NAPI_KillProcessesByBundleNameAsyncExecuteCallback, + NAPI_KillProcessesByBundleNameAsyncCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + + NAPI_CALL(env, napi_queue_async_work(env, async_callback_info.asyncWork)); // create reutrn napi_value ret = 0; NAPI_CALL(env, napi_create_int32(env, 0, &ret)); @@ -1259,28 +1621,16 @@ napi_value NAPI_KillProcessesByBundleNameWrap( napi_deferred deferred = nullptr; napi_value promise = nullptr; NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); - async_callback_info->deferred = deferred; + async_callback_info.deferred = deferred; napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("killProcessesByBundleName called(Promise Mode)..."); - AsyncKillProcessCallbackInfo *async_callback_info = (AsyncKillProcessCallbackInfo *)data; - async_callback_info->result = GetAbilityManagerInstance()->KillProcess(async_callback_info->bundleName); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("killProcessesByBundleName compeleted(Promise Mode)..."); - AsyncKillProcessCallbackInfo *async_callback_info = (AsyncKillProcessCallbackInfo *)data; - napi_value result; - napi_create_int32(async_callback_info->env, async_callback_info->result, &result); - napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - napi_queue_async_work(env, async_callback_info->asyncWork); + NAPI_KillProcessesByBundleNameAsyncExecuteCallback, + NAPI_KillProcessesByBundleNamePromiseCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + napi_queue_async_work(env, async_callback_info.asyncWork); return promise; } } @@ -1292,7 +1642,7 @@ napi_value NAPI_KillProcessesByBundleName(napi_env env, napi_callback_info info) NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, NULL, NULL)); HILOG_INFO("argc = [%{public}zu]", argc); - std::string bundleName = nullptr; + std::string bundleName = ""; ParseBundleName(env, bundleName, argv[0]); bool callBackMode = false; @@ -1303,8 +1653,11 @@ napi_value NAPI_KillProcessesByBundleName(napi_env env, napi_callback_info info) callBackMode = true; } - AsyncKillProcessCallbackInfo *async_callback_info = - new (std::nothrow) AsyncKillProcessCallbackInfo{.env = env, .asyncWork = nullptr, .deferred = nullptr}; + AsyncKillProcessCallbackInfo *async_callback_info = new (std::nothrow) AsyncKillProcessCallbackInfo{ + .env = env, + .asyncWork = nullptr, + .deferred = nullptr, + }; if (async_callback_info == nullptr) { return nullptr; } @@ -1314,7 +1667,7 @@ napi_value NAPI_KillProcessesByBundleName(napi_env env, napi_callback_info info) napi_create_reference(env, argv[1], 1, &async_callback_info->callback[0]); } - napi_value ret = NAPI_KillProcessesByBundleNameWrap(env, info, callBackMode, async_callback_info); + napi_value ret = NAPI_KillProcessesByBundleNameWrap(env, info, callBackMode, *async_callback_info); if (ret == nullptr) { delete async_callback_info; async_callback_info = nullptr; @@ -1323,8 +1676,45 @@ napi_value NAPI_KillProcessesByBundleName(napi_env env, napi_callback_info info) return ((callBackMode) ? (nullptr) : (ret)); } +auto NAPI_ClearUpApplicationDataAsyncExecuteCallback = [](napi_env env, void *data) { + HILOG_INFO("clearUpApplicationData called(CallBack Mode)..."); + AsyncClearUpApplicationDataCallbackInfo *async_callback_info = (AsyncClearUpApplicationDataCallbackInfo *)data; + async_callback_info->result = GetAppManagerInstance()->ClearUpApplicationData(async_callback_info->bundleName); +}; + +auto NAPI_ClearUpApplicationDataAsyncCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("clearUpApplicationData compeleted(CallBack Mode)..."); + AsyncClearUpApplicationDataCallbackInfo *async_callback_info = (AsyncClearUpApplicationDataCallbackInfo *)data; + napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; + napi_value callback = nullptr; + napi_value undefined = nullptr; + napi_value callResult = nullptr; + result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); + napi_create_int32(async_callback_info->env, async_callback_info->result, &result[1]); + napi_get_undefined(env, &undefined); + + napi_get_reference_value(env, async_callback_info->callback[0], &callback); + napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); + if (async_callback_info->callback[0] != nullptr) { + napi_delete_reference(env, async_callback_info->callback[0]); + } + + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + +auto NAPI_ClearUpApplicationDataPromiseCompleteCallback = [](napi_env env, napi_status status, void *data) { + HILOG_INFO("clearUpApplicationData compeleted(Promise Mode)..."); + AsyncClearUpApplicationDataCallbackInfo *async_callback_info = (AsyncClearUpApplicationDataCallbackInfo *)data; + napi_value result = nullptr; + napi_create_int32(async_callback_info->env, async_callback_info->result, &result); + napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); + napi_delete_async_work(env, async_callback_info->asyncWork); + delete async_callback_info; +}; + napi_value NAPI_ClearUpApplicationDataWrap(napi_env env, napi_callback_info info, bool callBackMode, - AsyncClearUpApplicationDataCallbackInfo *async_callback_info) + AsyncClearUpApplicationDataCallbackInfo &async_callback_info) { HILOG_INFO("NAPI_ClearUpApplicationData called..."); if (callBackMode) { @@ -1334,38 +1724,12 @@ napi_value NAPI_ClearUpApplicationDataWrap(napi_env env, napi_callback_info info napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("clearUpApplicationData called(CallBack Mode)..."); - AsyncClearUpApplicationDataCallbackInfo *async_callback_info = - (AsyncClearUpApplicationDataCallbackInfo *)data; - async_callback_info->result = - GetAppManagerInstance()->ClearUpApplicationData(async_callback_info->bundleName); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("clearUpApplicationData compeleted(CallBack Mode)..."); - AsyncClearUpApplicationDataCallbackInfo *async_callback_info = - (AsyncClearUpApplicationDataCallbackInfo *)data; - napi_value result[NUMBER_OF_PARAMETERS_TWO] = {0}; - napi_value callback = nullptr; - napi_value undefined = nullptr; - napi_value callResult = nullptr; - result[0] = GetCallbackErrorValue(async_callback_info->env, BUSINESS_ERROR_CODE_OK); - napi_create_int32(async_callback_info->env, async_callback_info->result, &result[1]); - napi_get_undefined(env, &undefined); - - napi_get_reference_value(env, async_callback_info->callback[0], &callback); - napi_call_function(env, undefined, callback, NUMBER_OF_PARAMETERS_TWO, &result[0], &callResult); - if (async_callback_info->callback[0] != nullptr) { - napi_delete_reference(env, async_callback_info->callback[0]); - } - - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - - NAPI_CALL(env, napi_queue_async_work(env, async_callback_info->asyncWork)); + NAPI_ClearUpApplicationDataAsyncExecuteCallback, + NAPI_ClearUpApplicationDataAsyncCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + + NAPI_CALL(env, napi_queue_async_work(env, async_callback_info.asyncWork)); // create reutrn napi_value ret = 0; NAPI_CALL(env, napi_create_int32(env, 0, &ret)); @@ -1377,34 +1741,19 @@ napi_value NAPI_ClearUpApplicationDataWrap(napi_env env, napi_callback_info info napi_deferred deferred = nullptr; napi_value promise = nullptr; NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); - async_callback_info->deferred = deferred; + async_callback_info.deferred = deferred; napi_create_async_work(env, nullptr, resourceName, - [](napi_env env, void *data) { - HILOG_INFO("clearUpApplicationData called(Promise Mode)..."); - AsyncClearUpApplicationDataCallbackInfo *async_callback_info = - (AsyncClearUpApplicationDataCallbackInfo *)data; - async_callback_info->result = - GetAppManagerInstance()->ClearUpApplicationData(async_callback_info->bundleName); - }, - [](napi_env env, napi_status status, void *data) { - HILOG_INFO("clearUpApplicationData compeleted(Promise Mode)..."); - AsyncClearUpApplicationDataCallbackInfo *async_callback_info = - (AsyncClearUpApplicationDataCallbackInfo *)data; - napi_value result; - napi_create_int32(async_callback_info->env, async_callback_info->result, &result); - napi_resolve_deferred(async_callback_info->env, async_callback_info->deferred, result); - napi_delete_async_work(env, async_callback_info->asyncWork); - delete async_callback_info; - }, - (void *)async_callback_info, - &async_callback_info->asyncWork); - napi_queue_async_work(env, async_callback_info->asyncWork); + NAPI_ClearUpApplicationDataAsyncExecuteCallback, + NAPI_ClearUpApplicationDataPromiseCompleteCallback, + (void *)&async_callback_info, + &async_callback_info.asyncWork); + napi_queue_async_work(env, async_callback_info.asyncWork); return promise; } -} +} // namespace AppExecFwk napi_value NAPI_ClearUpApplicationData(napi_env env, napi_callback_info info) { @@ -1413,7 +1762,7 @@ napi_value NAPI_ClearUpApplicationData(napi_env env, napi_callback_info info) NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, NULL, NULL)); HILOG_INFO("argc = [%{public}zu]", argc); - std::string bundleName = nullptr; + std::string bundleName = ""; ParseBundleName(env, bundleName, argv[0]); bool callBackMode = false; @@ -1424,8 +1773,12 @@ napi_value NAPI_ClearUpApplicationData(napi_env env, napi_callback_info info) callBackMode = true; } - AsyncClearUpApplicationDataCallbackInfo *async_callback_info = new (std::nothrow) - AsyncClearUpApplicationDataCallbackInfo{.env = env, .asyncWork = nullptr, .deferred = nullptr}; + AsyncClearUpApplicationDataCallbackInfo *async_callback_info = + new (std::nothrow) AsyncClearUpApplicationDataCallbackInfo{ + .env = env, + .asyncWork = nullptr, + .deferred = nullptr, + }; if (async_callback_info == nullptr) { return nullptr; } @@ -1435,7 +1788,7 @@ napi_value NAPI_ClearUpApplicationData(napi_env env, napi_callback_info info) napi_create_reference(env, argv[1], 1, &async_callback_info->callback[0]); } - napi_value ret = NAPI_ClearUpApplicationDataWrap(env, info, callBackMode, async_callback_info); + napi_value ret = NAPI_ClearUpApplicationDataWrap(env, info, callBackMode, *async_callback_info); if (ret == nullptr) { delete async_callback_info; async_callback_info = nullptr; diff --git a/interfaces/kits/napi/aafwk/abilityManager/napi_ability_manager.h b/interfaces/kits/napi/aafwk/abilityManager/napi_ability_manager.h index 26bcb03e7b8..914c94dd812 100644 --- a/interfaces/kits/napi/aafwk/abilityManager/napi_ability_manager.h +++ b/interfaces/kits/napi/aafwk/abilityManager/napi_ability_manager.h @@ -39,7 +39,6 @@ using AbilityMissionInfo = OHOS::AAFwk::AbilityMissionInfo; namespace OHOS { namespace AppExecFwk { - const uint8_t NUMBER_OF_PARAMETERS_TWO = 2; const uint8_t NUMBER_OF_PARAMETERS_THREE = 3; @@ -124,7 +123,9 @@ struct AsyncPreviousMissionInfosCallbackInfo { }; napi_value NAPI_GetAllRunningProcesses(napi_env env, napi_callback_info info); +napi_value NAPI_GetActiveProcessInfos(napi_env env, napi_callback_info info); napi_value NAPI_QueryRunningAbilityMissionInfos(napi_env env, napi_callback_info info); +napi_value NAPI_GetActiveAbilityMissionInfos(napi_env env, napi_callback_info info); napi_value NAPI_QueryRecentAbilityMissionInfos(napi_env env, napi_callback_info info); napi_value NAPI_GetPreviousAbilityMissionInfos(napi_env env, napi_callback_info info); napi_value NAPI_RemoveMission(napi_env env, napi_callback_info info); @@ -135,7 +136,6 @@ napi_value NAPI_KillProcessesByBundleName(napi_env env, napi_callback_info info) napi_value NAPI_ClearUpApplicationData(napi_env env, napi_callback_info info); void CreateWeightReasonCodeObject(napi_env env, napi_value value); napi_value GetCallbackErrorValue(napi_env env, int errCode); - } // namespace AppExecFwk } // namespace OHOS #endif // NAPI_ABILITY_MANAGER_H \ No newline at end of file diff --git a/interfaces/kits/napi/aafwk/abilityManager/native_module.cpp b/interfaces/kits/napi/aafwk/abilityManager/native_module.cpp index f412a79a663..7d38a6dd9d5 100644 --- a/interfaces/kits/napi/aafwk/abilityManager/native_module.cpp +++ b/interfaces/kits/napi/aafwk/abilityManager/native_module.cpp @@ -26,7 +26,6 @@ namespace OHOS { namespace AppExecFwk { - EXTERN_C_START /* * function for module exports @@ -39,10 +38,11 @@ static napi_value Init(napi_env env, napi_value exports) NAPI_CALL(env, napi_create_object(env, &nWeightReasonCode)); CreateWeightReasonCodeObject(env, nWeightReasonCode); - napi_property_descriptor desc[] = {DECLARE_NAPI_FUNCTION("getAllRunningProcesses", NAPI_GetAllRunningProcesses), - DECLARE_NAPI_FUNCTION("getActiveProcessInfos", NAPI_GetAllRunningProcesses), + napi_property_descriptor desc[] = { + DECLARE_NAPI_FUNCTION("getAllRunningProcesses", NAPI_GetAllRunningProcesses), + DECLARE_NAPI_FUNCTION("getActiveProcessInfos", NAPI_GetActiveProcessInfos), DECLARE_NAPI_FUNCTION("queryRunningAbilityMissionInfos", NAPI_QueryRunningAbilityMissionInfos), - DECLARE_NAPI_FUNCTION("getActiveAbilityMissionInfos", NAPI_QueryRunningAbilityMissionInfos), + DECLARE_NAPI_FUNCTION("getActiveAbilityMissionInfos", NAPI_GetActiveAbilityMissionInfos), DECLARE_NAPI_FUNCTION("queryRecentAbilityMissionInfos", NAPI_QueryRecentAbilityMissionInfos), DECLARE_NAPI_FUNCTION("getPreviousAbilityMissionInfos", NAPI_GetPreviousAbilityMissionInfos), DECLARE_NAPI_FUNCTION("removeMission", NAPI_RemoveMission), @@ -52,7 +52,8 @@ static napi_value Init(napi_env env, napi_value exports) DECLARE_NAPI_FUNCTION("moveMissionToTop", NAPI_MoveMissionToTop), DECLARE_NAPI_FUNCTION("killProcessesByBundleName", NAPI_KillProcessesByBundleName), DECLARE_NAPI_FUNCTION("clearUpApplicationData", NAPI_ClearUpApplicationData), - DECLARE_NAPI_PROPERTY("WeightReasonCode", nWeightReasonCode)}; + DECLARE_NAPI_PROPERTY("WeightReasonCode", nWeightReasonCode), + }; NAPI_CALL(env, napi_define_properties(env, exports, sizeof(desc) / sizeof(desc[0]), desc)); HILOG_INFO("napi_moudule Init end..."); @@ -63,13 +64,15 @@ EXTERN_C_END /* * Module define */ -static napi_module _module = {.nm_version = 1, +static napi_module _module = { + .nm_version = 1, .nm_flags = 0, .nm_filename = nullptr, .nm_register_func = Init, .nm_modname = "app.abilityManager", .nm_priv = ((void *)0), - .reserved = {0}}; + .reserved = {0}, +}; /* * Module register function @@ -78,6 +81,5 @@ extern "C" __attribute__((constructor)) void RegisterModule(void) { napi_module_register(&_module); } - } // namespace AppExecFwk } // namespace OHOS \ No newline at end of file diff --git a/interfaces/kits/napi/aafwk/featureAbility/napi_context.cpp b/interfaces/kits/napi/aafwk/featureAbility/napi_context.cpp index 6709a19f33d..b9f51b7797d 100755 --- a/interfaces/kits/napi/aafwk/featureAbility/napi_context.cpp +++ b/interfaces/kits/napi/aafwk/featureAbility/napi_context.cpp @@ -407,6 +407,10 @@ void CallOnRequestPermissionsFromUserResult(int requestCode, const std::vectordata; if (onRequestPermissionCB == nullptr) { + if (work != nullptr) { + delete work; + work = nullptr; + } return; } diff --git a/interfaces/kits/napi/aafwk/featureAbility/napi_data_ability_helper.cpp b/interfaces/kits/napi/aafwk/featureAbility/napi_data_ability_helper.cpp index dd9bbfdf275..47ce9e1ddd0 100644 --- a/interfaces/kits/napi/aafwk/featureAbility/napi_data_ability_helper.cpp +++ b/interfaces/kits/napi/aafwk/featureAbility/napi_data_ability_helper.cpp @@ -35,7 +35,7 @@ using namespace OHOS::AppExecFwk; namespace OHOS { namespace AppExecFwk { -napi_value g_dataAbilityHelper; +extern napi_value g_dataAbilityHelper; std::list> g_dataAbilityHelperList; /** @@ -2784,18 +2784,12 @@ void QueryAsyncCompleteCB(napi_env env, napi_status status, void *data) napi_value WrapResultSet(napi_env env, const std::shared_ptr &resultSet) { HILOG_INFO("%{public}s,called", __func__); - MessageParcel tempparcel; if (resultSet == nullptr) { HILOG_ERROR("%{public}s, input parameter resultSet is nullptr", __func__); return nullptr; } - if (!resultSet->Marshalling(tempparcel)) { - HILOG_ERROR("%{public}s, tempparcel.WriteParcelable(resultSet) retval false", __func__); - return nullptr; - } - - return RdbJsKit::ResultSetProxy::NewInstance(env, std::make_unique(tempparcel)); + return RdbJsKit::ResultSetProxy::NewInstance(env, resultSet); } napi_value NAPI_Release(napi_env env, napi_callback_info info) diff --git a/interfaces/kits/napi/aafwk/formManager/napi_form_manager.cpp b/interfaces/kits/napi/aafwk/formManager/napi_form_manager.cpp index 7abaadbc29a..113a936f5ea 100644 --- a/interfaces/kits/napi/aafwk/formManager/napi_form_manager.cpp +++ b/interfaces/kits/napi/aafwk/formManager/napi_form_manager.cpp @@ -128,7 +128,7 @@ static void ParseFormInfoIntoNapi(napi_env env, const FormInfo &formInfo, napi_v napi_value defaultFlag; napi_create_int32(env, (int32_t)formInfo.defaultFlag, &defaultFlag); HILOG_DEBUG("%{public}s, defaultFlag=%{public}d.", __func__, formInfo.defaultFlag); - napi_set_named_property(env, result, "defaultFlag", defaultFlag); + napi_set_named_property(env, result, "isDefault", defaultFlag); // formVisibleNotify napi_value formVisibleNotify; @@ -159,8 +159,9 @@ static void ParseFormInfoIntoNapi(napi_env env, const FormInfo &formInfo, napi_v napi_create_array(env, &supportDimensions); int iDimensionsCount = 0; for (auto dimension : formInfo.supportDimensions) { - napi_value dimensionInfo = nullptr; - napi_create_int32(env, dimension, &dimensionInfo); + HILOG_DEBUG("%{public}s, dimension=%{public}d.", __func__, dimension); + napi_value dimensionInfo; + napi_create_int32(env, (int32_t)dimension, &dimensionInfo); napi_set_element(env, supportDimensions, iDimensionsCount, dimensionInfo); ++iDimensionsCount; } @@ -173,26 +174,26 @@ static void ParseFormInfoIntoNapi(napi_env env, const FormInfo &formInfo, napi_v int iCustomizeDatasCount = 0; for (auto customizeData : formInfo.customizeDatas) { - napi_value customizeDataInfo = nullptr; - napi_create_array(env, &customizeDataInfo); + napi_value customizeDataOnject = nullptr; + napi_create_object(env, &customizeDataOnject); // customizeData : name napi_value customizeDataName; napi_create_string_utf8(env, customizeData.name.c_str(), NAPI_AUTO_LENGTH, &customizeDataName); HILOG_DEBUG("%{public}s, customizeData.name=%{public}s.", __func__, customizeData.name.c_str()); - napi_set_named_property(env, customizeDataInfo, "name", customizeDataName); + napi_set_named_property(env, customizeDataOnject, "name", customizeDataName); // customizeData : value napi_value customizeDataValue; napi_create_string_utf8(env, customizeData.value.c_str(), NAPI_AUTO_LENGTH, &customizeDataValue); HILOG_DEBUG("%{public}s, customizeData.value=%{public}s.", __func__, customizeData.value.c_str()); - napi_set_named_property(env, customizeDataInfo, "value", customizeDataValue); + napi_set_named_property(env, customizeDataOnject, "value", customizeDataValue); - napi_set_element(env, customizeDatas, iCustomizeDatasCount, customizeDataInfo); + napi_set_element(env, customizeDatas, iCustomizeDatasCount, customizeDataOnject); ++iDimensionsCount; } HILOG_DEBUG("%{public}s, customizeDatas size=%{public}zu.", __func__, formInfo.customizeDatas.size()); - napi_set_named_property(env, result, "supportDimensions", customizeDatas); + napi_set_named_property(env, result, "customizeData", customizeDatas); // relatedBundleName napi_value relatedBundleName; diff --git a/interfaces/kits/napi/aafwk/inner/napi_common/napi_common_ability.cpp b/interfaces/kits/napi/aafwk/inner/napi_common/napi_common_ability.cpp index 2608314f3cd..daa3f08d039 100755 --- a/interfaces/kits/napi/aafwk/inner/napi_common/napi_common_ability.cpp +++ b/interfaces/kits/napi/aafwk/inner/napi_common/napi_common_ability.cpp @@ -54,6 +54,11 @@ bool CheckAbilityType(const CBBase *cbBase) return false; } + if (cbBase->ability == nullptr) { + HILOG_ERROR("%{public}s cbBase->ability == nullptr", __func__); + return false; + } + const std::shared_ptr info = cbBase->ability->GetAbilityInfo(); if (info == nullptr) { HILOG_ERROR("%{public}s info == nullptr", __func__); @@ -3329,6 +3334,18 @@ napi_value NAPI_AcquireDataAbilityHelperCommon(napi_env env, napi_callback_info return WrapVoidToJS(env); } + napi_value global = nullptr; + NAPI_CALL(env, napi_get_global(env, &global)); + napi_value abilityObj = nullptr; + NAPI_CALL(env, napi_get_named_property(env, global, "ability", &abilityObj)); + Ability *ability = nullptr; + NAPI_CALL(env, napi_get_value_external(env, abilityObj, (void **)&ability)); + if (ability == nullptr) { + HILOG_ERROR("%{public}s, ability == nullptr", __func__); + return WrapVoidToJS(env); + } + + dataAbilityHelperCB->cbBase.ability = ability; dataAbilityHelperCB->cbBase.errCode = NAPI_ERR_NO_ERROR; dataAbilityHelperCB->cbBase.abilityType = abilityType; napi_value ret = AcquireDataAbilityHelperWrap(env, info, dataAbilityHelperCB); diff --git a/services/abilitymgr/include/ability_config.h b/services/abilitymgr/include/ability_config.h index 8abf930c1e4..58cd30018be 100644 --- a/services/abilitymgr/include/ability_config.h +++ b/services/abilitymgr/include/ability_config.h @@ -44,6 +44,8 @@ const std::string MISSION_NAME_SEPARATOR = ":"; const std::string FLOATING_WINDOW_PERMISSION = "ohos.permission.SYSTEM_FLOAT_WINDOW"; +const std::string LAUNCHER_ABILITY_NAME = "com.ohos.launcher.MainAbility"; +const std::string LAUNCHER_BUNDLE_NAME = "com.ohos.launcher"; } // namespace AbilityConfig } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/include/ability_manager_proxy.h b/services/abilitymgr/include/ability_manager_proxy.h index 19581d41374..1d583ffc6d6 100644 --- a/services/abilitymgr/include/ability_manager_proxy.h +++ b/services/abilitymgr/include/ability_manager_proxy.h @@ -395,12 +395,12 @@ public: /** * Sets description information about the mission containing this ability. * - * @param missionDescriptionInfo Indicates the object containing information about the - * mission. This parameter cannot be null. + * @param description Indicates the object containing information about the + * mission. This parameter cannot be null. * @return Returns ERR_OK on success, others on failure. */ virtual int SetMissionDescriptionInfo( - const sptr &token, const MissionDescriptionInfo &missionDescriptionInfo) override; + const sptr &token, const MissionDescriptionInfo &description) override; /** * get current system mission lock mode state. @@ -442,7 +442,7 @@ public: virtual int GetPendingRequestWant(const sptr &target, std::shared_ptr &want) override; private: - template + template int GetParcelableInfos(MessageParcel &reply, std::vector &parcelableInfos); bool WriteInterfaceToken(MessageParcel &data); diff --git a/services/abilitymgr/include/ability_manager_service.h b/services/abilitymgr/include/ability_manager_service.h index 0b2831ba996..a7445d804af 100644 --- a/services/abilitymgr/include/ability_manager_service.h +++ b/services/abilitymgr/include/ability_manager_service.h @@ -441,12 +441,12 @@ public: /** * Sets description information about the mission containing this ability. * - * @param missionDescriptionInfo Indicates the object containing information about the - * mission. This parameter cannot be null. + * @param description Indicates the object containing information about the + * mission. This parameter cannot be null. * @return Returns ERR_OK on success, others on failure. */ virtual int SetMissionDescriptionInfo( - const sptr &token, const MissionDescriptionInfo &missionDescriptionInfo) override; + const sptr &token, const MissionDescriptionInfo &description) override; /** * get current system mission lock mode state. @@ -622,6 +622,7 @@ private: void SystemDumpStateInner(const std::string &args, std::vector &info); void DumpFocusMapInner(const std::string &args, std::vector &info); void DumpFuncInit(); + bool CheckCallerIsSystemAppByIpc(); using DumpFuncType = void (AbilityManagerService::*)(const std::string &args, std::vector &info); std::map dumpFuncMap_; diff --git a/services/abilitymgr/include/ability_stack_manager.h b/services/abilitymgr/include/ability_stack_manager.h index 139466ee367..84bab5fdcb4 100644 --- a/services/abilitymgr/include/ability_stack_manager.h +++ b/services/abilitymgr/include/ability_stack_manager.h @@ -400,7 +400,7 @@ public: int StartLockMission(int uid, int missionId, bool isSystemApp, int isLock); int SetMissionDescriptionInfo( - const std::shared_ptr &abilityRecord, const MissionDescriptionInfo &missionDescriptionInfo); + const std::shared_ptr &abilityRecord, const MissionDescriptionInfo &description); int GetMissionLockModeState(); /** diff --git a/services/abilitymgr/include/ability_util.h b/services/abilitymgr/include/ability_util.h index 31d0f6b58cb..a090a1eb267 100644 --- a/services/abilitymgr/include/ability_util.h +++ b/services/abilitymgr/include/ability_util.h @@ -140,19 +140,19 @@ static sptr GetBundleManager() { HILOG_DEBUG("%{public}s begin", __func__); if (!abilityInfo.visible) { - HILOG_ERROR("ability visible is false"); + HILOG_DEBUG("ability visible is false"); if (callerUid == -1) { callerUid = IPCSkeleton::GetCallingUid(); } if (ROOT_UID == callerUid) { - HILOG_ERROR("uid is root"); + HILOG_ERROR("uid is root,ability cannot be start when the visible is false"); return ABILITY_VISIBLE_FALSE_DENY_REQUEST; } auto bms = GetBundleManager(); CHECK_POINTER_AND_RETURN(bms, GET_ABILITY_SERVICE_FAILED); auto isSystemApp = bms->CheckIsSystemAppByUid(callerUid); if (callerUid != SYSTEM_UID && !isSystemApp) { - HILOG_ERROR("caller is not systemAp or system"); + HILOG_DEBUG("caller is not systemApp or system"); std::string bundleName; bool result = bms->GetBundleNameForUid(callerUid, bundleName); if (!result) { diff --git a/services/abilitymgr/include/mission_record.h b/services/abilitymgr/include/mission_record.h index 1e4ce4aab5d..67f5ef83157 100644 --- a/services/abilitymgr/include/mission_record.h +++ b/services/abilitymgr/include/mission_record.h @@ -204,9 +204,9 @@ public: return bundleName_; }; - void SetMissionDescriptionInfo(std::shared_ptr &missionDescriptionInfo) + void SetMissionDescriptionInfo(std::shared_ptr &description) { - missionDescriptionInfo_ = missionDescriptionInfo; + missionDescriptionInfo_ = description; }; std::shared_ptr GetMissionDescriptionInfo() const diff --git a/services/abilitymgr/include/pending_want_common_event.h b/services/abilitymgr/include/pending_want_common_event.h index d62f72e962d..2941a696c5b 100644 --- a/services/abilitymgr/include/pending_want_common_event.h +++ b/services/abilitymgr/include/pending_want_common_event.h @@ -41,7 +41,6 @@ private: WantParams wantParams_; sptr finishedReceiver_; }; - } // namespace AAFwk } // namespace OHOS #endif // PENDING_WANT_COMMON_EVENT_H \ No newline at end of file diff --git a/services/abilitymgr/include/pending_want_key.h b/services/abilitymgr/include/pending_want_key.h index 04d4426cac5..4dce896efd6 100644 --- a/services/abilitymgr/include/pending_want_key.h +++ b/services/abilitymgr/include/pending_want_key.h @@ -25,7 +25,6 @@ namespace OHOS { namespace AAFwk { - #define ODD_PRIME_NUMBER (37) class PendingWantKey { @@ -55,18 +54,17 @@ public: int32_t GetUserId(); private: - int32_t type_ {}; - std::string bundleName_ {}; - std::string requestWho_ {}; - int32_t requestCode_ {}; - Want requestWant_ {}; - std::string requestResolvedType_ {}; - std::vector allWantsInfos_ {}; - int32_t flags_ {}; - int32_t code_ {}; - int32_t userId_ {}; + int32_t type_ = {}; + std::string bundleName_ = {}; + std::string requestWho_ = {}; + int32_t requestCode_ = {}; + Want requestWant_ = {}; + std::string requestResolvedType_ = {}; + std::vector allWantsInfos_ = {}; + int32_t flags_ = {}; + int32_t code_ = {}; + int32_t userId_ = {}; }; - } // namespace AAFwk } // namespace OHOS #endif // OHOS_AAFWK_PENDING_WANT_KEY_H \ No newline at end of file diff --git a/services/abilitymgr/include/pending_want_manager.h b/services/abilitymgr/include/pending_want_manager.h index 83800605461..8bb097dc038 100644 --- a/services/abilitymgr/include/pending_want_manager.h +++ b/services/abilitymgr/include/pending_want_manager.h @@ -22,7 +22,6 @@ #include #include -#include "ability_manager_service.h" #include "ability_manager_errors.h" #include "ability_record.h" #include "common_event.h" diff --git a/services/abilitymgr/include/pending_want_record.h b/services/abilitymgr/include/pending_want_record.h index 31629ee8738..297b6f5992f 100644 --- a/services/abilitymgr/include/pending_want_record.h +++ b/services/abilitymgr/include/pending_want_record.h @@ -54,14 +54,14 @@ public: std::list> GetCancelCallbacks(); private: - std::weak_ptr pendingWantManager_; + std::weak_ptr pendingWantManager_ = {}; int32_t uid_ = 0; int32_t callerUid_ = 0; - sptr callerToken_; + sptr callerToken_ = {}; bool canceled_ = false; - std::shared_ptr key_; - std::list> mCancelCallbacks_; - std::recursive_mutex lock_; + std::shared_ptr key_ = {}; + std::list> mCancelCallbacks_ = {}; + std::recursive_mutex lock_ = {}; }; } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/include/power_storage.h b/services/abilitymgr/include/power_storage.h index fd7c6ddd2c1..3130bc027c4 100644 --- a/services/abilitymgr/include/power_storage.h +++ b/services/abilitymgr/include/power_storage.h @@ -20,7 +20,6 @@ namespace OHOS { namespace AAFwk { - struct PowerOffRecord { std::weak_ptr ability; int32_t missionId; diff --git a/services/abilitymgr/src/ability_manager_client.cpp b/services/abilitymgr/src/ability_manager_client.cpp index 3dbe6bb254a..683fce6cdc3 100644 --- a/services/abilitymgr/src/ability_manager_client.cpp +++ b/services/abilitymgr/src/ability_manager_client.cpp @@ -389,11 +389,11 @@ ErrCode AbilityManagerClient::UnlockMission(int missionId) } ErrCode AbilityManagerClient::SetMissionDescriptionInfo( - const sptr &token, const MissionDescriptionInfo &missionDescriptionInfo) + const sptr &token, const MissionDescriptionInfo &description) { CHECK_REMOTE_OBJECT_AND_RETURN(remoteObject_, ABILITY_SERVICE_NOT_CONNECTED); sptr abms = iface_cast(remoteObject_); - return abms->SetMissionDescriptionInfo(token, missionDescriptionInfo); + return abms->SetMissionDescriptionInfo(token, description); } ErrCode AbilityManagerClient::GetMissionLockModeState() @@ -538,6 +538,5 @@ ErrCode AbilityManagerClient::GetPendingRequestWant(const sptr &tar sptr abms = iface_cast(remoteObject_); return abms->GetPendingRequestWant(target, want); } - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/src/ability_manager_proxy.cpp b/services/abilitymgr/src/ability_manager_proxy.cpp index c41736d1cdc..23e742003d3 100644 --- a/services/abilitymgr/src/ability_manager_proxy.cpp +++ b/services/abilitymgr/src/ability_manager_proxy.cpp @@ -26,7 +26,6 @@ namespace OHOS { namespace AAFwk { - bool AbilityManagerProxy::WriteInterfaceToken(MessageParcel &data) { if (!data.WriteInterfaceToken(AbilityManagerProxy::GetDescriptor())) { @@ -529,7 +528,7 @@ int AbilityManagerProxy::GetAllStackInfo(StackInfo &stackInfo) return result; } -template +template int AbilityManagerProxy::GetParcelableInfos(MessageParcel &reply, std::vector &parcelableInfos) { int32_t infoSize = reply.ReadInt32(); @@ -1021,7 +1020,7 @@ int AbilityManagerProxy::UnlockMission(int missionId) } int AbilityManagerProxy::SetMissionDescriptionInfo( - const sptr &token, const MissionDescriptionInfo &missionDescriptionInfo) + const sptr &token, const MissionDescriptionInfo &description) { int error; MessageParcel data; @@ -1035,7 +1034,7 @@ int AbilityManagerProxy::SetMissionDescriptionInfo( HILOG_ERROR("%{public}s for result fail", __func__); return false; } - if (!data.WriteParcelable(&missionDescriptionInfo)) { + if (!data.WriteParcelable(&description)) { HILOG_ERROR("%{public}s for result fail", __func__); return false; } diff --git a/services/abilitymgr/src/ability_manager_service.cpp b/services/abilitymgr/src/ability_manager_service.cpp index 0844f8e193d..bb9c9791697 100644 --- a/services/abilitymgr/src/ability_manager_service.cpp +++ b/services/abilitymgr/src/ability_manager_service.cpp @@ -287,7 +287,7 @@ int AbilityManagerService::TerminateAbility(const sptr &token, in if ((resultWant != nullptr) && AbilityUtil::IsSystemDialogAbility( - abilityRecord->GetAbilityInfo().bundleName, abilityRecord->GetAbilityInfo().name) && + abilityRecord->GetAbilityInfo().bundleName, abilityRecord->GetAbilityInfo().name) && resultWant->HasParameter(AbilityConfig::SYSTEM_DIALOG_KEY) && resultWant->HasParameter(AbilityConfig::SYSTEM_DIALOG_CALLER_BUNDLENAME) && resultWant->HasParameter(AbilityConfig::SYSTEM_DIALOG_REQUEST_PERMISSIONS)) { @@ -356,6 +356,10 @@ int AbilityManagerService::GetRecentMissions( HILOG_ERROR("numMax or flags is invalid."); return ERR_INVALID_VALUE; } + if (!CheckCallerIsSystemAppByIpc()) { + HILOG_ERROR("caller is not systemApp"); + return CALLER_ISNOT_SYSTEMAPP; + } return currentStackManager_->GetRecentMissions(numMax, flags, recentList); } @@ -366,7 +370,7 @@ int AbilityManagerService::GetMissionSnapshot(const int32_t missionId, MissionSn } int AbilityManagerService::SetMissionDescriptionInfo( - const sptr &token, const MissionDescriptionInfo &missionDescriptionInfo) + const sptr &token, const MissionDescriptionInfo &description) { HILOG_INFO("%{public}s called", __func__); CHECK_POINTER_AND_RETURN(token, ERR_INVALID_VALUE); @@ -375,7 +379,7 @@ int AbilityManagerService::SetMissionDescriptionInfo( auto abilityRecord = Token::GetAbilityRecordByToken(token); CHECK_POINTER_AND_RETURN(abilityRecord, ERR_INVALID_VALUE); - return currentStackManager_->SetMissionDescriptionInfo(abilityRecord, missionDescriptionInfo); + return currentStackManager_->SetMissionDescriptionInfo(abilityRecord, description); } int AbilityManagerService::GetMissionLockModeState() @@ -424,6 +428,10 @@ int AbilityManagerService::RemoveMission(int id) HILOG_ERROR("Mission id is invalid."); return ERR_INVALID_VALUE; } + if (!CheckCallerIsSystemAppByIpc()) { + HILOG_ERROR("caller is not systemApp"); + return CALLER_ISNOT_SYSTEMAPP; + } return currentStackManager_->RemoveMissionById(id); } @@ -1053,7 +1061,7 @@ void AbilityManagerService::StartingLauncherAbility() AppExecFwk::AbilityInfo abilityInfo; /* First stage, hardcoding for the first launcher App */ Want want; - want.AddEntity(Want::FLAG_HOME_INTENT_FROM_SYSTEM); + want.SetElementName(AbilityConfig::LAUNCHER_BUNDLE_NAME, AbilityConfig::LAUNCHER_ABILITY_NAME); while (!(iBundleManager_->QueryAbilityInfo(want, abilityInfo))) { HILOG_INFO("Waiting query launcher ability info completed."); usleep(REPOLL_TIME_MICRO_SECONDS); @@ -1516,7 +1524,6 @@ void AbilityManagerService::StartSystemApplication() HILOG_INFO("start navigation bar"); StartingSystemUiAbility(SatrtUiMode::NAVIGATIONBAR); } - } void AbilityManagerService::ConnectBmsService() @@ -1560,8 +1567,8 @@ void AbilityManagerService::StartingSystemUiAbility(const SatrtUiMode &mode) uint32_t waitCnt = 0; // Wait 10 minutes for the installation to complete. while ((!(iBundleManager_->QueryAbilityInfo(statusBarWant, statusBarInfo)) || - !(iBundleManager_->QueryAbilityInfo(navigationBarWant, navigationBarInfo))) && - waitCnt < MAX_WAIT_SYSTEM_UI_NUM) { + !(iBundleManager_->QueryAbilityInfo(navigationBarWant, navigationBarInfo))) && + waitCnt < MAX_WAIT_SYSTEM_UI_NUM) { HILOG_INFO("Waiting query system ui info completed."); usleep(REPOLL_TIME_MICRO_SECONDS); waitCnt++; @@ -1584,5 +1591,15 @@ void AbilityManagerService::StartingSystemUiAbility(const SatrtUiMode &mode) break; } } + +bool AbilityManagerService::CheckCallerIsSystemAppByIpc() +{ + HILOG_DEBUG("%{public}s begin", __func__); + auto bms = GetBundleManager(); + CHECK_POINTER_RETURN_BOOL(bms); + int32_t callerUid = IPCSkeleton::GetCallingUid(); + HILOG_ERROR("callerUid %{public}d", callerUid); + return bms->CheckIsSystemAppByUid(callerUid); +} } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/src/ability_scheduler_proxy.cpp b/services/abilitymgr/src/ability_scheduler_proxy.cpp index eae1404a38d..8b283b98ff9 100644 --- a/services/abilitymgr/src/ability_scheduler_proxy.cpp +++ b/services/abilitymgr/src/ability_scheduler_proxy.cpp @@ -19,6 +19,7 @@ #include "hilog_wrapper.h" #include "ipc_types.h" +#include "ishared_result_set.h" #include "pac_map.h" #include "want.h" #include "data_ability_observer_interface.h" @@ -27,7 +28,6 @@ namespace OHOS { namespace AAFwk { - bool AbilitySchedulerProxy::WriteInterfaceToken(MessageParcel &data) { if (!data.WriteInterfaceToken(AbilitySchedulerProxy::GetDescriptor())) { @@ -500,13 +500,8 @@ std::shared_ptr AbilitySchedulerProxy::Query( return nullptr; } - std::shared_ptr retval(NativeRdb::AbsSharedResultSet::Unmarshalling(reply)); - if (retval == nullptr) { - HILOG_ERROR("AbilitySchedulerProxy::Query retval == nullptr error"); - return nullptr; - } HILOG_INFO("AbilitySchedulerProxy::Query end"); - return retval; + return OHOS::NativeRdb::ISharedResultSet::ReadFromParcel(reply); } /** diff --git a/services/abilitymgr/src/ability_scheduler_stub.cpp b/services/abilitymgr/src/ability_scheduler_stub.cpp index 8af79be7402..8652c73dcdf 100644 --- a/services/abilitymgr/src/ability_scheduler_stub.cpp +++ b/services/abilitymgr/src/ability_scheduler_stub.cpp @@ -20,6 +20,7 @@ #include "hilog_wrapper.h" #include "ipc_types.h" +#include "ishared_result_set.h" #include "pac_map.h" #include "want.h" #include "data_ability_observer_interface.h" @@ -314,12 +315,13 @@ int AbilitySchedulerStub::QueryInner(MessageParcel &data, MessageParcel &reply) HILOG_ERROR("ReadParcelable predicates is nullptr"); return ERR_INVALID_VALUE; } - std::shared_ptr resultSet = Query(*uri, columns, *predicates); + auto resultSet = Query(*uri, columns, *predicates); if (resultSet == nullptr) { HILOG_ERROR("fail to WriteParcelable resultSet"); return ERR_INVALID_VALUE; } - if (!resultSet->Marshalling(reply)){ + auto result = NativeRdb::ISharedResultSet::WriteToParcel(std::move(resultSet), reply); + if (result == nullptr) { HILOG_ERROR("!resultSet->Marshalling(reply)"); return ERR_INVALID_VALUE; } diff --git a/services/abilitymgr/src/ability_stack_manager.cpp b/services/abilitymgr/src/ability_stack_manager.cpp index 918baf1bf67..25efc16aec0 100644 --- a/services/abilitymgr/src/ability_stack_manager.cpp +++ b/services/abilitymgr/src/ability_stack_manager.cpp @@ -1612,8 +1612,8 @@ void AbilityStackManager::GetRecordByStandard(const AbilityRequest &abilityReque if (currentTopAbility && (!isStackChanged) && (currentTopAbility->GetAbilityInfo().launchMode == AppExecFwk::LaunchMode::SINGLETON) && ((!missionRecord->IsTopAbilityRecordByName(abilityRequest.abilityInfo.name)) || - (missionRecord->IsTopAbilityRecordByName(abilityRequest.abilityInfo.name) && - abilityRequest.abilityInfo.launchMode == AppExecFwk::LaunchMode::STANDARD))) { + (missionRecord->IsTopAbilityRecordByName(abilityRequest.abilityInfo.name) && + abilityRequest.abilityInfo.launchMode == AppExecFwk::LaunchMode::STANDARD))) { targetAbilityRecord = AbilityRecord::CreateAbilityRecord(abilityRequest); } else { targetAbilityRecord = missionRecord->GetTopAbilityRecord(); @@ -1752,14 +1752,14 @@ void AbilityStackManager::CreateRecentMissionInfo( } int AbilityStackManager::SetMissionDescriptionInfo( - const std::shared_ptr &abilityRecord, const MissionDescriptionInfo &missionDescriptionInfo) + const std::shared_ptr &abilityRecord, const MissionDescriptionInfo &description) { HILOG_DEBUG("%{public}s called", __FUNCTION__); CHECK_POINTER_AND_RETURN(abilityRecord, SET_MISSION_INFO_FAILED); auto mission = abilityRecord->GetMissionRecord(); CHECK_POINTER_AND_RETURN(mission, SET_MISSION_INFO_FAILED); - auto ptr = std::make_shared(missionDescriptionInfo); + auto ptr = std::make_shared(description); mission->SetMissionDescriptionInfo(ptr); return ERR_OK; @@ -2695,7 +2695,7 @@ int AbilityStackManager::CheckMultiWindowCondition(const std::listGetAbilityInfo().bundleName, currentTopAbilityRecord->GetAbilityInfo().name)) { + currentTopAbilityRecord->GetAbilityInfo().bundleName, currentTopAbilityRecord->GetAbilityInfo().name)) { HILOG_ERROR("Top page ability is dialog type, cannot return to launcher"); return MOVE_MISSION_TO_STACK_MOVING_DENIED; } @@ -3450,6 +3450,5 @@ void AbilityStackManager::CheckMissionRecordIsResume(const std::shared_ptrResume(mission); } } - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/src/data_ability_manager.cpp b/services/abilitymgr/src/data_ability_manager.cpp index 87369783bde..d712d86833d 100644 --- a/services/abilitymgr/src/data_ability_manager.cpp +++ b/services/abilitymgr/src/data_ability_manager.cpp @@ -417,7 +417,7 @@ DataAbilityManager::DataAbilityRecordPtr DataAbilityManager::LoadLocked( return nullptr; } - auto insertResult = dataAbilityRecordsLoading_.insert({name, dataAbilityRecord}); + auto insertResult = dataAbilityRecordsLoading_.insert({ name, dataAbilityRecord }); if (!insertResult.second) { HILOG_ERROR("Failed to insert data ability to loading map."); return nullptr; diff --git a/services/abilitymgr/src/kernal_system_app_manager.cpp b/services/abilitymgr/src/kernal_system_app_manager.cpp index 15877ca5182..a609d93a4f3 100644 --- a/services/abilitymgr/src/kernal_system_app_manager.cpp +++ b/services/abilitymgr/src/kernal_system_app_manager.cpp @@ -22,7 +22,6 @@ namespace OHOS { namespace AAFwk { - KernalSystemAppManager::KernalSystemAppManager(int userId) : userId_(userId) {} @@ -188,7 +187,8 @@ void KernalSystemAppManager::GetOrCreateAbilityRecord( return false; } return KernalSystemAppManager::GetFlagOfAbility( - ability->GetAbilityInfo().bundleName, ability->GetAbilityInfo().name) == targetFlag; + ability->GetAbilityInfo().bundleName, + ability->GetAbilityInfo().name) == targetFlag; }; auto iter = std::find_if(abilities_.begin(), abilities_.end(), isExist); if (iter != abilities_.end()) { diff --git a/services/abilitymgr/src/lock_mission_container.cpp b/services/abilitymgr/src/lock_mission_container.cpp index 881a97bcc44..e4f1cc9acbd 100644 --- a/services/abilitymgr/src/lock_mission_container.cpp +++ b/services/abilitymgr/src/lock_mission_container.cpp @@ -19,7 +19,6 @@ namespace OHOS { namespace AAFwk { - bool LockMissionContainer::IsLockedMissionState() const { return lockState_ != LockMissionState::LOCK_MISSION_STATE_NONE; diff --git a/services/abilitymgr/src/pending_want_common_event.cpp b/services/abilitymgr/src/pending_want_common_event.cpp index 4949f9580fd..a5eb09d48b8 100644 --- a/services/abilitymgr/src/pending_want_common_event.cpp +++ b/services/abilitymgr/src/pending_want_common_event.cpp @@ -18,7 +18,6 @@ namespace OHOS { namespace AAFwk { - PendingWantCommonEvent::PendingWantCommonEvent() {} @@ -41,6 +40,5 @@ void PendingWantCommonEvent::OnReceiveEvent(const EventFwk::CommonEventData &dat HILOG_INFO("PendingWantCommonEvent::OnReceiveEvent end."); } } - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/services/abilitymgr/src/pending_want_key.cpp b/services/abilitymgr/src/pending_want_key.cpp index dfc9d19e17a..f67cade3669 100644 --- a/services/abilitymgr/src/pending_want_key.cpp +++ b/services/abilitymgr/src/pending_want_key.cpp @@ -18,7 +18,6 @@ namespace OHOS { namespace AAFwk { - void PendingWantKey::SetType(const int32_t type) { type_ = type; @@ -118,6 +117,5 @@ int32_t PendingWantKey::GetUserId() { return userId_; } - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/services/abilitymgr/src/pending_want_manager.cpp b/services/abilitymgr/src/pending_want_manager.cpp index 6103a957f6f..488822694a4 100644 --- a/services/abilitymgr/src/pending_want_manager.cpp +++ b/services/abilitymgr/src/pending_want_manager.cpp @@ -19,6 +19,7 @@ #include #include +#include "ability_manager_service.h" #include "hilog_wrapper.h" namespace OHOS { @@ -49,8 +50,7 @@ sptr PendingWantManager::GetWantSender(const int32_t callingUid, co return nullptr; } } - WantSenderInfo info; - info = wantSenderInfo; + WantSenderInfo info = wantSenderInfo; return GetWantSenderLocked(callingUid, uid, wantSenderInfo.userId, info, callerToken); } @@ -421,6 +421,5 @@ int32_t PendingWantManager::GetPendingRequestWant(const sptr &targe HILOG_ERROR("%{public}s:want is ok.", __func__); return NO_ERROR; } - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/src/pending_want_record.cpp b/services/abilitymgr/src/pending_want_record.cpp index 4890bf01884..c782fb0e54a 100644 --- a/services/abilitymgr/src/pending_want_record.cpp +++ b/services/abilitymgr/src/pending_want_record.cpp @@ -14,6 +14,8 @@ */ #include "pending_want_record.h" + +#include "hilog_wrapper.h" #include "iremote_object.h" #include "pending_want_manager.h" diff --git a/services/abilitymgr/test/mock/appmgr_test_service/include/appmgr_test_service.h b/services/abilitymgr/test/mock/appmgr_test_service/include/appmgr_test_service.h index 1c657f2a03f..d2ec874ce0f 100644 --- a/services/abilitymgr/test/mock/appmgr_test_service/include/appmgr_test_service.h +++ b/services/abilitymgr/test/mock/appmgr_test_service/include/appmgr_test_service.h @@ -68,7 +68,6 @@ private: std::shared_ptr eventLoop_; std::shared_ptr handler_; }; - } // namespace AAFwk } // namespace OHOS #endif // OHOS_AAFWK_APPMGR_TEST_SERVICE_H \ No newline at end of file diff --git a/services/abilitymgr/test/mock/include/mock_app_manager_client.h b/services/abilitymgr/test/mock/include/mock_app_manager_client.h index 9fa0b27ecf7..b05c3802034 100644 --- a/services/abilitymgr/test/mock/include/mock_app_manager_client.h +++ b/services/abilitymgr/test/mock/include/mock_app_manager_client.h @@ -22,7 +22,6 @@ namespace OHOS { namespace AppExecFwk { - class MockAppMgrClient : public AppMgrClient { public: MockAppMgrClient() @@ -43,7 +42,6 @@ public: MOCK_METHOD1(KillProcessByAbilityToken, AppMgrResultCode(const sptr &token)); MOCK_METHOD4(CompelVerifyPermission, int(const std::string &permission, int pid, int uid, std::string &message)); }; - } // namespace AppExecFwk } // namespace OHOS diff --git a/services/abilitymgr/test/mock/include/mock_app_mgr_client.h b/services/abilitymgr/test/mock/include/mock_app_mgr_client.h index 295ce00f600..605bc5058ab 100644 --- a/services/abilitymgr/test/mock/include/mock_app_mgr_client.h +++ b/services/abilitymgr/test/mock/include/mock_app_mgr_client.h @@ -22,7 +22,6 @@ namespace OHOS { namespace AAFwk { - using namespace OHOS::AppExecFwk; class MockAppMgrClient : public AppMgrClient { public: diff --git a/services/abilitymgr/test/mock/libs/aakit/include/ability_scheduler.h b/services/abilitymgr/test/mock/libs/aakit/include/ability_scheduler.h index 6dad75e97cf..e3d2e166530 100644 --- a/services/abilitymgr/test/mock/libs/aakit/include/ability_scheduler.h +++ b/services/abilitymgr/test/mock/libs/aakit/include/ability_scheduler.h @@ -24,7 +24,6 @@ namespace OHOS { namespace AAFwk { - /** * @class AbilityScheduler * AbilityScheduler is used to schedule ability kit lifecycle. @@ -58,7 +57,8 @@ public: int Insert(const Uri &uri, const NativeRdb::ValuesBucket &value) override; - int Update(const Uri &uri, const NativeRdb::ValuesBucket &value, const NativeRdb::DataAbilityPredicates &predicates) override; + int Update(const Uri &uri, const NativeRdb::ValuesBucket &value, + const NativeRdb::DataAbilityPredicates &predicates) override; int Delete(const Uri &uri, const NativeRdb::DataAbilityPredicates &predicates) override; @@ -77,17 +77,28 @@ public: Uri NormalizeUri(const Uri &uri) override; Uri DenormalizeUri(const Uri &uri) override; - void NotifyTopActiveAbilityChanged(bool flag) override {}; - virtual bool ScheduleRegisterObserver(const Uri &uri, const sptr &dataObserver) override {return true;}; - virtual bool ScheduleUnregisterObserver(const Uri &uri, const sptr &dataObserver) override {return true;}; - virtual bool ScheduleNotifyChange(const Uri &uri) override {return true;}; + void NotifyTopActiveAbilityChanged(bool flag) override{}; + virtual bool ScheduleRegisterObserver(const Uri &uri, const sptr &dataObserver) override + { + return true; + }; + virtual bool ScheduleUnregisterObserver(const Uri &uri, const sptr &dataObserver) override + { + return true; + }; + virtual bool ScheduleNotifyChange(const Uri &uri) override + { + return true; + }; virtual std::vector> ExecuteBatch( - const std::vector> &operations) override {return std::vector>();}; + const std::vector> &operations) override + { + return std::vector>(); + }; private: AbilityResult result_; }; - } // namespace AAFwk } // namespace OHOS #endif // OHOS_AAFWK_ABILITY_SCHEDULER_H diff --git a/services/abilitymgr/test/mock/libs/aakit/include/mock_ability_connect_callback.h b/services/abilitymgr/test/mock/libs/aakit/include/mock_ability_connect_callback.h index 7352d8122dd..8eeba878aff 100644 --- a/services/abilitymgr/test/mock/libs/aakit/include/mock_ability_connect_callback.h +++ b/services/abilitymgr/test/mock/libs/aakit/include/mock_ability_connect_callback.h @@ -31,7 +31,6 @@ public: static int onAbilityConnectDoneCount; static int onAbilityDisconnectDoneCount; }; - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/test/mock/libs/ability_scheduler_mock/ability_scheduler_mock.h b/services/abilitymgr/test/mock/libs/ability_scheduler_mock/ability_scheduler_mock.h index 371373a313d..aa698acecaa 100755 --- a/services/abilitymgr/test/mock/libs/ability_scheduler_mock/ability_scheduler_mock.h +++ b/services/abilitymgr/test/mock/libs/ability_scheduler_mock/ability_scheduler_mock.h @@ -22,7 +22,6 @@ namespace OHOS { namespace AAFwk { - class AbilitySchedulerMock : public IRemoteStub { public: AbilitySchedulerMock() : code_(0) @@ -142,6 +141,5 @@ public: int code_ = 0; }; - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/services/abilitymgr/test/mock/libs/appexecfwk_core/include/appmgr/app_mgr_client.h b/services/abilitymgr/test/mock/libs/appexecfwk_core/include/appmgr/app_mgr_client.h index b66a2d5dc45..5dc03a6f8e9 100644 --- a/services/abilitymgr/test/mock/libs/appexecfwk_core/include/appmgr/app_mgr_client.h +++ b/services/abilitymgr/test/mock/libs/appexecfwk_core/include/appmgr/app_mgr_client.h @@ -27,9 +27,7 @@ namespace OHOS { namespace AppExecFwk { - class AppServiceManager; - class AppMgrClient { public: AppMgrClient(); @@ -174,7 +172,6 @@ private: sptr remote_; sptr callback_; }; - } // namespace AppExecFwk } // namespace OHOS #endif // FOUNDATION_APPEXECFWK_INTERFACES_INNERKITS_APPEXECFWK_CORE_INCLUDE_APP_MGR_CLIENT_H diff --git a/services/abilitymgr/test/mock/libs/appexecfwk_core/include/appmgr/app_state_callback_host.h b/services/abilitymgr/test/mock/libs/appexecfwk_core/include/appmgr/app_state_callback_host.h index 591c68102ae..eae36ceccf4 100644 --- a/services/abilitymgr/test/mock/libs/appexecfwk_core/include/appmgr/app_state_callback_host.h +++ b/services/abilitymgr/test/mock/libs/appexecfwk_core/include/appmgr/app_state_callback_host.h @@ -26,7 +26,6 @@ namespace OHOS { namespace AppExecFwk { - class AppStateCallbackHost : public IRemoteStub { public: AppStateCallbackHost(); @@ -59,7 +58,6 @@ private: DISALLOW_COPY_AND_MOVE(AppStateCallbackHost); }; - } // namespace AppExecFwk } // namespace OHOS #endif // FOUNDATION_APPEXECFWK_INTERFACES_INNERKITS_APPMGR_INCLUDE_APP_STATE_CALLBACK_HOST_H diff --git a/services/abilitymgr/test/mock/libs/appexecfwk_core/include/appmgr/iapp_state_callback.h b/services/abilitymgr/test/mock/libs/appexecfwk_core/include/appmgr/iapp_state_callback.h index e9fdfe6d3d8..5abbef37c64 100644 --- a/services/abilitymgr/test/mock/libs/appexecfwk_core/include/appmgr/iapp_state_callback.h +++ b/services/abilitymgr/test/mock/libs/appexecfwk_core/include/appmgr/iapp_state_callback.h @@ -24,7 +24,6 @@ namespace OHOS { namespace AppExecFwk { - class IAppStateCallback : public IRemoteBroker { public: DECLARE_INTERFACE_DESCRIPTOR(u"ohos.appexecfwk.AppStateCallback"); @@ -49,7 +48,6 @@ public: TRANSACT_ON_ABILITY_REQUEST_DONE, }; }; - } // namespace AppExecFwk } // namespace OHOS #endif // FOUNDATION_APPEXECFWK_INTERFACES_INNERKITS_APPEXECFWK_CORE_INCLUDE_APPMGR_IAPP_STATE_CALLBACK_H diff --git a/services/abilitymgr/test/mock/libs/appexecfwk_core/include/bundlemgr/bundle_mgr_interface.h b/services/abilitymgr/test/mock/libs/appexecfwk_core/include/bundlemgr/bundle_mgr_interface.h index c5bd813fa45..32985d2bcb9 100644 --- a/services/abilitymgr/test/mock/libs/appexecfwk_core/include/bundlemgr/bundle_mgr_interface.h +++ b/services/abilitymgr/test/mock/libs/appexecfwk_core/include/bundlemgr/bundle_mgr_interface.h @@ -29,7 +29,6 @@ #include "module_usage_record.h" using OHOS::AAFwk::Want; - namespace OHOS { namespace AppExecFwk { enum class DumpFlag { diff --git a/services/abilitymgr/test/mock/libs/appexecfwk_core/include/bundlemgr/mock_bundle_manager.h b/services/abilitymgr/test/mock/libs/appexecfwk_core/include/bundlemgr/mock_bundle_manager.h index 4aa2b587512..664a3eb1686 100755 --- a/services/abilitymgr/test/mock/libs/appexecfwk_core/include/bundlemgr/mock_bundle_manager.h +++ b/services/abilitymgr/test/mock/libs/appexecfwk_core/include/bundlemgr/mock_bundle_manager.h @@ -29,7 +29,6 @@ namespace OHOS { namespace AppExecFwk { - namespace { const std::string COM_IX_HIWORLD = "com.ix.hiworld"; const std::string COM_IX_HIMUSIC = "com.ix.hiMusic"; @@ -37,6 +36,8 @@ const std::string COM_IX_HIRADIO = "com.ix.hiRadio"; const std::string COM_IX_HISERVICE = "com.ix.hiService"; const std::string COM_IX_MUSICSERVICE = "com.ix.musicService"; const std::string COM_IX_HIDATA = "com.ix.hiData"; +constexpr int32_t MAX_SYS_UID = 2899; +constexpr int32_t ROOT_UID = 0; auto HiWordInfo = [](std::string bundleName, AbilityInfo &abilityInfo, ElementName &elementTemp) { abilityInfo.name = elementTemp.GetAbilityName(); @@ -122,7 +123,6 @@ auto HiDataInfo = [](std::string bundleName, AbilityInfo &abilityInfo, ElementNa abilityInfo.process = "p6"; return true; }; - } // namespace class BundleMgrProxy : public IRemoteProxy { public: @@ -143,6 +143,7 @@ public: virtual bool NotifyActivityLifeStatus( const std::string &bundleName, const std::string &abilityName, const int64_t launchTime) override; + virtual bool CheckIsSystemAppByUid(const int uid) override; MOCK_METHOD3(GetApplicationInfos, bool(const ApplicationFlag flag, const int userId, std::vector &appInfos)); MOCK_METHOD2(GetBundleInfos, bool(const BundleFlag flag, std::vector &bundleInfos)); @@ -150,7 +151,6 @@ public: MOCK_METHOD2(GetBundleNameForUid, bool(const int uid, std::string &bundleName)); MOCK_METHOD2(GetBundleGids, bool(const std::string &bundleName, std::vector &gids)); MOCK_METHOD1(GetAppType, std::string(const std::string &bundleName)); - MOCK_METHOD1(CheckIsSystemAppByUid, bool(const int uid)); MOCK_METHOD2(GetBundleInfosByMetaData, bool(const std::string &metaData, std::vector &bundleInfos)); MOCK_METHOD1(QueryKeepAliveBundleInfos, bool(std::vector &bundleInfos)); MOCK_METHOD2(GetAbilityLabel, std::string(const std::string &bundleName, const std::string &className)); @@ -217,6 +217,7 @@ public: const std::string &appName, const ApplicationFlag flag, const int userId, ApplicationInfo &appInfo) override; bool GetBundleInfo(const std::string &bundleName, const BundleFlag flag, BundleInfo &bundleInfo) override; int GetUidByBundleName(const std::string &bundleName, const int userId) override; + virtual bool CheckIsSystemAppByUid(const int uid) override; bool CheckWantEntity(const AAFwk::Want &, AbilityInfo &); @@ -229,7 +230,6 @@ public: MOCK_METHOD2(GetBundleNameForUid, bool(const int uid, std::string &bundleName)); MOCK_METHOD2(GetBundleGids, bool(const std::string &bundleName, std::vector &gids)); MOCK_METHOD1(GetAppType, std::string(const std::string &bundleName)); - MOCK_METHOD1(CheckIsSystemAppByUid, bool(const int uid)); MOCK_METHOD2(GetBundleInfosByMetaData, bool(const std::string &metaData, std::vector &bundleInfos)); MOCK_METHOD1(QueryKeepAliveBundleInfos, bool(std::vector &bundleInfos)); MOCK_METHOD2(GetAbilityLabel, std::string(const std::string &bundleName, const std::string &className)); @@ -283,7 +283,6 @@ public: std::function; std::map abilityInfoMap_; }; - } // namespace AppExecFwk } // namespace OHOS diff --git a/services/abilitymgr/test/mock/libs/appexecfwk_core/src/bundlemgr/mock_bundle_manager.cpp b/services/abilitymgr/test/mock/libs/appexecfwk_core/src/bundlemgr/mock_bundle_manager.cpp index 14c1352f9cf..2b7e1827e88 100644 --- a/services/abilitymgr/test/mock/libs/appexecfwk_core/src/bundlemgr/mock_bundle_manager.cpp +++ b/services/abilitymgr/test/mock/libs/appexecfwk_core/src/bundlemgr/mock_bundle_manager.cpp @@ -156,6 +156,16 @@ bool BundleMgrService::GetApplicationInfo( return true; } +bool BundleMgrService::CheckIsSystemAppByUid(const int uid) +{ + int maxSysUid{MAX_SYS_UID}; + int baseSysUid{ROOT_UID}; + if (uid >= baseSysUid && uid <= maxSysUid) { + return true; + } + return false; +} + bool BundleMgrService::CheckWantEntity(const AAFwk::Want &want, AbilityInfo &abilityInfo) { auto entityVector = want.GetEntities(); @@ -177,8 +187,8 @@ bool BundleMgrService::CheckWantEntity(const AAFwk::Want &want, AbilityInfo &abi auto bundleName = element.GetBundleName(); auto abilityName = element.GetAbilityName(); if (find || (bundleName == AbilityConfig::SYSTEM_UI_BUNDLE_NAME && - (abilityName == AbilityConfig::SYSTEM_UI_STATUS_BAR || - abilityName == AbilityConfig::SYSTEM_UI_NAVIGATION_BAR))) { + (abilityName == AbilityConfig::SYSTEM_UI_STATUS_BAR || + abilityName == AbilityConfig::SYSTEM_UI_NAVIGATION_BAR))) { return true; } diff --git a/services/abilitymgr/test/mock/libs/system_ability_mock/system_ability.h b/services/abilitymgr/test/mock/libs/system_ability_mock/system_ability.h index 517061668ae..85bfdde3062 100644 --- a/services/abilitymgr/test/mock/libs/system_ability_mock/system_ability.h +++ b/services/abilitymgr/test/mock/libs/system_ability_mock/system_ability.h @@ -20,7 +20,6 @@ #include "iremote_object.h" namespace OHOS { - #define REGISTER_SYSTEM_ABILITY_BY_ID(a, b, c) #define REGISTER_SYSTEM_ABILITY(abilityClassName, abilityId, runOnCreate) #define DECLEAR_SYSTEM_ABILITY(className) @@ -68,6 +67,5 @@ protected: HiviewDFX::HiLog::Debug(LABEL, "Mock SystemAbility Destructor called"); } }; - } // namespace OHOS #endif // FOUNDATION_AAFWK_SERVICES_TEST_MOCK_SYSTEM_ABILITY_H diff --git a/services/abilitymgr/test/unittest/phone/ability_connect_callback_proxy_test/ability_connect_callback_proxy_test.cpp b/services/abilitymgr/test/unittest/phone/ability_connect_callback_proxy_test/ability_connect_callback_proxy_test.cpp index 1c239ebe3f6..df8600e45de 100644 --- a/services/abilitymgr/test/unittest/phone/ability_connect_callback_proxy_test/ability_connect_callback_proxy_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_connect_callback_proxy_test/ability_connect_callback_proxy_test.cpp @@ -30,7 +30,7 @@ public: void SetUp(); void TearDown(); - std::shared_ptr proxy_; + std::shared_ptr proxy_{nullptr}; }; void AbilityConnectCallBackProxyTest::SetUpTestCase(void) diff --git a/services/abilitymgr/test/unittest/phone/ability_connect_callback_proxy_test/mock_ability_connect_callback_stub.h b/services/abilitymgr/test/unittest/phone/ability_connect_callback_proxy_test/mock_ability_connect_callback_stub.h index 1c90b9ca1f7..848dc69007f 100644 --- a/services/abilitymgr/test/unittest/phone/ability_connect_callback_proxy_test/mock_ability_connect_callback_stub.h +++ b/services/abilitymgr/test/unittest/phone/ability_connect_callback_proxy_test/mock_ability_connect_callback_stub.h @@ -47,7 +47,6 @@ public: private: Semaphore sem_; }; - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/test/unittest/phone/ability_connect_callback_stub_test/ability_connect_callback_stub_test.cpp b/services/abilitymgr/test/unittest/phone/ability_connect_callback_stub_test/ability_connect_callback_stub_test.cpp index 42addf961cc..8c901c98532 100644 --- a/services/abilitymgr/test/unittest/phone/ability_connect_callback_stub_test/ability_connect_callback_stub_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_connect_callback_stub_test/ability_connect_callback_stub_test.cpp @@ -23,7 +23,7 @@ using namespace OHOS::AAFwk; using namespace OHOS; using namespace testing; -class AbilityConnectionStubTest : public testing::Test { +class AbilityConnectCallBackStubTest : public testing::Test { public: static void SetUpTestCase(void); static void TearDownTestCase(void); @@ -33,16 +33,16 @@ public: void WriteInterfaceToken(MessageParcel &data); }; -void AbilityConnectionStubTest::SetUpTestCase(void) +void AbilityConnectCallBackStubTest::SetUpTestCase(void) {} -void AbilityConnectionStubTest::TearDownTestCase(void) +void AbilityConnectCallBackStubTest::TearDownTestCase(void) {} -void AbilityConnectionStubTest::SetUp() +void AbilityConnectCallBackStubTest::SetUp() {} -void AbilityConnectionStubTest::TearDown() +void AbilityConnectCallBackStubTest::TearDown() {} -void AbilityConnectionStubTest::WriteInterfaceToken(MessageParcel &data) +void AbilityConnectCallBackStubTest::WriteInterfaceToken(MessageParcel &data) { data.WriteInterfaceToken(AbilityConnectionProxy::GetDescriptor()); } @@ -55,7 +55,7 @@ void AbilityConnectionStubTest::WriteInterfaceToken(MessageParcel &data) * EnvConditions: ElementName is nullptr * CaseDescription: Verify that on remote request is normal and abnormal */ -HWTEST_F(AbilityConnectionStubTest, AbilityConnectionCallBack_IPC_001, TestSize.Level0) +HWTEST_F(AbilityConnectCallBackStubTest, AbilityConnectionCallBack_IPC_001, TestSize.Level0) { sptr mockAbilityConnectStub(new MockAbilityConnectCallback()); @@ -83,7 +83,7 @@ HWTEST_F(AbilityConnectionStubTest, AbilityConnectionCallBack_IPC_001, TestSize. * EnvConditions: ElementName is not nullptr * CaseDescription: Verify that on remote request is normal and abnormal */ -HWTEST_F(AbilityConnectionStubTest, AbilityConnectionCallBack_IPC_002, TestSize.Level0) +HWTEST_F(AbilityConnectCallBackStubTest, AbilityConnectionCallBack_IPC_002, TestSize.Level0) { sptr mockAbilityConnectStub(new MockAbilityConnectCallback()); @@ -113,7 +113,7 @@ HWTEST_F(AbilityConnectionStubTest, AbilityConnectionCallBack_IPC_002, TestSize. * EnvConditions: ElementName is nullptr * CaseDescription: Verify that on remote request is normal and abnormal */ -HWTEST_F(AbilityConnectionStubTest, AbilityConnectionCallBack_IPC_003, TestSize.Level0) +HWTEST_F(AbilityConnectCallBackStubTest, AbilityConnectionCallBack_IPC_003, TestSize.Level0) { sptr mockAbilityConnectStub(new MockAbilityConnectCallback()); @@ -141,7 +141,7 @@ HWTEST_F(AbilityConnectionStubTest, AbilityConnectionCallBack_IPC_003, TestSize. * EnvConditions: ElementName is not nullptr * CaseDescription: Verify that on remote request is normal and abnormal */ -HWTEST_F(AbilityConnectionStubTest, AbilityConnectionCallBack_IPC_004, TestSize.Level0) +HWTEST_F(AbilityConnectCallBackStubTest, AbilityConnectionCallBack_IPC_004, TestSize.Level0) { sptr mockAbilityConnectStub(new MockAbilityConnectCallback()); diff --git a/services/abilitymgr/test/unittest/phone/ability_connect_callback_stub_test/mock_ability_connect_callback_stub.h b/services/abilitymgr/test/unittest/phone/ability_connect_callback_stub_test/mock_ability_connect_callback_stub.h index 1c90b9ca1f7..848dc69007f 100644 --- a/services/abilitymgr/test/unittest/phone/ability_connect_callback_stub_test/mock_ability_connect_callback_stub.h +++ b/services/abilitymgr/test/unittest/phone/ability_connect_callback_stub_test/mock_ability_connect_callback_stub.h @@ -47,7 +47,6 @@ public: private: Semaphore sem_; }; - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/test/unittest/phone/ability_connect_manage_test/ability_connect_manage_test.cpp b/services/abilitymgr/test/unittest/phone/ability_connect_manage_test/ability_connect_manage_test.cpp index 5a1b934216d..e0b64b04de9 100644 --- a/services/abilitymgr/test/unittest/phone/ability_connect_manage_test/ability_connect_manage_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_connect_manage_test/ability_connect_manage_test.cpp @@ -56,7 +56,7 @@ static void WaitUntilTaskDone(const std::shared_ptr &handler) WaitUntilTaskCalled(f, handler, taskCalled); } -class AbilityConnectManagerTest : public testing::Test { +class AbilityConnectManageTest : public testing::Test { public: static void SetUpTestCase(void); static void TearDownTestCase(void); @@ -71,20 +71,20 @@ public: static constexpr int TEST_WAIT_TIME = 1000000; protected: - AbilityRequest abilityRequest_; - AbilityRequest abilityRequest1_; - std::shared_ptr serviceRecord_; - std::shared_ptr serviceRecord1_; - OHOS::sptr serviceToken_; - OHOS::sptr serviceToken1_; - OHOS::sptr callbackA_; - OHOS::sptr callbackB_; + AbilityRequest abilityRequest_{}; + AbilityRequest abilityRequest1_{}; + std::shared_ptr serviceRecord_{nullptr}; + std::shared_ptr serviceRecord1_{nullptr}; + OHOS::sptr serviceToken_{nullptr}; + OHOS::sptr serviceToken1_{nullptr}; + OHOS::sptr callbackA_{nullptr}; + OHOS::sptr callbackB_{nullptr}; private: std::shared_ptr connectManager_; }; -AbilityRequest AbilityConnectManagerTest::GenerateAbilityRequest(const std::string &deviceName, +AbilityRequest AbilityConnectManageTest::GenerateAbilityRequest(const std::string &deviceName, const std::string &abilityName, const std::string &appName, const std::string &bundleName) { ElementName element(deviceName, bundleName, abilityName); @@ -109,12 +109,12 @@ AbilityRequest AbilityConnectManagerTest::GenerateAbilityRequest(const std::stri return abilityRequest; } -void AbilityConnectManagerTest::SetUpTestCase(void) +void AbilityConnectManageTest::SetUpTestCase(void) {} -void AbilityConnectManagerTest::TearDownTestCase(void) +void AbilityConnectManageTest::TearDownTestCase(void) {} -void AbilityConnectManagerTest::SetUp(void) +void AbilityConnectManageTest::SetUp(void) { connectManager_ = std::make_unique(); // generate ability request @@ -136,7 +136,7 @@ void AbilityConnectManagerTest::SetUp(void) callbackB_ = new AbilityConnectCallback(); } -void AbilityConnectManagerTest::TearDown(void) +void AbilityConnectManageTest::TearDown(void) { // reset the callback count AbilityConnectCallback::onAbilityConnectDoneCount = 0; @@ -144,7 +144,7 @@ void AbilityConnectManagerTest::TearDown(void) serviceRecord_ = nullptr; } -AbilityConnectManager *AbilityConnectManagerTest::ConnectManager() const +AbilityConnectManager *AbilityConnectManageTest::ConnectManager() const { return connectManager_.get(); } @@ -157,7 +157,7 @@ AbilityConnectManager *AbilityConnectManagerTest::ConnectManager() const * EnvConditions:NA * CaseDescription: Verify the normal process of startability */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_001, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_001, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -195,7 +195,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_001, TestSize.Level1) * 1.token is nullptr, terminate ability failed * 2.token is not nullptr, terminate ability success, and verify the status */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_002, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_002, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -226,7 +226,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_002, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify ability is terminating, terminate ability success */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_003, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_003, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -254,7 +254,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_003, TestSize.Level1) * EnvConditions: NA * CaseDescription: Verify service is connected, terminate ability failed */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_004, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_004, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -286,7 +286,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_004, TestSize.Level1) * 1.token is nullptr, stop service ability failed * 2.token is not nullptr, stop service ability success, and verify the status */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_005, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_005, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -318,7 +318,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_005, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify ability is terminating, stop service ability success */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_006, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_006, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -346,7 +346,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_006, TestSize.Level1) * EnvConditions: NA * CaseDescription: Verify service is connected, stop service ability failed */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_007, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_007, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -376,7 +376,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_007, TestSize.Level1) * EnvConditions:NA * CaseDescription: verify the scene of service not loaded and callback not bound. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_008, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_008, TestSize.Level1) { int result = ConnectManager()->ConnectAbilityLocked(abilityRequest_, callbackA_, nullptr); EXPECT_EQ(0, result); @@ -401,7 +401,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_008, TestSize.Level1) * EnvConditions:NA * CaseDescription: verify the scene of service load ability's timeout. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_009, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_009, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -425,7 +425,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_009, TestSize.Level1) * EnvConditions:NA * CaseDescription: verify the scene of service loaded and callback not bound. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_010, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_010, TestSize.Level1) { auto result = ConnectManager()->ConnectAbilityLocked(abilityRequest_, callbackA_, nullptr); EXPECT_EQ(0, result); @@ -456,7 +456,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_010, TestSize.Level1) * EnvConditions:NA * CaseDescription: verify the scene of service connect ability's timeout. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_011, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_011, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -492,7 +492,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_011, TestSize.Level1) * EnvConditions:NA * CaseDescription: verify the scene of service loaded and callback bound. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_012, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_012, TestSize.Level1) { auto result = ConnectManager()->ConnectAbilityLocked(abilityRequest_, callbackA_, nullptr); EXPECT_EQ(0, result); @@ -520,7 +520,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_012, TestSize.Level1) * EnvConditions:NA * CaseDescription: verify the scene of service not loaded and callback bound. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_013, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_013, TestSize.Level1) { int result = ConnectManager()->ConnectAbilityLocked(abilityRequest_, callbackA_, nullptr); EXPECT_EQ(0, result); @@ -559,7 +559,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_013, TestSize.Level1) * EnvConditions:NA * CaseDescription: verify the scene of service loaded and callback bound, but service and callback was not associated. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_014, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_014, TestSize.Level1) { auto result = ConnectManager()->ConnectAbilityLocked(abilityRequest_, callbackA_, nullptr); EXPECT_EQ(0, result); @@ -596,7 +596,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_014, TestSize.Level1) * EnvConditions:NA * CaseDescription: verify the AttachAbilityThreadLocked function when the parameter is null. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_015, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_015, TestSize.Level1) { auto result = ConnectManager()->AttachAbilityThreadLocked(nullptr, nullptr); EXPECT_EQ(OHOS::ERR_INVALID_VALUE, result); @@ -610,7 +610,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_015, TestSize.Level1) * EnvConditions:NA * CaseDescription: verify the ScheduleConnectAbilityDoneLocked function when the parameter is null. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_016, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_016, TestSize.Level1) { auto callback = new AbilityConnectCallback(); auto result = ConnectManager()->ScheduleConnectAbilityDoneLocked(nullptr, callback); @@ -625,7 +625,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_016, TestSize.Level1) * EnvConditions:NA * CaseDescription: verify the ScheduleConnectAbilityDoneLocked function when the state is CONNECTED. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_017, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_017, TestSize.Level1) { auto callback = new AbilityConnectCallback(); ConnectManager()->ConnectAbilityLocked(abilityRequest_, callback, nullptr); @@ -657,7 +657,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_017, TestSize.Level1) * EnvConditions:NA * CaseDescription: verify the input parameters. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_001, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Kit_Connect_001, TestSize.Level1) { // start test // test1 for serviceToken is null but remoteObject is valid @@ -678,7 +678,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_001, TestSize.Level1) * EnvConditions:NA * CaseDescription: verify the input serviceToken which corresponding ability record doesn't exist. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_002, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Kit_Connect_002, TestSize.Level1) { // test for serviceToken's abilityRecord is null serviceRecord_ = nullptr; @@ -694,7 +694,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_002, TestSize.Level1) * EnvConditions:NA * CaseDescription: verify the input serviceToken which corresponding connection list is empty. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_003, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Kit_Connect_003, TestSize.Level1) { // test for serviceToken's connection list is null // start test @@ -714,7 +714,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_003, TestSize.Level1) * CaseDescription: verify the input serviceToken which corresponding connection list members' state * is not CONNECTING or CONNECTED. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_004, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Kit_Connect_004, TestSize.Level1) { // test for schedule the service connected done but the corresponding connection state is not CONNECTING // generate the first connection record of callbackA_ @@ -746,7 +746,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_004, TestSize.Level1) * CaseDescription: verify the scene : 1.serviceToken's corresponding connection list member's state is CONNECTING. * 2.But the connection callback is null. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_005, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Kit_Connect_005, TestSize.Level1) { // test for schedule the service connected done but the corresponding connection state is not CONNECTING // generate the first connection record of null @@ -774,7 +774,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_005, TestSize.Level1) * CaseDescription: verify the scene : 1.serviceToken's corresponding connection list member's state is CONNECTED. * 2.But the connection callback is null. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_006, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Kit_Connect_006, TestSize.Level1) { // test for schedule the service connected done but the corresponding connection state is not CONNECTING // generate the first connection record of null @@ -802,7 +802,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_006, TestSize.Level1) * CaseDescription: verify the scene : 1.serviceToken's corresponding connection list member's state is CONNECTING. * 2.But the connection callback is valid. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_007, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Kit_Connect_007, TestSize.Level1) { // test for schedule the service connected done but the corresponding connection state is not CONNECTING // generate the first connection record of callbackA_ @@ -834,7 +834,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_007, TestSize.Level1) * CaseDescription: verify the scene : 1.serviceToken's corresponding connection list member's state is CONNECTED. * 2.But the connection callback is valid. */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_008, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Kit_Connect_008, TestSize.Level1) { // test for schedule the service connected done but the corresponding connection state is not CONNECTING // generate the first connection record of callbackA_ @@ -874,7 +874,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Connect_008, TestSize.Level1) * 2. If the current connect ability state is not connected, disconnect fails * 3. Verify the success of disconnect ability */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Disconnect_001, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Kit_Disconnect_001, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -908,7 +908,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Disconnect_001, TestSize.Level1) * EnvConditions:NA * CaseDescription: Results after verifying the disconnect ability */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Disconnect_002, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Kit_Disconnect_002, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -960,7 +960,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Kit_Disconnect_002, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify the ability status, right */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_018, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_018, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -1002,7 +1002,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_018, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify the abilitytransitiondone process */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_019, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_019, TestSize.Level1) { OHOS::sptr nullToken = nullptr; auto result = ConnectManager()->AbilityTransitionDone(nullToken, OHOS::AAFwk::AbilityState::INACTIVE); @@ -1033,7 +1033,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_019, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify the ScheduleDisconnectAbilityDoneLocked process */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_020, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_020, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -1080,7 +1080,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_020, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify the ScheduleCommandAbilityDoneLocked process */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_021, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_021, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -1117,7 +1117,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_021, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify the GetServiceRecordByToken process */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_022, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_022, TestSize.Level1) { ConnectManager()->ConnectAbilityLocked(abilityRequest_, callbackA_, nullptr); auto elementName = abilityRequest_.want.GetElement(); @@ -1142,7 +1142,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_022, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify the RemoveAll process */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_023, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_023, TestSize.Level1) { ConnectManager()->ConnectAbilityLocked(abilityRequest_, callbackA_, nullptr); auto elementName = abilityRequest_.want.GetElement(); @@ -1170,7 +1170,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_023, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify the OnAbilityDied process */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_024, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_024, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -1232,7 +1232,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_024, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify the DispatchInactive process */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_025, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_025, TestSize.Level1) { std::shared_ptr ability = nullptr; auto result = ConnectManager()->DispatchInactive(ability, OHOS::AAFwk::AbilityState::INACTIVATING); @@ -1268,7 +1268,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_025, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify the DispatchInactive process */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_026, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_026, TestSize.Level1) { std::shared_ptr ability = nullptr; auto result = ConnectManager()->DispatchInactive(ability, OHOS::AAFwk::AbilityState::INACTIVATING); @@ -1304,7 +1304,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_026, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify the AddConnectDeathRecipient process */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_027, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_027, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -1328,7 +1328,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_027, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify the RemoveConnectDeathRecipient process */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_028, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_028, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); @@ -1351,7 +1351,7 @@ HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_028, TestSize.Level1) * EnvConditions:NA * CaseDescription: Verify the OnCallBackDied process */ -HWTEST_F(AbilityConnectManagerTest, AAFWK_Connect_Service_029, TestSize.Level1) +HWTEST_F(AbilityConnectManageTest, AAFWK_Connect_Service_029, TestSize.Level1) { auto handler = std::make_shared(EventRunner::Create()); ConnectManager()->SetEventHandler(handler); diff --git a/services/abilitymgr/test/unittest/phone/ability_manager_proxy_test/ability_manager_proxy_test.cpp b/services/abilitymgr/test/unittest/phone/ability_manager_proxy_test/ability_manager_proxy_test.cpp index 8e87d86b5ff..9d4b85308b0 100644 --- a/services/abilitymgr/test/unittest/phone/ability_manager_proxy_test/ability_manager_proxy_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_manager_proxy_test/ability_manager_proxy_test.cpp @@ -34,8 +34,8 @@ public: void SetUp(); void TearDown(); - std::shared_ptr proxy_; - sptr mock_; + std::shared_ptr proxy_{nullptr}; + sptr mock_{nullptr}; }; void AbilityManagerProxyTest::SetUpTestCase(void) diff --git a/services/abilitymgr/test/unittest/phone/ability_manager_service_test/ability_manager_service_test.cpp b/services/abilitymgr/test/unittest/phone/ability_manager_service_test/ability_manager_service_test.cpp index baaabd7c55a..135de9757cd 100644 --- a/services/abilitymgr/test/unittest/phone/ability_manager_service_test/ability_manager_service_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_manager_service_test/ability_manager_service_test.cpp @@ -74,9 +74,9 @@ public: static constexpr int TEST_WAIT_TIME = 100000; public: - std::shared_ptr abilityMs_; - AbilityRequest abilityRequest_; - std::shared_ptr abilityRecord_; + std::shared_ptr abilityMs_{nullptr}; + AbilityRequest abilityRequest_{}; + std::shared_ptr abilityRecord_{nullptr}; }; int AbilityManagerServiceTest::StartAbility(const Want &want) diff --git a/services/abilitymgr/test/unittest/phone/ability_manager_stub_test/ability_manager_stub_impl_mock.h b/services/abilitymgr/test/unittest/phone/ability_manager_stub_test/ability_manager_stub_impl_mock.h index 66841eee2b0..43d8a3a9575 100755 --- a/services/abilitymgr/test/unittest/phone/ability_manager_stub_test/ability_manager_stub_impl_mock.h +++ b/services/abilitymgr/test/unittest/phone/ability_manager_stub_test/ability_manager_stub_impl_mock.h @@ -281,7 +281,6 @@ public: return 0; } }; - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/test/unittest/phone/ability_manager_stub_test/ability_manager_stub_test.cpp b/services/abilitymgr/test/unittest/phone/ability_manager_stub_test/ability_manager_stub_test.cpp index f629fa94d6b..7d191a7f13b 100644 --- a/services/abilitymgr/test/unittest/phone/ability_manager_stub_test/ability_manager_stub_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_manager_stub_test/ability_manager_stub_test.cpp @@ -31,7 +31,7 @@ public: void SetUp(); void TearDown(); void WriteInterfaceToken(MessageParcel &data); - sptr stub_; + sptr stub_{nullptr}; }; void AbilityManagerStubTest::SetUpTestCase(void) diff --git a/services/abilitymgr/test/unittest/phone/ability_manager_test/ability_manager_stub_mock.h b/services/abilitymgr/test/unittest/phone/ability_manager_test/ability_manager_stub_mock.h index f73e93a1e10..dbdc314de42 100644 --- a/services/abilitymgr/test/unittest/phone/ability_manager_test/ability_manager_stub_mock.h +++ b/services/abilitymgr/test/unittest/phone/ability_manager_test/ability_manager_stub_mock.h @@ -94,7 +94,6 @@ public: MOCK_METHOD1(SetMissionStackSetting, int(const StackSetting &stackSetting)); MOCK_METHOD1(MaximizeMultiWindow, int(int missionId)); }; - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/test/unittest/phone/ability_manager_test/ability_manager_test.cpp b/services/abilitymgr/test/unittest/phone/ability_manager_test/ability_manager_test.cpp index 761cf1d27d4..901a33f190c 100644 --- a/services/abilitymgr/test/unittest/phone/ability_manager_test/ability_manager_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_manager_test/ability_manager_test.cpp @@ -56,8 +56,8 @@ public: public: static constexpr int TEST_WAIT_TIME = 100000; std::shared_ptr abilityClient_ = nullptr; - sptr mock_; - Want want_; + sptr mock_{nullptr}; + Want want_{}; }; void AbilityManagerTest::SetUpTestCase(void) diff --git a/services/abilitymgr/test/unittest/phone/ability_manager_test/system_ability_manager_stub.cpp b/services/abilitymgr/test/unittest/phone/ability_manager_test/system_ability_manager_stub.cpp index b25c1656f93..5e000cad0c1 100644 --- a/services/abilitymgr/test/unittest/phone/ability_manager_test/system_ability_manager_stub.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_manager_test/system_ability_manager_stub.cpp @@ -152,10 +152,4 @@ bool SystemAbilityManagerStub::CanRequest() { return true; } - -// bool SystemAbilityManagerStub::IsTrustedHap(int32_t callingUid) -// { -// return true; -// } - } // namespace OHOS diff --git a/services/abilitymgr/test/unittest/phone/ability_record_test/ability_record_test.cpp b/services/abilitymgr/test/unittest/phone/ability_record_test/ability_record_test.cpp index 300ba371309..23ca762c114 100755 --- a/services/abilitymgr/test/unittest/phone/ability_record_test/ability_record_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_record_test/ability_record_test.cpp @@ -40,9 +40,9 @@ public: void SetUp(); void TearDown(); - std::shared_ptr abilityRecord_; - std::shared_ptr abilityResult_; - std::shared_ptr abilityRequest_; + std::shared_ptr abilityRecord_{nullptr}; + std::shared_ptr abilityResult_{nullptr}; + std::shared_ptr abilityRequest_{nullptr}; static constexpr unsigned int CHANGE_CONFIG_LOCALE = 0x00000001; }; diff --git a/services/abilitymgr/test/unittest/phone/ability_scheduler_proxy_test/ability_scheduler_proxy_test.cpp b/services/abilitymgr/test/unittest/phone/ability_scheduler_proxy_test/ability_scheduler_proxy_test.cpp index da78abb998e..04e9596b97a 100644 --- a/services/abilitymgr/test/unittest/phone/ability_scheduler_proxy_test/ability_scheduler_proxy_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_scheduler_proxy_test/ability_scheduler_proxy_test.cpp @@ -30,9 +30,9 @@ public: void SetUp(); void TearDown(); - sptr abilitySchedulerProxy_; - sptr mock_; - sptr abilitySchedulerRecipient_; + sptr abilitySchedulerProxy_{nullptr}; + sptr mock_{nullptr}; + sptr abilitySchedulerRecipient_{nullptr}; }; void AbilitySchedulerProxyTest::SetUpTestCase(void) diff --git a/services/abilitymgr/test/unittest/phone/ability_scheduler_stub_test/ability_schedule_stub_mock.h b/services/abilitymgr/test/unittest/phone/ability_scheduler_stub_test/ability_schedule_stub_mock.h index b6c198d8fd3..d0c99fd441b 100644 --- a/services/abilitymgr/test/unittest/phone/ability_scheduler_stub_test/ability_schedule_stub_mock.h +++ b/services/abilitymgr/test/unittest/phone/ability_scheduler_stub_test/ability_schedule_stub_mock.h @@ -19,7 +19,6 @@ namespace OHOS { namespace AAFwk { - class AbilitySchedulerStubMock : public AbilitySchedulerStub { public: virtual void ScheduleAbilityTransaction(const Want &want, const LifeCycleStateInfo &targetState) override @@ -131,7 +130,6 @@ public: return std::vector>(); } }; - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/test/unittest/phone/ability_scheduler_stub_test/ability_scheduler_stub_test.cpp b/services/abilitymgr/test/unittest/phone/ability_scheduler_stub_test/ability_scheduler_stub_test.cpp index a2b32a8a191..cf9aeff4d07 100644 --- a/services/abilitymgr/test/unittest/phone/ability_scheduler_stub_test/ability_scheduler_stub_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_scheduler_stub_test/ability_scheduler_stub_test.cpp @@ -27,7 +27,7 @@ public: void SetUp(); void TearDown(); void WriteInterfaceToken(MessageParcel &data); - sptr stub_; + sptr stub_{nullptr}; }; void AbilitySchedulerStubTest::SetUpTestCase(void) diff --git a/services/abilitymgr/test/unittest/phone/ability_service_start_test/ability_service_start_test.cpp b/services/abilitymgr/test/unittest/phone/ability_service_start_test/ability_service_start_test.cpp index 1048626068c..47f344f1f21 100644 --- a/services/abilitymgr/test/unittest/phone/ability_service_start_test/ability_service_start_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_service_start_test/ability_service_start_test.cpp @@ -36,7 +36,7 @@ public: void TearDown(); public: - std::shared_ptr aams_; + std::shared_ptr aams_{nullptr}; }; void AbilityServiceStartTest::SetUpTestCase() diff --git a/services/abilitymgr/test/unittest/phone/ability_stack_manager_test/ability_stack_manager_test.cpp b/services/abilitymgr/test/unittest/phone/ability_stack_manager_test/ability_stack_manager_test.cpp index fcfdadaf945..d3dcadada51 100644 --- a/services/abilitymgr/test/unittest/phone/ability_stack_manager_test/ability_stack_manager_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_stack_manager_test/ability_stack_manager_test.cpp @@ -36,7 +36,6 @@ using namespace testing::ext; using namespace OHOS::AppExecFwk; namespace OHOS { namespace AAFwk { - namespace { const std::string LANGUAGE = "locale"; const std::string LAYOUT = "layout"; @@ -58,16 +57,16 @@ public: void makeScene(const std::string &abilityName, const std::string &bundleName, AbilityInfo &abilityInfo, Want &want); - std::shared_ptr stackManager_; - AbilityRequest launcherAbilityRequest_; - AbilityRequest musicAbilityRequest_; - AbilityRequest musicTopAbilityRequest_; - AbilityRequest musicSAbilityRequest_; - AbilityRequest radioAbilityRequest_; - AbilityRequest radioTopAbilityRequest_; - Want want_; - AbilityInfo abilityInfo_; - ApplicationInfo appInfo_; + std::shared_ptr stackManager_{nullptr}; + AbilityRequest launcherAbilityRequest_{}; + AbilityRequest musicAbilityRequest_{}; + AbilityRequest musicTopAbilityRequest_{}; + AbilityRequest musicSAbilityRequest_{}; + AbilityRequest radioAbilityRequest_{}; + AbilityRequest radioTopAbilityRequest_{}; + Want want_{}; + AbilityInfo abilityInfo_{}; + ApplicationInfo appInfo_{}; }; void AbilityStackManagerTest::SetUpTestCase(void) @@ -80,7 +79,6 @@ void AbilityStackManagerTest::TearDownTestCase(void) OHOS::DelayedSingleton::DestroyInstance(); } - void AbilityStackManagerTest::SetUp() { init(); @@ -1428,15 +1426,6 @@ HWTEST_F(AbilityStackManagerTest, ability_stack_manager_operating_041, TestSize. auto thirdTopAbility = stackManager_->GetCurrentTopAbility(); thirdTopAbility->SetAbilityState(OHOS::AAFwk::ACTIVE); auto mission = thirdTopAbility->GetMissionRecord(); - - // stackManager_->KillProcess("com.ix.hiMusic"); - // // process died - // stackManager_->OnAbilityDied(secondTopAbility); - // stackManager_->OnAbilityDied(thirdTopAbility); - // auto topAbility = stackManager_->GetCurrentTopAbility(); - // EXPECT_EQ("MusicAbility", topAbility->GetAbilityInfo().name); - // auto size = stackManager_->defaultMissionStack_->GetMissionRecordCount(); - // EXPECT_EQ(size, 1); } /* @@ -1776,10 +1765,6 @@ HWTEST_F(AbilityStackManagerTest, ability_stack_manager_operating_049, TestSize. } result = stackManager_->PowerOn(); EXPECT_EQ(ERR_OK, result); - - // mocke app clent - // EXPECT_EQ(OHOS::AAFwk::ACTIVATING, firstTopAbility->GetAbilityState()); - // EXPECT_EQ(OHOS::AAFwk::ACTIVATING, thirdTopAbility->GetAbilityState()); EXPECT_EQ(OHOS::AAFwk::INACTIVATING, fourthTopAbility->GetAbilityState()); } @@ -2782,7 +2767,6 @@ HWTEST_F(AbilityStackManagerTest, ability_stack_manager_operating_076, TestSize. auto ref = stackManager_->MinimizeMultiWindow(topMissionRecord2->GetMissionRecordId()); EXPECT_EQ(0, ref); - // stact = stackManager_->GetCurrentMissionStack(); EXPECT_TRUE(stact); EXPECT_EQ(stact->GetMissionStackId(), LAUNCHER_MISSION_STACK_ID); @@ -3170,6 +3154,5 @@ HWTEST_F(AbilityStackManagerTest, ability_stack_manager_operating_086, TestSize. EXPECT_TRUE(abilityRecord); abilityRecord->SetAbilityState(AbilityState::ACTIVE); } - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/test/unittest/phone/ability_token_proxy_test/ability_token_proxy_test.cpp b/services/abilitymgr/test/unittest/phone/ability_token_proxy_test/ability_token_proxy_test.cpp index 7b698305350..e39762d4eeb 100644 --- a/services/abilitymgr/test/unittest/phone/ability_token_proxy_test/ability_token_proxy_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_token_proxy_test/ability_token_proxy_test.cpp @@ -26,7 +26,7 @@ public: void SetUp(); void TearDown(); - OHOS::sptr abilityTokenProxy_; + OHOS::sptr abilityTokenProxy_ = nullptr; OHOS::sptr impl = nullptr; }; diff --git a/services/abilitymgr/test/unittest/phone/ability_token_stub_test/ability_token_stub_test.cpp b/services/abilitymgr/test/unittest/phone/ability_token_stub_test/ability_token_stub_test.cpp index affab9d90d9..210639c8ef9 100644 --- a/services/abilitymgr/test/unittest/phone/ability_token_stub_test/ability_token_stub_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_token_stub_test/ability_token_stub_test.cpp @@ -26,8 +26,8 @@ public: void SetUp(); void TearDown(); - OHOS::sptr abilityTokenStub_; - OHOS::sptr abilityTokenRecipient_; + OHOS::sptr abilityTokenStub_{nullptr}; + OHOS::sptr abilityTokenRecipient_{nullptr}; }; void AbilityTokenStubTest::SetUpTestCase(void) diff --git a/services/abilitymgr/test/unittest/phone/ability_with_applications_test/ability_with_applications_test.cpp b/services/abilitymgr/test/unittest/phone/ability_with_applications_test/ability_with_applications_test.cpp index 935fbb0f7c4..fd4929cded3 100755 --- a/services/abilitymgr/test/unittest/phone/ability_with_applications_test/ability_with_applications_test.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_with_applications_test/ability_with_applications_test.cpp @@ -75,7 +75,7 @@ public: public: static constexpr int TEST_WAIT_TIME = 100000; - std::shared_ptr abilityMs_; + std::shared_ptr abilityMs_{nullptr}; }; void AbilityWithApplicationsTest::SetUpTestCase() diff --git a/services/abilitymgr/test/unittest/phone/ability_with_applications_test/mock_ability_scheduler.cpp b/services/abilitymgr/test/unittest/phone/ability_with_applications_test/mock_ability_scheduler.cpp index 1ac45c43fad..3a6cbc8b1d3 100644 --- a/services/abilitymgr/test/unittest/phone/ability_with_applications_test/mock_ability_scheduler.cpp +++ b/services/abilitymgr/test/unittest/phone/ability_with_applications_test/mock_ability_scheduler.cpp @@ -19,7 +19,6 @@ namespace OHOS { namespace AAFwk { - AbilityScheduler::AbilityScheduler() {} @@ -71,7 +70,8 @@ int AbilityScheduler::Insert(const Uri &uri, const NativeRdb::ValuesBucket &valu return -1; } -int AbilityScheduler::Update(const Uri &uri, const NativeRdb::ValuesBucket &value, const NativeRdb::DataAbilityPredicates &predicates) +int AbilityScheduler::Update( + const Uri &uri, const NativeRdb::ValuesBucket &value, const NativeRdb::DataAbilityPredicates &predicates) { return -1; } @@ -121,9 +121,5 @@ Uri AbilityScheduler::DenormalizeUri(const Uri &uri) void AbilityScheduler::NotifyMultiWinModeChanged(int32_t winModeKey, bool flag) {} - -// void AbilityScheduler::NotifyTopActiveAbilityChanged(bool flag) -// {} - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/services/abilitymgr/test/unittest/phone/abilityms_appms_test/abilityms_appms_test.cpp b/services/abilitymgr/test/unittest/phone/abilityms_appms_test/abilityms_appms_test.cpp index 49f5eb4703f..240a2899780 100644 --- a/services/abilitymgr/test/unittest/phone/abilityms_appms_test/abilityms_appms_test.cpp +++ b/services/abilitymgr/test/unittest/phone/abilityms_appms_test/abilityms_appms_test.cpp @@ -85,8 +85,8 @@ public: void startAbility(); public: - std::shared_ptr abilityRecord_; - std::shared_ptr callback_; + std::shared_ptr abilityRecord_{nullptr}; + std::shared_ptr callback_{nullptr}; }; void AbilityMsAppmsTest::SetUpTestCase(void) diff --git a/services/abilitymgr/test/unittest/phone/app_scheduler_test/app_state_call_back_mock.h b/services/abilitymgr/test/unittest/phone/app_scheduler_test/app_state_call_back_mock.h index 1a4a2a8f23a..e7a9d03f0d5 100644 --- a/services/abilitymgr/test/unittest/phone/app_scheduler_test/app_state_call_back_mock.h +++ b/services/abilitymgr/test/unittest/phone/app_scheduler_test/app_state_call_back_mock.h @@ -23,7 +23,6 @@ namespace OHOS { namespace AAFwk { - class AppStateCallbackMock : public AppStateCallback { public: AppStateCallbackMock() @@ -33,7 +32,6 @@ public: MOCK_METHOD2(OnAbilityRequestDone, void(const sptr &, const int32_t)); MOCK_METHOD1(OnAppStateChanged, void(const AppInfo &info)); }; - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/test/unittest/phone/connection_record_test/connection_record_test.cpp b/services/abilitymgr/test/unittest/phone/connection_record_test/connection_record_test.cpp index bfd047a448b..651571799fe 100644 --- a/services/abilitymgr/test/unittest/phone/connection_record_test/connection_record_test.cpp +++ b/services/abilitymgr/test/unittest/phone/connection_record_test/connection_record_test.cpp @@ -55,9 +55,9 @@ public: AbilityRequest GenerateAbilityRequest(const std::string &deviceName, const std::string &abilityName, const std::string &appName, const std::string &bundleName); - std::shared_ptr connectionRecord_; - OHOS::sptr callback_; - std::shared_ptr service_; + std::shared_ptr connectionRecord_{nullptr}; + OHOS::sptr callback_{nullptr}; + std::shared_ptr service_{nullptr}; }; AbilityRequest ConnectionRecordTest::GenerateAbilityRequest(const std::string &deviceName, diff --git a/services/abilitymgr/test/unittest/phone/data_ability_manager_test/data_ability_manager_test.cpp b/services/abilitymgr/test/unittest/phone/data_ability_manager_test/data_ability_manager_test.cpp index b13525ccfea..3c5df9c1758 100644 --- a/services/abilitymgr/test/unittest/phone/data_ability_manager_test/data_ability_manager_test.cpp +++ b/services/abilitymgr/test/unittest/phone/data_ability_manager_test/data_ability_manager_test.cpp @@ -41,10 +41,10 @@ public: void TearDown(); protected: - sptr abilitySchedulerMock_; - AbilityRequest abilityRequest_; - std::shared_ptr abilityRecordClient_; - OHOS::AAFwk::AbilityState abilityState_; + sptr abilitySchedulerMock_{nullptr}; + AbilityRequest abilityRequest_{}; + std::shared_ptr abilityRecordClient_{nullptr}; + OHOS::AAFwk::AbilityState abilityState_{}; }; void DataAbilityManagerTest::SetUpTestCase(void) diff --git a/services/abilitymgr/test/unittest/phone/data_ability_record_test/data_ability_record_test.cpp b/services/abilitymgr/test/unittest/phone/data_ability_record_test/data_ability_record_test.cpp index cd89b069531..cfb98498785 100644 --- a/services/abilitymgr/test/unittest/phone/data_ability_record_test/data_ability_record_test.cpp +++ b/services/abilitymgr/test/unittest/phone/data_ability_record_test/data_ability_record_test.cpp @@ -39,9 +39,9 @@ public: void TearDown(); protected: - sptr abilitySchedulerMock_; + sptr abilitySchedulerMock_{nullptr}; AbilityRequest abilityRequest_; - std::shared_ptr abilityRecord_; + std::shared_ptr abilityRecord_{nullptr}; OHOS::AAFwk::AbilityState abilityState_; }; diff --git a/services/abilitymgr/test/unittest/phone/info_test/info_test.cpp b/services/abilitymgr/test/unittest/phone/info_test/info_test.cpp index ba19c80e324..e8cfb14080c 100755 --- a/services/abilitymgr/test/unittest/phone/info_test/info_test.cpp +++ b/services/abilitymgr/test/unittest/phone/info_test/info_test.cpp @@ -32,16 +32,16 @@ public: void SetUp(); void TearDown(); - StackInfo Stackinfo_; - MissionStackInfo missionStackInfo_; - MissionRecordInfo missionRecordInfo_; - AbilityRecordInfo abilityRecordInfo_; - LifeCycleStateInfo lifeCycleStateInfo_; - ImageInfo imageInfo_; - ImageHeader imageHeader_; - MissionSnapshotInfo missionSnapshotInfo_; - MissionDescriptionInfo missionDescriptionInfo_; - AbilityMissionInfo recentMissionInfo_; + StackInfo Stackinfo_{}; + MissionStackInfo missionStackInfo_{}; + MissionRecordInfo missionRecordInfo_{}; + AbilityRecordInfo abilityRecordInfo_{}; + LifeCycleStateInfo lifeCycleStateInfo_{}; + ImageInfo imageInfo_{}; + ImageHeader imageHeader_{}; + MissionSnapshotInfo missionSnapshotInfo_{}; + MissionDescriptionInfo missionDescriptionInfo_{}; + AbilityMissionInfo recentMissionInfo_{}; }; void InfoTest::SetUpTestCase(void) @@ -270,6 +270,7 @@ HWTEST_F(InfoTest, stack_info_oprator_008, TestSize.Level0) Parcel parcel; missionDescriptionInfo_.Marshalling(parcel); MissionDescriptionInfo *obj = missionDescriptionInfo_.Unmarshalling(parcel); + EXPECT_NE(obj, nullptr); if (!obj) { return; } diff --git a/services/abilitymgr/test/unittest/phone/kernal_system_app_manager_test/kernal_system_app_manager_test.cpp b/services/abilitymgr/test/unittest/phone/kernal_system_app_manager_test/kernal_system_app_manager_test.cpp index 16580cb0a99..c30be1259cb 100755 --- a/services/abilitymgr/test/unittest/phone/kernal_system_app_manager_test/kernal_system_app_manager_test.cpp +++ b/services/abilitymgr/test/unittest/phone/kernal_system_app_manager_test/kernal_system_app_manager_test.cpp @@ -62,17 +62,18 @@ public: void StartSystemUI(); public: - std::shared_ptr kernalSystemMgr_; + std::shared_ptr kernalSystemMgr_{nullptr}; int usrId_ = 10; - Want want_; - AppExecFwk::AbilityInfo abilityInfo_; - AppExecFwk::ApplicationInfo appInfo_; + Want want_{}; + AppExecFwk::AbilityInfo abilityInfo_{}; + AppExecFwk::ApplicationInfo appInfo_{}; }; void KernalSystemAppManagerTest::SetUpTestCase() -{ +{ + int systemAbilityId = 401; OHOS::DelayedSingleton::GetInstance()->RegisterSystemAbility( - 401, new (std::nothrow) AppExecFwk::BundleMgrService()); + systemAbilityId, new (std::nothrow) AppExecFwk::BundleMgrService()); DelayedSingleton::GetInstance(); DelayedSingleton::GetInstance()->OnStart(); } diff --git a/services/abilitymgr/test/unittest/phone/lifecycle_deal_test/lifecycle_deal_test.cpp b/services/abilitymgr/test/unittest/phone/lifecycle_deal_test/lifecycle_deal_test.cpp index 11cbd8e557c..7164e0e4e98 100644 --- a/services/abilitymgr/test/unittest/phone/lifecycle_deal_test/lifecycle_deal_test.cpp +++ b/services/abilitymgr/test/unittest/phone/lifecycle_deal_test/lifecycle_deal_test.cpp @@ -29,8 +29,8 @@ public: void SetUp(); void TearDown(); - std::shared_ptr lifecycleDeal_; - sptr abilityScheduler_; + std::shared_ptr lifecycleDeal_{nullptr}; + sptr abilityScheduler_{nullptr}; }; void LifecycleDealTest::SetUpTestCase(void) diff --git a/services/abilitymgr/test/unittest/phone/lifecycle_test/lifecycle_test.cpp b/services/abilitymgr/test/unittest/phone/lifecycle_test/lifecycle_test.cpp index efb317b8e79..3b0875dfc5e 100755 --- a/services/abilitymgr/test/unittest/phone/lifecycle_test/lifecycle_test.cpp +++ b/services/abilitymgr/test/unittest/phone/lifecycle_test/lifecycle_test.cpp @@ -79,14 +79,14 @@ public: public: int startLancherFlag_ = false; - std::shared_ptr aams_; - std::shared_ptr launcherAbilityRecord_; // launcher ability - OHOS::sptr launcherToken_; // token of launcher ability - std::shared_ptr nextAbilityRecord_; // ability being launched - OHOS::sptr nextToken_; // token of ability being launched - OHOS::sptr launcherScheduler_; // launcher ability thread interface - OHOS::sptr nextScheduler_; // next ability thread interface - std::unique_ptr command_; // test command_ interact with ams_ + std::shared_ptr aams_{nullptr}; + std::shared_ptr launcherAbilityRecord_{nullptr}; // launcher ability + OHOS::sptr launcherToken_{nullptr}; // token of launcher ability + std::shared_ptr nextAbilityRecord_{nullptr}; // ability being launched + OHOS::sptr nextToken_{nullptr}; // token of ability being launched + OHOS::sptr launcherScheduler_{nullptr}; // launcher ability thread interface + OHOS::sptr nextScheduler_{nullptr}; // next ability thread interface + std::unique_ptr command_{nullptr}; // test command_ interact with ams_ }; void LifecycleTest::SetUpTestCase(void) diff --git a/services/abilitymgr/test/unittest/phone/lifecycle_test/lifecycle_test_base.h b/services/abilitymgr/test/unittest/phone/lifecycle_test/lifecycle_test_base.h index 08d644c3cd3..68f2f742027 100644 --- a/services/abilitymgr/test/unittest/phone/lifecycle_test/lifecycle_test_base.h +++ b/services/abilitymgr/test/unittest/phone/lifecycle_test/lifecycle_test_base.h @@ -71,7 +71,6 @@ public: if (c->callback_) { if (c->abnormalState_ != OHOS::AAFwk::AbilityState::INITIAL) { c->state_ = c->abnormalState_; - ; } else { c->state_ = c->expectState_; } diff --git a/services/abilitymgr/test/unittest/phone/mission_record_test/mission_record_test.cpp b/services/abilitymgr/test/unittest/phone/mission_record_test/mission_record_test.cpp index 1e73f5619a3..4a51b68f85d 100644 --- a/services/abilitymgr/test/unittest/phone/mission_record_test/mission_record_test.cpp +++ b/services/abilitymgr/test/unittest/phone/mission_record_test/mission_record_test.cpp @@ -35,9 +35,9 @@ public: static AbilityRequest GenerateAbilityRequest(const std::string &deviceName, const std::string &abilityName, const std::string &appName, const std::string &bundleName); - Want want_; - AbilityInfo abilityInfo_; - ApplicationInfo appInfo_; + Want want_{}; + AbilityInfo abilityInfo_{}; + ApplicationInfo appInfo_{}; }; void MissionRecordTest::SetUpTestCase(void) diff --git a/services/abilitymgr/test/unittest/phone/mission_stack_test/mission_stack_test.cpp b/services/abilitymgr/test/unittest/phone/mission_stack_test/mission_stack_test.cpp index 0c45e681334..ce73db676ab 100644 --- a/services/abilitymgr/test/unittest/phone/mission_stack_test/mission_stack_test.cpp +++ b/services/abilitymgr/test/unittest/phone/mission_stack_test/mission_stack_test.cpp @@ -37,7 +37,7 @@ public: void SetUp(); void TearDown(); - std::shared_ptr missionStack_; + std::shared_ptr missionStack_{nullptr}; }; void MissionStackTest::SetUpTestCase(void) diff --git a/services/abilitymgr/test/unittest/phone/pending_want_key_test/pending_want_key_test.cpp b/services/abilitymgr/test/unittest/phone/pending_want_key_test/pending_want_key_test.cpp index 06692d75187..e1c41ccd079 100644 --- a/services/abilitymgr/test/unittest/phone/pending_want_key_test/pending_want_key_test.cpp +++ b/services/abilitymgr/test/unittest/phone/pending_want_key_test/pending_want_key_test.cpp @@ -31,10 +31,9 @@ constexpr int PENDING_WANT_USERID = 123456; using namespace testing::ext; using namespace OHOS::AppExecFwk; - namespace OHOS { namespace AAFwk { -class PendinfWantKeyTest : public testing::Test { +class PendingWantKeyTest : public testing::Test { public: static void SetUpTestCase(void); static void TearDownTestCase(void); @@ -42,13 +41,13 @@ public: void TearDown(); }; -void PendinfWantKeyTest::SetUpTestCase(void) +void PendingWantKeyTest::SetUpTestCase(void) {} -void PendinfWantKeyTest::TearDownTestCase(void) +void PendingWantKeyTest::TearDownTestCase(void) {} -void PendinfWantKeyTest::SetUp(void) +void PendingWantKeyTest::SetUp(void) {} -void PendinfWantKeyTest::TearDown(void) +void PendingWantKeyTest::TearDown(void) {} /* @@ -56,7 +55,7 @@ void PendinfWantKeyTest::TearDown(void) * @tc.name : set type * @tc.desc : Set type, use GetType to verify whether the type value is set successfully */ -HWTEST_F(PendinfWantKeyTest, SetType_0100, TestSize.Level1) +HWTEST_F(PendingWantKeyTest, SetType_0100, TestSize.Level1) { std::unique_ptr amsPendingWantKey = std::make_unique(); @@ -69,7 +68,7 @@ HWTEST_F(PendinfWantKeyTest, SetType_0100, TestSize.Level1) * @tc.name : set BundleName * @tc.desc : Set BundleName, use GetBundleName to verify whether the BundleName is set successfully */ -HWTEST_F(PendinfWantKeyTest, SetBundleName_0100, TestSize.Level1) +HWTEST_F(PendingWantKeyTest, SetBundleName_0100, TestSize.Level1) { std::unique_ptr amsPendingWantKey = std::make_unique(); @@ -82,7 +81,7 @@ HWTEST_F(PendinfWantKeyTest, SetBundleName_0100, TestSize.Level1) * @tc.name : set RequestWho * @tc.desc : Set RequestWho, use GetWho to verify whether the RequestWho is set successfully */ -HWTEST_F(PendinfWantKeyTest, SetRequestWho_0100, TestSize.Level1) +HWTEST_F(PendingWantKeyTest, SetRequestWho_0100, TestSize.Level1) { std::unique_ptr amsPendingWantKey = std::make_unique(); @@ -95,7 +94,7 @@ HWTEST_F(PendinfWantKeyTest, SetRequestWho_0100, TestSize.Level1) * @tc.name : set RequestCode * @tc.desc : Set RequestCode, use GetRequestCode to verify whether the RequestCode is set successfully */ -HWTEST_F(PendinfWantKeyTest, SetRequestCode_0100, TestSize.Level1) +HWTEST_F(PendingWantKeyTest, SetRequestCode_0100, TestSize.Level1) { std::unique_ptr amsPendingWantKey = std::make_unique(); @@ -108,7 +107,7 @@ HWTEST_F(PendinfWantKeyTest, SetRequestCode_0100, TestSize.Level1) * @tc.name : set RequestWant * @tc.desc : Set RequestWant, use GetRequestWant to verify whether the RequestWant is set successfully */ -HWTEST_F(PendinfWantKeyTest, SetRequestWant_0100, TestSize.Level1) +HWTEST_F(PendingWantKeyTest, SetRequestWant_0100, TestSize.Level1) { std::unique_ptr amsPendingWantKey = std::make_unique(); @@ -128,7 +127,7 @@ HWTEST_F(PendinfWantKeyTest, SetRequestWant_0100, TestSize.Level1) * @tc.desc : Set RequestResolvedType, use GetRequestResolvedType to verify whether the RequestResolvedType is * set successfully */ -HWTEST_F(PendinfWantKeyTest, SetRequestResolvedType_0100, TestSize.Level1) +HWTEST_F(PendingWantKeyTest, SetRequestResolvedType_0100, TestSize.Level1) { std::unique_ptr amsPendingWantKey = std::make_unique(); @@ -141,7 +140,7 @@ HWTEST_F(PendinfWantKeyTest, SetRequestResolvedType_0100, TestSize.Level1) * @tc.name : set All WantsInfos * @tc.desc : Set AllWantsInfos, use GetAllWantsInfos to verify whether the AllWantsInfos is set successfully */ -HWTEST_F(PendinfWantKeyTest, SetAllWantsInfos_0100, TestSize.Level1) +HWTEST_F(PendingWantKeyTest, SetAllWantsInfos_0100, TestSize.Level1) { std::unique_ptr amsPendingWantKey = std::make_unique(); @@ -161,7 +160,7 @@ HWTEST_F(PendinfWantKeyTest, SetAllWantsInfos_0100, TestSize.Level1) * @tc.name : set Flags * @tc.desc : Set Flags, use GetFlags to verify whether the Flags is set successfully */ -HWTEST_F(PendinfWantKeyTest, SetFlags_0100, TestSize.Level1) +HWTEST_F(PendingWantKeyTest, SetFlags_0100, TestSize.Level1) { std::unique_ptr amsPendingWantKey = std::make_unique(); @@ -174,7 +173,7 @@ HWTEST_F(PendinfWantKeyTest, SetFlags_0100, TestSize.Level1) * @tc.name : set Code * @tc.desc : Set Code, use GetCode to verify whether the Code is set successfully */ -HWTEST_F(PendinfWantKeyTest, SetCode_0100, TestSize.Level1) +HWTEST_F(PendingWantKeyTest, SetCode_0100, TestSize.Level1) { std::unique_ptr amsPendingWantKey = std::make_unique(); @@ -187,13 +186,12 @@ HWTEST_F(PendinfWantKeyTest, SetCode_0100, TestSize.Level1) * @tc.name : set UserId * @tc.desc : Set UserId, use GetUserId to verify whether the UserId is set successfully */ -HWTEST_F(PendinfWantKeyTest, SetUserId_0100, TestSize.Level1) +HWTEST_F(PendingWantKeyTest, SetUserId_0100, TestSize.Level1) { std::unique_ptr amsPendingWantKey = std::make_unique(); amsPendingWantKey->SetUserId(PENDING_WANT_USERID); EXPECT_EQ(PENDING_WANT_USERID, amsPendingWantKey->GetUserId()); } - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/services/abilitymgr/test/unittest/phone/pending_want_manager_test/pending_want_manager_test.cpp b/services/abilitymgr/test/unittest/phone/pending_want_manager_test/pending_want_manager_test.cpp index ce92e24aeed..aed8de4439c 100644 --- a/services/abilitymgr/test/unittest/phone/pending_want_manager_test/pending_want_manager_test.cpp +++ b/services/abilitymgr/test/unittest/phone/pending_want_manager_test/pending_want_manager_test.cpp @@ -46,7 +46,6 @@ using OHOS::AppExecFwk::ElementName; namespace OHOS { namespace AAFwk { - static void WaitUntilTaskFinished() { const uint32_t maxRetryCount = 1000; @@ -69,7 +68,6 @@ static void WaitUntilTaskFinished() #define SLEEP(milli) std::this_thread::sleep_for(std::chrono::seconds(milli)) namespace {} // namespace - class PendingWantManagerTest : public testing::Test { public: static void SetUpTestCase(); @@ -94,8 +92,8 @@ public: }; public: - std::shared_ptr pendingManager_; - std::shared_ptr abilityMs_; + std::shared_ptr pendingManager_{nullptr}; + std::shared_ptr abilityMs_{nullptr}; }; int PendingWantManagerTest::CancelReceiver::performReceiveCount = 0; @@ -143,7 +141,8 @@ WantSenderInfo PendingWantManagerTest::MakeWantSenderInfo(Want &want, int32_t fl // wantSenderInfo.type is OperationType::START_ABILITY wantSenderInfo.bundleName = "com.ix.hiRadio"; wantSenderInfo.resultWho = "RadioTopAbility"; - wantSenderInfo.requestCode = 10; + int requestCode = 10; + wantSenderInfo.requestCode = requestCode; std::vector allWant; WantsInfo wantInfo; wantInfo.want = want; @@ -872,6 +871,5 @@ HWTEST_F(PendingWantManagerTest, PendingWantManagerTest_3400, TestSize.Level1) std::shared_ptr getWantInfo; EXPECT_EQ(pendingManager_->GetPendingRequestWant(pendingRecord, getWantInfo), ERR_INVALID_VALUE); } - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/test/unittest/phone/pending_want_record_test/pending_want_record_test.cpp b/services/abilitymgr/test/unittest/phone/pending_want_record_test/pending_want_record_test.cpp index c3a45f1a56e..06cdf5d4052 100644 --- a/services/abilitymgr/test/unittest/phone/pending_want_record_test/pending_want_record_test.cpp +++ b/services/abilitymgr/test/unittest/phone/pending_want_record_test/pending_want_record_test.cpp @@ -46,11 +46,9 @@ using OHOS::AppExecFwk::ElementName; namespace OHOS { namespace AAFwk { - #define SLEEP(milli) std::this_thread::sleep_for(std::chrono::seconds(milli)) namespace {} // namespace - class PendingWantRecordTest : public testing::Test { public: static void SetUpTestCase(); @@ -75,8 +73,8 @@ public: }; public: - std::shared_ptr pendingManager_; - std::shared_ptr abilityMs_; + std::shared_ptr pendingManager_{nullptr}; + std::shared_ptr abilityMs_{nullptr}; }; int PendingWantRecordTest::CancelReceiver::performReceiveCount = 0; @@ -121,7 +119,8 @@ WantSenderInfo PendingWantRecordTest::MakeWantSenderInfo(Want &want, int32_t fla // wantSenderInfo.type is OperationType::START_ABILITY wantSenderInfo.bundleName = "com.ix.hiRadio"; wantSenderInfo.resultWho = "RadioTopAbility"; - wantSenderInfo.requestCode = 10; + int requestCode = 10; + wantSenderInfo.requestCode = requestCode; std::vector allWant; WantsInfo wantInfo; wantInfo.want = want; @@ -630,6 +629,5 @@ HWTEST_F(PendingWantRecordTest, PendingWantRecordTest_2100, TestSize.Level1) pendingWantRecord->SenderInner(info); EXPECT_TRUE(info.resolvedType == key->GetRequestResolvedType()); } - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/services/abilitymgr/test/unittest/phone/sender_info_test/sender_info_test.cpp b/services/abilitymgr/test/unittest/phone/sender_info_test/sender_info_test.cpp index 529022c3baa..3d33bb40656 100644 --- a/services/abilitymgr/test/unittest/phone/sender_info_test/sender_info_test.cpp +++ b/services/abilitymgr/test/unittest/phone/sender_info_test/sender_info_test.cpp @@ -29,11 +29,7 @@ using OHOS::AppExecFwk::ElementName; namespace OHOS { namespace AAFwk { - #define SLEEP(milli) std::this_thread::sleep_for(std::chrono::seconds(milli)) - -namespace {} // namespace - class SenderInfoTest : public testing::Test { public: static void SetUpTestCase(); @@ -48,7 +44,6 @@ public: void PerformReceive(const AAFwk::Want &want, int resultCode, const std::string &data, const AAFwk::WantParams &extras, bool serialized, bool sticky, int sendingUser) override; }; - public: }; @@ -91,6 +86,7 @@ HWTEST_F(SenderInfoTest, SenderInfoTest_0100, TestSize.Level1) Parcel parcel; info.Marshalling(parcel); auto unInfo = SenderInfo::Unmarshalling(parcel); + EXPECT_NE(unInfo, nullptr); if (!unInfo) { return; } @@ -103,6 +99,5 @@ HWTEST_F(SenderInfoTest, SenderInfoTest_0100, TestSize.Level1) EXPECT_EQ(unInfo->requiredPermission, "xiaoming"); delete unInfo; } - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/services/abilitymgr/test/unittest/phone/want_receiver_proxy_test/want_receiver_proxy_test.cpp b/services/abilitymgr/test/unittest/phone/want_receiver_proxy_test/want_receiver_proxy_test.cpp index fde4c24ddc4..cba59c4fcad 100644 --- a/services/abilitymgr/test/unittest/phone/want_receiver_proxy_test/want_receiver_proxy_test.cpp +++ b/services/abilitymgr/test/unittest/phone/want_receiver_proxy_test/want_receiver_proxy_test.cpp @@ -13,7 +13,6 @@ * limitations under the License. */ - #define private public #include "want_receiver_proxy.h" #undef private @@ -33,9 +32,8 @@ public: static void TearDownTestCase(void); void SetUp(); void TearDown(); - - std::shared_ptr proxy_; - sptr mock_; + std::shared_ptr proxy_{nullptr}; + sptr mock_{nullptr}; }; void WantReceiverProxyTest::SetUpTestCase(void) @@ -89,6 +87,5 @@ HWTEST_F(WantReceiverProxyTest, WantReceiverProxyTest_002, TestSize.Level0) EXPECT_EQ(IWantReceiver::WANT_RECEIVER_PERFORM_RECEIVE, mock_->code_); } - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/services/abilitymgr/test/unittest/phone/want_receiver_stub_test/want_receiver_stub_impl_mock.h b/services/abilitymgr/test/unittest/phone/want_receiver_stub_test/want_receiver_stub_impl_mock.h index a225b25acef..2c34627230f 100644 --- a/services/abilitymgr/test/unittest/phone/want_receiver_stub_test/want_receiver_stub_impl_mock.h +++ b/services/abilitymgr/test/unittest/phone/want_receiver_stub_test/want_receiver_stub_impl_mock.h @@ -52,7 +52,6 @@ public: virtual void PerformReceive(const Want &want, int resultCode, const std::string &data, const WantParams &extras, bool serialized, bool sticky, int sendingUser){}; }; - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/test/unittest/phone/want_receiver_stub_test/want_receiver_stub_test.cpp b/services/abilitymgr/test/unittest/phone/want_receiver_stub_test/want_receiver_stub_test.cpp index 366c0925c04..850b8cf86df 100644 --- a/services/abilitymgr/test/unittest/phone/want_receiver_stub_test/want_receiver_stub_test.cpp +++ b/services/abilitymgr/test/unittest/phone/want_receiver_stub_test/want_receiver_stub_test.cpp @@ -29,7 +29,7 @@ public: void SetUp(); void TearDown(); void WriteInterfaceToken(MessageParcel &data); - sptr stub_; + sptr stub_{nullptr}; }; void WantReceiverStubTest::SetUpTestCase(void) @@ -204,6 +204,5 @@ HWTEST_F(WantReceiverStubTest, WantReceiverStubTest_PerformReceiveInner_003, Tes EXPECT_EQ(res, NO_ERROR); } - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/services/abilitymgr/test/unittest/phone/want_sender_info_test/want_sender_info_test.cpp b/services/abilitymgr/test/unittest/phone/want_sender_info_test/want_sender_info_test.cpp index 63151c78e96..7e56fd0bc5c 100644 --- a/services/abilitymgr/test/unittest/phone/want_sender_info_test/want_sender_info_test.cpp +++ b/services/abilitymgr/test/unittest/phone/want_sender_info_test/want_sender_info_test.cpp @@ -31,11 +31,8 @@ using OHOS::AppExecFwk::ElementName; namespace OHOS { namespace AAFwk { - #define SLEEP(milli) std::this_thread::sleep_for(std::chrono::seconds(milli)) - namespace {} // namespace - class WantSenderInfoTest : public testing::Test { public: static void SetUpTestCase(); @@ -96,6 +93,7 @@ HWTEST_F(WantSenderInfoTest, WantSenderInfoTest_0100, TestSize.Level1) Parcel parcel; info.Marshalling(parcel); auto unInfo = WantSenderInfo::Unmarshalling(parcel); + EXPECT_NE(unInfo, nullptr); if (!unInfo) { return; } @@ -111,6 +109,5 @@ HWTEST_F(WantSenderInfoTest, WantSenderInfoTest_0100, TestSize.Level1) EXPECT_EQ(unInfo->userId, 99); delete unInfo; } - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/services/abilitymgr/test/unittest/phone/want_sender_proxy_test/want_sender_proxy_test.cpp b/services/abilitymgr/test/unittest/phone/want_sender_proxy_test/want_sender_proxy_test.cpp index b61a8c7ab2e..945b866cdcd 100644 --- a/services/abilitymgr/test/unittest/phone/want_sender_proxy_test/want_sender_proxy_test.cpp +++ b/services/abilitymgr/test/unittest/phone/want_sender_proxy_test/want_sender_proxy_test.cpp @@ -13,7 +13,6 @@ * limitations under the License. */ - #define private public #include "want_sender_proxy.h" #undef private @@ -34,8 +33,8 @@ public: void SetUp(); void TearDown(); - std::shared_ptr proxy_; - sptr mock_; + std::shared_ptr proxy_{nullptr}; + sptr mock_{nullptr}; }; void WantSenderProxyTest::SetUpTestCase(void) @@ -68,6 +67,5 @@ HWTEST_F(WantSenderProxyTest, WantSenderProxyTest_001, TestSize.Level0) EXPECT_EQ(IWantSender::WANT_SENDER_SEND, mock_->code_); } - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/services/abilitymgr/test/unittest/phone/want_sender_stub_test/want_sender_stub_impl_mock.h b/services/abilitymgr/test/unittest/phone/want_sender_stub_test/want_sender_stub_impl_mock.h index 65270748459..2a7a5082121 100644 --- a/services/abilitymgr/test/unittest/phone/want_sender_stub_test/want_sender_stub_impl_mock.h +++ b/services/abilitymgr/test/unittest/phone/want_sender_stub_test/want_sender_stub_impl_mock.h @@ -50,7 +50,6 @@ public: virtual void Send(SenderInfo &senderInfo){}; }; - } // namespace AAFwk } // namespace OHOS diff --git a/services/abilitymgr/test/unittest/phone/want_sender_stub_test/want_sender_stub_test.cpp b/services/abilitymgr/test/unittest/phone/want_sender_stub_test/want_sender_stub_test.cpp index dfd999c37af..aa4310a8f01 100644 --- a/services/abilitymgr/test/unittest/phone/want_sender_stub_test/want_sender_stub_test.cpp +++ b/services/abilitymgr/test/unittest/phone/want_sender_stub_test/want_sender_stub_test.cpp @@ -29,7 +29,7 @@ public: void SetUp(); void TearDown(); void WriteInterfaceToken(MessageParcel &data); - sptr stub_; + sptr stub_{nullptr}; }; void WantSenderStubTest::SetUpTestCase(void) @@ -150,6 +150,5 @@ HWTEST_F(WantSenderStubTest, WantSenderStubTest_SendInner_002, TestSize.Level0) EXPECT_EQ(res, NO_ERROR); } - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/services/abilitymgr/test/unittest/phone/wants_info_test/wants_info_test.cpp b/services/abilitymgr/test/unittest/phone/wants_info_test/wants_info_test.cpp index 93fd02d39db..8069471505f 100644 --- a/services/abilitymgr/test/unittest/phone/wants_info_test/wants_info_test.cpp +++ b/services/abilitymgr/test/unittest/phone/wants_info_test/wants_info_test.cpp @@ -30,12 +30,9 @@ using OHOS::AppExecFwk::ElementName; namespace OHOS { namespace AAFwk { - #define SLEEP(milli) std::this_thread::sleep_for(std::chrono::seconds(milli)) - namespace {} // namespace - -class WantInfoTest : public testing::Test { +class WantsInfoTest : public testing::Test { public: static void SetUpTestCase(); static void TearDownTestCase(); @@ -53,30 +50,30 @@ public: public: }; -void WantInfoTest::CancelReceiver::Send(const int32_t resultCode) +void WantsInfoTest::CancelReceiver::Send(const int32_t resultCode) {} -void WantInfoTest::CancelReceiver::PerformReceive(const AAFwk::Want &want, int resultCode, const std::string &data, +void WantsInfoTest::CancelReceiver::PerformReceive(const AAFwk::Want &want, int resultCode, const std::string &data, const AAFwk::WantParams &extras, bool serialized, bool sticky, int sendingUser) {} -void WantInfoTest::SetUpTestCase() +void WantsInfoTest::SetUpTestCase() {} -void WantInfoTest::TearDownTestCase() +void WantsInfoTest::TearDownTestCase() {} -void WantInfoTest::SetUp() +void WantsInfoTest::SetUp() {} -void WantInfoTest::TearDown() +void WantsInfoTest::TearDown() {} /* - * @tc.number : WantInfoTest_0100 + * @tc.number : WantsInfoTest_0100 * @tc.name : Marshalling/UnMarshalling * @tc.desc : 1.Marshalling/UnMarshalling */ -HWTEST_F(WantInfoTest, WantInfoTest_0100, TestSize.Level1) +HWTEST_F(WantsInfoTest, WantsInfoTest_0100, TestSize.Level1) { WantsInfo info; Want want; @@ -92,6 +89,5 @@ HWTEST_F(WantInfoTest, WantInfoTest_0100, TestSize.Level1) EXPECT_EQ(unInfo->resolvedTypes, "nihao"); delete unInfo; } - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/services/abilitymgr/test/unittest/phone/window_info_test/window_info_test.cpp b/services/abilitymgr/test/unittest/phone/window_info_test/window_info_test.cpp index 5c6ed94ebbd..adc506e05e1 100644 --- a/services/abilitymgr/test/unittest/phone/window_info_test/window_info_test.cpp +++ b/services/abilitymgr/test/unittest/phone/window_info_test/window_info_test.cpp @@ -29,7 +29,7 @@ public: std::shared_ptr get() const; private: - std::shared_ptr windowInfo_; + std::shared_ptr windowInfo_{nullptr}; }; void WindowInfoTest::SetUpTestCase(void) diff --git a/services/test/BUILD.gn b/services/test/BUILD.gn index 24ae7ec09ee..b43f69e222c 100755 --- a/services/test/BUILD.gn +++ b/services/test/BUILD.gn @@ -37,6 +37,7 @@ group("moduletest") { "moduletest/dump_module_test:moduletest", "moduletest/ipc_ability_connect_test:moduletest", "moduletest/ipc_ability_mgr_test:moduletest", + "moduletest/ipc_ability_scheduler_test:moduletest", "moduletest/module_test_dump_util:module_test_dump_util", "moduletest/panding_want_manager_test:moduletest", "//third_party/jsoncpp:jsoncpp", diff --git a/services/test/mock/include/mock_ability_connect_callback.h b/services/test/mock/include/mock_ability_connect_callback.h index 904820e6654..c59848520e7 100644 --- a/services/test/mock/include/mock_ability_connect_callback.h +++ b/services/test/mock/include/mock_ability_connect_callback.h @@ -34,7 +34,6 @@ public: static int onAbilityConnectDoneCount; static int onAbilityDisconnectDoneCount; }; - } // namespace AAFwk } // namespace OHOS diff --git a/services/test/mock/include/mock_ability_connect_callback_stub.h b/services/test/mock/include/mock_ability_connect_callback_stub.h index 832cdd3face..8d973488669 100644 --- a/services/test/mock/include/mock_ability_connect_callback_stub.h +++ b/services/test/mock/include/mock_ability_connect_callback_stub.h @@ -47,7 +47,6 @@ public: private: Semaphore sem_; }; - } // namespace AAFwk } // namespace OHOS diff --git a/services/test/mock/include/mock_ability_manager_proxy.h b/services/test/mock/include/mock_ability_manager_proxy.h index 06eb44be413..934e073c12b 100644 --- a/services/test/mock/include/mock_ability_manager_proxy.h +++ b/services/test/mock/include/mock_ability_manager_proxy.h @@ -23,9 +23,7 @@ namespace OHOS { namespace AAFwk { - class MockAbilityManagerProxy : public IRemoteProxy { - public: explicit MockAbilityManagerProxy(const sptr &impl) : IRemoteProxy(impl) {} @@ -78,12 +76,9 @@ public: MOCK_METHOD0(PowerOff, int()); MOCK_METHOD0(PowerOn, int()); MOCK_METHOD1(GetPendingWantUserId, int(const sptr &target)); - public: int id_; }; - } // namespace AAFwk } // namespace OHOS - #endif // OHOS_AAFWK_ABILITY_MANAGER_PROXY_MOCK_H diff --git a/services/test/mock/include/mock_ability_mgr_service.h b/services/test/mock/include/mock_ability_mgr_service.h index bf07cbcf4f3..64bc8040e07 100644 --- a/services/test/mock/include/mock_ability_mgr_service.h +++ b/services/test/mock/include/mock_ability_mgr_service.h @@ -74,7 +74,6 @@ public: MOCK_METHOD2(RegisterCancelListener, void(const sptr &sender, const sptr &receiver)); MOCK_METHOD2(UnregisterCancelListener, void(const sptr &sender, const sptr &receiver)); MOCK_METHOD2(GetPendingRequestWant, int(const sptr &target, std::shared_ptr &want)); - MOCK_METHOD4(StartAbility, int(const Want &want, const AbilityStartSetting &abilityStartSetting, const sptr &callerToken, int requestCode)); MOCK_METHOD1(MoveMissionToFloatingStack, int(const MissionOption &missionOption)); @@ -102,11 +101,9 @@ public: { sem_.Post(); } - private: Semaphore sem_; }; - } // namespace AAFwk } // namespace OHOS #endif // FOUNDATION_AAFWK_SERVICES_MOCK_ABILITY_MGR_SERVICE_H diff --git a/services/test/mock/include/mock_ability_scheduler.h b/services/test/mock/include/mock_ability_scheduler.h index 176dd01d8c6..f11b898d3d9 100644 --- a/services/test/mock/include/mock_ability_scheduler.h +++ b/services/test/mock/include/mock_ability_scheduler.h @@ -23,7 +23,6 @@ namespace OHOS { namespace AAFwk { - class MockAbilityScheduler : public IAbilityScheduler { public: MOCK_METHOD2(ScheduleAbilityTransaction, void(const Want &want, const LifeCycleStateInfo &targetState)); @@ -38,12 +37,11 @@ public: MOCK_METHOD1(ScheduleNewWant, void(const Want &want)); MOCK_METHOD1(NotifyTopActiveAbilityChanged, void(bool flag)); MOCK_METHOD2(NotifyMultiWinModeChanged, void(int32_t winModeKey, bool flag)); - MOCK_METHOD2(ScheduleRegisterObserver, bool(const Uri &uri, const sptr &dataObserver)); - MOCK_METHOD2(ScheduleUnregisterObserver, bool(const Uri &uri, const sptr &dataObserver)); + MOCK_METHOD2( + ScheduleUnregisterObserver, bool(const Uri &uri, const sptr &dataObserver)); MOCK_METHOD1(ScheduleNotifyChange, bool(const Uri &uri)); MOCK_METHOD1(ExecuteBatch, std::vector>(const std::vector> &operations)); - std::vector GetFileTypes(const Uri &uri, const std::string &mimeTypeFilter) { std::vector types; @@ -108,7 +106,6 @@ public: return urivalue; } }; - } // namespace AAFwk } // namespace OHOS diff --git a/services/test/mock/include/mock_ability_scheduler_stub.h b/services/test/mock/include/mock_ability_scheduler_stub.h index e5b3b358675..d7b0c48f98d 100644 --- a/services/test/mock/include/mock_ability_scheduler_stub.h +++ b/services/test/mock/include/mock_ability_scheduler_stub.h @@ -20,7 +20,6 @@ namespace OHOS { namespace AAFwk { - class MockAbilitySchedulerStub : public AbilitySchedulerStub { public: MOCK_METHOD2(ScheduleAbilityTransaction, void(const Want &, const LifeCycleStateInfo &)); @@ -36,8 +35,8 @@ public: MOCK_METHOD2(Insert, int(const Uri &, const NativeRdb::ValuesBucket &)); MOCK_METHOD3(Update, int(const Uri &, const NativeRdb::ValuesBucket &, const NativeRdb::DataAbilityPredicates &)); MOCK_METHOD2(Delete, int(const Uri &, const NativeRdb::DataAbilityPredicates &)); - MOCK_METHOD3( - Query, std::shared_ptr(const Uri &, std::vector &, const NativeRdb::DataAbilityPredicates &)); + MOCK_METHOD3(Query, std::shared_ptr( + const Uri &, std::vector &, const NativeRdb::DataAbilityPredicates &)); MOCK_METHOD1(GetType, std::string(const Uri &uri)); MOCK_METHOD2(OpenRawFile, int(const Uri &uri, const std::string &mode)); MOCK_METHOD2(Reload, bool(const Uri &uri, const PacMap &extras)); @@ -47,12 +46,12 @@ public: MOCK_METHOD2(NotifyMultiWinModeChanged, void(int32_t winModeKey, bool flag)); MOCK_METHOD1(NotifyTopActiveAbilityChanged, void(bool flag)); MOCK_METHOD2(ScheduleRegisterObserver, bool(const Uri &uri, const sptr &dataObserver)); - MOCK_METHOD2(ScheduleUnregisterObserver, bool(const Uri &uri, const sptr &dataObserver)); + MOCK_METHOD2( + ScheduleUnregisterObserver, bool(const Uri &uri, const sptr &dataObserver)); MOCK_METHOD1(ScheduleNotifyChange, bool(const Uri &uri)); - MOCK_METHOD1(ExecuteBatch, std::vector>(const std::vector> &operations)); + MOCK_METHOD1(ExecuteBatch, std::vector>( + const std::vector> &operations)); }; - } // namespace AAFwk } // namespace OHOS - #endif // FOUNDATION_AAFWK_SERVICES_TEST_MT_MOCK_ABILITY_SCHEDULER_STUB_H diff --git a/services/test/mock/include/mock_app_mgr_client.h b/services/test/mock/include/mock_app_mgr_client.h index ebf7a4dc65f..47aefe463a8 100644 --- a/services/test/mock/include/mock_app_mgr_client.h +++ b/services/test/mock/include/mock_app_mgr_client.h @@ -17,12 +17,10 @@ #define FOUNDATION_AAFWK_SERVICES_TEST_MT_MOCK_APP_MGR_CLIENT_H #include - #include "app_mgr_client.h" namespace OHOS { namespace AppExecFwk { - class MockAppMgrClient : public AppMgrClient { public: MockAppMgrClient(); @@ -41,8 +39,6 @@ public: AppMgrResultCode ConnectAppMgrService() override; AppMgrResultCode RegisterAppStateCallback(const sptr &callback) override; }; - } // namespace AppExecFwk } // namespace OHOS - #endif // FOUNDATION_AAFWK_SERVICES_TEST_MT_MOCK_APP_MGR_CLIENT_H diff --git a/services/test/mock/include/mock_app_scheduler.h b/services/test/mock/include/mock_app_scheduler.h index ac9ad041268..55eafbea34d 100644 --- a/services/test/mock/include/mock_app_scheduler.h +++ b/services/test/mock/include/mock_app_scheduler.h @@ -25,7 +25,6 @@ namespace OHOS { namespace AAFwk { - class MockAppScheduler : public AppScheduler { public: MockAppScheduler(){}; diff --git a/services/test/mock/include/mock_bundle_mgr.h b/services/test/mock/include/mock_bundle_mgr.h index cdbe7e59d54..3f78d8bb03e 100644 --- a/services/test/mock/include/mock_bundle_mgr.h +++ b/services/test/mock/include/mock_bundle_mgr.h @@ -27,7 +27,6 @@ namespace OHOS { namespace AppExecFwk { - namespace { const std::string COM_IX_HIWORLD = "com.ix.hiworld"; const std::string COM_IX_HIMUSIC = "com.ix.hiMusic"; @@ -38,6 +37,8 @@ const std::string COM_IX_HIDATA = "com.ix.hiData"; const std::string COM_IX_PHONE = "com.ix.hiPhone"; const std::string COM_IX_TV = "com.ix.hiTV"; const std::string COM_IX_Film = "com.ix.hiFilm"; +constexpr int32_t MAX_SYS_UID = 2899; +constexpr int32_t ROOT_UID = 0; auto HiWordInfo = [](std::string bundleName, AbilityInfo &abilityInfo, ElementName &elementTemp) { abilityInfo.name = elementTemp.GetAbilityName(); @@ -190,9 +191,7 @@ auto HiFilmInfo = [](std::string bundleName, AbilityInfo &abilityInfo, ElementNa } return true; }; - } // namespace - class BundleMgrProxy : public IRemoteProxy { public: explicit BundleMgrProxy(const sptr &impl) : IRemoteProxy(impl) @@ -205,6 +204,7 @@ public: const std::string &appName, const ApplicationFlag flag, const int userId, ApplicationInfo &appInfo) override; bool GetBundleInfo(const std::string &bundleName, const BundleFlag flag, BundleInfo &bundleInfo) override; + virtual bool CheckIsSystemAppByUid(const int uid) override; MOCK_METHOD3(GetApplicationInfos, bool(const ApplicationFlag flag, const int userId, std::vector &appInfos)); MOCK_METHOD2(GetBundleInfos, bool(const BundleFlag flag, std::vector &bundleInfos)); @@ -212,7 +212,6 @@ public: MOCK_METHOD2(GetBundleNameForUid, bool(const int uid, std::string &bundleName)); MOCK_METHOD2(GetBundleGids, bool(const std::string &bundleName, std::vector &gids)); MOCK_METHOD1(GetAppType, std::string(const std::string &bundleName)); - MOCK_METHOD1(CheckIsSystemAppByUid, bool(const int uid)); MOCK_METHOD2(GetBundleInfosByMetaData, bool(const std::string &metaData, std::vector &bundleInfos)); MOCK_METHOD1(QueryKeepAliveBundleInfos, bool(std::vector &bundleInfos)); MOCK_METHOD2(GetAbilityLabel, std::string(const std::string &bundleName, const std::string &className)); @@ -274,7 +273,6 @@ public: MOCK_METHOD2(GetBundleNameForUid, bool(const int uid, std::string &bundleName)); MOCK_METHOD2(GetBundleGids, bool(const std::string &bundleName, std::vector &gids)); MOCK_METHOD1(GetAppType, std::string(const std::string &bundleName)); - MOCK_METHOD1(CheckIsSystemAppByUid, bool(const int uid)); MOCK_METHOD2(GetBundleInfosByMetaData, bool(const std::string &metaData, std::vector &bundleInfos)); MOCK_METHOD1(QueryKeepAliveBundleInfos, bool(std::vector &bundleInfos)); MOCK_METHOD2(GetAbilityLabel, std::string(const std::string &bundleName, const std::string &className)); @@ -322,7 +320,6 @@ public: MOCK_METHOD2(GetShortcutInfos, bool(const std::string &bundleName, std::vector &shortcutInfos)); MOCK_METHOD2(GetUidByBundleName, int(const std::string &bundleName, const int userId)); MOCK_METHOD2(GetModuleUsageRecords, bool(const int32_t number, std::vector &moduleUsageRecords)); - bool GetBundleInfo(const std::string &bundleName, const BundleFlag flag, BundleInfo &bundleInfo) override; bool QueryAbilityInfo(const AAFwk::Want &want, AbilityInfo &abilityInfo) override; bool QueryAbilityInfos(const Want &want, std::vector &abilityInfos) override @@ -333,6 +330,7 @@ public: const std::string &appName, const ApplicationFlag flag, const int userId, ApplicationInfo &appInfo) override; bool NotifyActivityLifeStatus( const std::string &bundleName, const std::string &abilityName, const int64_t launchTime) override; + virtual bool CheckIsSystemAppByUid(const int uid) override; BundleMgrService() { abilityInfoMap_.emplace(COM_IX_HIWORLD, HiWordInfo); @@ -356,7 +354,6 @@ public: std::function; std::map abilityInfoMap_; }; - } // namespace AppExecFwk } // namespace OHOS diff --git a/services/test/mock/include/mock_compled_callback.h b/services/test/mock/include/mock_compled_callback.h index 5f1e440fbd1..803a3c83d56 100644 --- a/services/test/mock/include/mock_compled_callback.h +++ b/services/test/mock/include/mock_compled_callback.h @@ -20,14 +20,10 @@ #include "completed_callback.h" namespace OHOS::Notification::WantAgent { -class MockCompletedCallback : public CompletedCallback{ +class MockCompletedCallback : public CompletedCallback { public: MOCK_METHOD4(OnSendFinished, void(const AAFwk::Want &want, int resultCode, const std::string &resultData, - const AAFwk::WantParams &resultExtras)); + const AAFwk::WantParams &resultExtras)); }; - - - - } // namespace OHOS::Notification::WantAgent #endif \ No newline at end of file diff --git a/services/test/mock/include/mock_context.h b/services/test/mock/include/mock_context.h index db70ddd6c3b..9ccf7227c5e 100644 --- a/services/test/mock/include/mock_context.h +++ b/services/test/mock/include/mock_context.h @@ -19,17 +19,15 @@ #include "context.h" #include "gmock/gmock.h" - class MockContext { public: MockContext() = default; virtual ~MockContext() = default; - MOCK_METHOD0(GetProcessInfo, std::shared_ptr()); MOCK_METHOD0(GetApplicationInfo, std::shared_ptr()); MOCK_METHOD0(GetApplicationContext, std::shared_ptr()); MOCK_METHOD0(GetBundleCodePath, std::string()); - MOCK_METHOD0(GetAbilityInfo, std::shared_ptr()); + MOCK_METHOD0(GetAbilityInfo, std::shared_ptr()); MOCK_METHOD0(GetContext, std::shared_ptr()); MOCK_METHOD0(GetBundleManager, sptr()); MOCK_METHOD0(GetResourceManager, std::shared_ptr()); @@ -37,164 +35,64 @@ public: MOCK_METHOD1(StopAbility, bool(const AAFwk::Want &want)); MOCK_METHOD0(GetCacheDir, std::string ()); - - - virtual std::string GetCodeCacheDir() = 0; - virtual std::string GetDatabaseDir() = 0; - - virtual std::string GetDataDir() = 0; - - virtual std::string GetDir(const std::string &name, int mode) = 0; - - virtual std::string GetExternalCacheDir() = 0; - - virtual std::string GetExternalFilesDir(std::string &type) = 0; - virtual std::string GetFilesDir() = 0; - - virtual std::string GetNoBackupFilesDir() = 0; - - virtual int VerifyCallingPermission(const std::string &permission) = 0; - - virtual int VerifySelfPermission(const std::string &permission) = 0; - - virtual std::string GetBundleName() = 0; - virtual std::string GetBundleResourcePath() = 0; - - virtual void StartAbility(const AAFwk::Want &want, int requestCode) = 0; - - virtual void UnauthUriPermission(const std::string &permission, const Uri &uri, int uid) = 0; - - virtual sptr GetAbilityManager() = 0; - - virtual std::string GetAppType() = 0; - virtual void TerminateAbility(int requestCode) = 0; - - virtual void TerminateAbility() = 0; - - virtual bool CanRequestPermission(const std::string &permission) = 0; - - virtual int VerifyCallingOrSelfPermission(const std::string &permission) = 0; - - virtual int VerifyPermission(const std::string &permission, int pid, int uid) = 0; - - virtual std::string GetDistributedDir() = 0; - virtual void SetPattern(int patternId) = 0; - virtual std::shared_ptr GetAbilityPackageContext() = 0; - - virtual std::shared_ptr GetHapModuleInfo() = 0; - - virtual std::string GetProcessName() = 0; - - virtual std::string GetCallingBundle() = 0; - - virtual void RequestPermissionsFromUser(std::vector &permissions, int requestCode) = 0; - - virtual void StartAbility(const Want &want, int requestCode, const AbilityStartSetting &abilityStartSetting) = 0; - - virtual bool ConnectAbility(const Want &want, const sptr &conn) = 0; - - virtual void DisconnectAbility(const sptr &conn) = 0; - virtual Uri GetCaller() = 0; - - virtual std::string GetString(int resId) = 0; - - virtual std::vector GetStringArray(int resId) = 0; - - virtual std::vector GetIntArray(int resId) = 0; - - virtual std::map GetTheme() = 0; - virtual void SetTheme(int themeId) = 0; - - virtual std::map GetPattern() = 0; - - virtual int GetColor(int resId) = 0; - virtual int GetThemeId() = 0; - virtual bool TerminateAbilityResult(int startId) = 0; - - virtual int GetDisplayOrientation() = 0; - - virtual std::string GetPreferencesDir() = 0; - - virtual void SetColorMode(int mode) = 0; - - virtual int GetColorMode() = 0; - - virtual int GetMissionId() = 0; - - virtual void TerminateAndRemoveMission() = 0; - - virtual void StartAbilities(const std::vector &wants) = 0; - virtual bool IsFirstInMission() = 0; - - virtual std::shared_ptr GetUITaskDispatcher() = 0; - - virtual std::shared_ptr GetMainTaskDispatcher() = 0; - - virtual std::shared_ptr CreateParallelTaskDispatcher( const std::string &name, const TaskPriority &priority) = 0; - - virtual std::shared_ptr CreateSerialTaskDispatcher( const std::string &name, const TaskPriority &priority) = 0; - - virtual std::shared_ptr GetGlobalTaskDispatcher(const TaskPriority &priority) = 0; - friend DataAbilityHelper; friend ContinuationConnector; - protected: virtual sptr GetToken() = 0; }; diff --git a/services/test/mock/include/mock_want_receiver.h b/services/test/mock/include/mock_want_receiver.h index 1f8b79f9817..17b528b56b4 100644 --- a/services/test/mock/include/mock_want_receiver.h +++ b/services/test/mock/include/mock_want_receiver.h @@ -17,22 +17,19 @@ #include "cancel_listener.h" #include "gmock/gmock.h" -// using namespace OHOS::Notification::WantAgent; namespace OHOS { namespace AAFwk { - class MockWantReceiver : public IWantReceiver { public: MOCK_METHOD1(Send, void(const int32_t resultCode)); MOCK_METHOD0(AsObject, sptr()); MOCK_METHOD7(PerformReceive, void(const Want &want, int resultCode, const std::string &data, - const WantParams &extras, bool serialized, bool sticky, int sendingUser)); + const WantParams &extras, bool serialized, bool sticky, int sendingUser)); }; -class MockCancelListener : public Notification::WantAgent::CancelListener{ +class MockCancelListener : public Notification::WantAgent::CancelListener { public: MOCK_METHOD1(OnCancelled, void(int resultCode)); }; - } // namespace AAFwk } // namespace OHOS diff --git a/services/test/mock/include/system_ability.h b/services/test/mock/include/system_ability.h index 2c34fce7a8e..585e22b8805 100644 --- a/services/test/mock/include/system_ability.h +++ b/services/test/mock/include/system_ability.h @@ -22,7 +22,6 @@ namespace OHOS { #define REGISTER_SYSTEM_ABILITY_BY_ID(a, b, c) #define REGISTER_SYSTEM_ABILITY(abilityClassName, abilityId, runOnCreate) #define DECLEAR_SYSTEM_ABILITY(className) - static constexpr HiviewDFX::HiLogLabel LABEL = {LOG_CORE, 0xD001100, "MockSystemAbility"}; class SystemAbility { diff --git a/services/test/mock/src/mock_bundle_mgr.cpp b/services/test/mock/src/mock_bundle_mgr.cpp index 16907c1ab76..d2c836dc9f3 100755 --- a/services/test/mock/src/mock_bundle_mgr.cpp +++ b/services/test/mock/src/mock_bundle_mgr.cpp @@ -161,5 +161,14 @@ bool BundleMgrService::NotifyActivityLifeStatus( return true; } +bool BundleMgrService::CheckIsSystemAppByUid(const int uid) +{ + int maxSysUid{MAX_SYS_UID}; + int baseSysUid{ROOT_UID}; + if (uid >= baseSysUid && uid <= maxSysUid) { + return true; + } + return false; +} } // namespace AppExecFwk } // namespace OHOS diff --git a/services/test/moduletest/ability_mgr_service_test/ability_mgr_module_test.cpp b/services/test/moduletest/ability_mgr_service_test/ability_mgr_module_test.cpp index ca01102c0fc..1a263430d8c 100644 --- a/services/test/moduletest/ability_mgr_service_test/ability_mgr_module_test.cpp +++ b/services/test/moduletest/ability_mgr_service_test/ability_mgr_module_test.cpp @@ -80,9 +80,9 @@ public: std::shared_ptr GetTopAbility(); void ClearStack(); - inline static std::shared_ptr mockAppMgrClient_; - inline static std::shared_ptr abilityMgrServ_; - sptr scheduler_; + inline static std::shared_ptr mockAppMgrClient_{nullptr}; + inline static std::shared_ptr abilityMgrServ_{nullptr}; + sptr scheduler_{nullptr}; inline static bool doOnce_ = false; // In order for mock to execute once static constexpr int TEST_WAIT_TIME = 100000; @@ -283,9 +283,9 @@ void AbilityMgrModuleTest::MockDataAbilityLoadHandlerInner(bool &testFailed, spt }; EXPECT_CALL(*mockAppMgrClient_, LoadAbility(_, _, _, _)).Times(1).WillOnce(Invoke(mockLoadAbility)); - + int counts = 2; EXPECT_CALL(*mockAppMgrClient_, UpdateAbilityState(_, _)) - .Times(2) + .Times(counts) .WillOnce(Invoke([&testFailed](const sptr &token, const OHOS::AppExecFwk::AbilityState state) { testFailed = testFailed || (state != OHOS::AppExecFwk::AbilityState::ABILITY_STATE_FOREGROUND); return AppMgrResultCode::RESULT_OK; @@ -349,7 +349,8 @@ void AbilityMgrModuleTest::CreateServiceRecord(std::shared_ptr &r record, abilityMgrServ_->GetConnectRecordListByCallback(callback1))); EXPECT_TRUE(abilityMgrServ_->connectManager_->IsAbilityConnected( record, abilityMgrServ_->GetConnectRecordListByCallback(callback2))); - EXPECT_EQ((std::size_t)2, record->GetConnectRecordList().size()); + int size = 2; + EXPECT_EQ((std::size_t)size, record->GetConnectRecordList().size()); record->SetAbilityState(OHOS::AAFwk::AbilityState::ACTIVE); } @@ -357,10 +358,12 @@ void AbilityMgrModuleTest::CheckTestRecord(std::shared_ptr &recor std::shared_ptr &record2, const sptr &callback1, const sptr &callback2) { + int size = 2; + int counts = 2; EXPECT_EQ((std::size_t)1, record1->GetConnectRecordList().size()); EXPECT_EQ((std::size_t)1, record2->GetConnectRecordList().size()); EXPECT_EQ((std::size_t)0, abilityMgrServ_->GetConnectRecordListByCallback(callback1).size()); - EXPECT_EQ((std::size_t)2, abilityMgrServ_->connectManager_->GetServiceMap().size()); + EXPECT_EQ((std::size_t)size, abilityMgrServ_->connectManager_->GetServiceMap().size()); abilityMgrServ_->DisconnectAbility(callback2); @@ -370,13 +373,13 @@ void AbilityMgrModuleTest::CheckTestRecord(std::shared_ptr &recor EXPECT_EQ((std::size_t)0, record2->GetConnectRecordList().size()); EXPECT_EQ((std::size_t)0, abilityMgrServ_->GetConnectRecordListByCallback(callback2).size()); - EXPECT_CALL(*mockAppMgrClient_, UpdateAbilityState(_, _)).Times(2); + EXPECT_CALL(*mockAppMgrClient_, UpdateAbilityState(_, _)).Times(counts); abilityMgrServ_->AbilityTransitionDone(record1->GetToken(), AbilityLifeCycleState::ABILITY_STATE_INITIAL); abilityMgrServ_->AbilityTransitionDone(record2->GetToken(), AbilityLifeCycleState::ABILITY_STATE_INITIAL); EXPECT_EQ(OHOS::AAFwk::AbilityState::TERMINATING, record1->GetAbilityState()); EXPECT_EQ(OHOS::AAFwk::AbilityState::TERMINATING, record2->GetAbilityState()); - EXPECT_CALL(*mockAppMgrClient_, TerminateAbility(_)).Times(2); + EXPECT_CALL(*mockAppMgrClient_, TerminateAbility(_)).Times(counts); abilityMgrServ_->OnAbilityRequestDone( record1->GetToken(), (int32_t)OHOS::AppExecFwk::AbilityState::ABILITY_STATE_BACKGROUND); abilityMgrServ_->OnAbilityRequestDone( diff --git a/services/test/moduletest/ability_record_test/ability_record_module_test.cpp b/services/test/moduletest/ability_record_test/ability_record_module_test.cpp index c56433ca210..d777ed27164 100644 --- a/services/test/moduletest/ability_record_test/ability_record_module_test.cpp +++ b/services/test/moduletest/ability_record_test/ability_record_module_test.cpp @@ -119,7 +119,8 @@ private: void AbilityRecordModuleTest::SetUpTestCase() { - testAbilityRequest_.requestCode = 123; + int testCode = 123; + testAbilityRequest_.requestCode = testCode; testAbilityRequest_.abilityInfo.package = "test"; testAbilityRequest_.abilityInfo.name = "test"; diff --git a/services/test/moduletest/ability_stack_test/ability_stack_module_test.cpp b/services/test/moduletest/ability_stack_test/ability_stack_module_test.cpp index 57db147b5db..67b85823857 100644 --- a/services/test/moduletest/ability_stack_test/ability_stack_module_test.cpp +++ b/services/test/moduletest/ability_stack_test/ability_stack_module_test.cpp @@ -58,9 +58,9 @@ public: void makeScene(const std::string &abilityName, const std::string &bundleName, AbilityInfo &abilityInfo, Want &want); public: - std::shared_ptr stackManager_; - inline static BundleMgrService *bundleObject_; - inline static MockAppMgrClient *mockAppMgrClient; + std::shared_ptr stackManager_{nullptr}; + inline static BundleMgrService *bundleObject_{nullptr}; + inline static MockAppMgrClient *mockAppMgrClient{nullptr}; OHOS::sptr mockScheduler_ = nullptr; }; @@ -72,7 +72,10 @@ void AbilityStackModuleTest::SetUpTestCase(void) } auto appScheduler = OHOS::DelayedSingleton::GetInstance(); - appScheduler->appMgrClient_.reset(mockAppMgrClient); + + if (mockAppMgrClient && appScheduler) { + appScheduler->appMgrClient_.reset(mockAppMgrClient); + } if (!bundleObject_) { bundleObject_ = new (std::nothrow) BundleMgrService(); @@ -3601,6 +3604,5 @@ HWTEST_F(AbilityStackModuleTest, ability_stack_test_059, TestSize.Level1) ref = stackManager_->StartAbility(radioAbilityRequest); EXPECT_EQ(ERR_OK, ref); } - } // namespace AAFwk } // namespace OHOS diff --git a/services/test/moduletest/dump_module_test/dump_module_test.cpp b/services/test/moduletest/dump_module_test/dump_module_test.cpp index 8991eb49f5f..7e9bd7682a9 100755 --- a/services/test/moduletest/dump_module_test/dump_module_test.cpp +++ b/services/test/moduletest/dump_module_test/dump_module_test.cpp @@ -94,12 +94,12 @@ public: void StartAllAbilities(); bool SearchAbilityNameFromStackInfo(const std::string &abilityName, const std::vector &vec); - Want want11; - Want want22; - Want want33; - Want want44; - Want want55; - Want wantLauncher; + Want want11{}; + Want want22{}; + Want want33{}; + Want want44{}; + Want want55{}; + Want wantLauncher{}; }; bool DumpModuleTest::SearchAbilityNameFromStackInfo( diff --git a/services/test/moduletest/ipc_ability_scheduler_test/BUILD.gn b/services/test/moduletest/ipc_ability_scheduler_test/BUILD.gn index c5e591a5c83..ce775176380 100755 --- a/services/test/moduletest/ipc_ability_scheduler_test/BUILD.gn +++ b/services/test/moduletest/ipc_ability_scheduler_test/BUILD.gn @@ -30,6 +30,7 @@ ohos_moduletest("IpcAbilitySchedulerModuleTest") { "${services_path}/abilitymgr/src/caller_info.cpp", "${services_path}/abilitymgr/src/lifecycle_state_info.cpp", "//foundation/aafwk/standard/frameworks/kits/content/cpp/src/ohos/aafwk/content/pac_map.cpp", + "//foundation/aafwk/standard/services/abilitymgr/src/aafwk_dummy_configuration.cpp", "//foundation/appexecfwk/standard/common/log/src/app_log_wrapper.cpp", ] @@ -46,6 +47,7 @@ ohos_moduletest("IpcAbilitySchedulerModuleTest") { } deps = [ "${innerkits_path}/want:want", + "//foundation/aafwk/standard/frameworks/kits/ability/native:abilitykit_native", "//foundation/aafwk/standard/frameworks/kits/ability/native:dummy_classes", "//foundation/aafwk/standard/interfaces/innerkits/base:base", "//foundation/appexecfwk/standard/interfaces/innerkits/appexecfwk_base:appexecfwk_base", diff --git a/services/test/moduletest/ipc_ability_scheduler_test/ipc_ability_scheduler_module_test.cpp b/services/test/moduletest/ipc_ability_scheduler_test/ipc_ability_scheduler_module_test.cpp index 39d36fe7aba..e97dd689da0 100644 --- a/services/test/moduletest/ipc_ability_scheduler_test/ipc_ability_scheduler_module_test.cpp +++ b/services/test/moduletest/ipc_ability_scheduler_test/ipc_ability_scheduler_module_test.cpp @@ -16,6 +16,9 @@ #include #include +#include "abs_shared_result_set.h" +#include "data_ability_predicates.h" +#include "values_bucket.h" #include "uri.h" #include "want.h" #include "semaphore_ex.h" @@ -382,7 +385,7 @@ HWTEST_F(IpcAbilitySchedulerModuleTest, Insert_001, TestSize.Level1) bool testResult = false; std::string testUri("dataability://test/path"); - ValuesBucket testValues; + NativeRdb::ValuesBucket testValues; int testRet = 123; auto mockHandler = [&](const Uri &uri, const NativeRdb::ValuesBucket &vb) { @@ -420,8 +423,8 @@ HWTEST_F(IpcAbilitySchedulerModuleTest, Update_001, TestSize.Level1) bool testResult = false; std::string testUri("dataability://test/path"); - ValuesBucket testValues; - DataAbilityPredicates testPred; + NativeRdb::ValuesBucket testValues; + NativeRdb::DataAbilityPredicates testPred; int testRet = 123; auto mockHandler = [&](const Uri &uri, const NativeRdb::ValuesBucket &vb, const NativeRdb::DataAbilityPredicates &pred) { @@ -459,7 +462,7 @@ HWTEST_F(IpcAbilitySchedulerModuleTest, Delete_001, TestSize.Level1) bool testResult = false; std::string testUri("dataability://test/path"); - DataAbilityPredicates testPred; + NativeRdb::DataAbilityPredicates testPred; int testRet = 123; auto mockHandler = [&](const Uri &uri, const NativeRdb::DataAbilityPredicates &pred) { @@ -500,12 +503,12 @@ HWTEST_F(IpcAbilitySchedulerModuleTest, Query_001, TestSize.Level1) std::vector testColumns; testColumns.emplace_back("col1"); testColumns.emplace_back("col2"); - DataAbilityPredicates testPred; + NativeRdb::DataAbilityPredicates testPred; auto mockHandler = [&](const Uri &uri, std::vector &columns, const NativeRdb::DataAbilityPredicates &pred) { testResult = (columns == testColumns); sem.Post(); - return std::make_shared(); + return std::make_shared("DataAbilityTest"); }; EXPECT_CALL(*stub, Query(_, _, _)).Times(1).WillOnce(Invoke(mockHandler)); diff --git a/services/test/moduletest/module_test_dump_util/module_test_dump_util.cpp b/services/test/moduletest/module_test_dump_util/module_test_dump_util.cpp index 40c26289887..35b63c205d0 100644 --- a/services/test/moduletest/module_test_dump_util/module_test_dump_util.cpp +++ b/services/test/moduletest/module_test_dump_util/module_test_dump_util.cpp @@ -89,8 +89,9 @@ str_iter MTDumpUtil::GetSpecific(const string &matchStr, const str_vec &dumpInfo bool MTDumpUtil::MatchRegex(const regex &rgx, const string &text, string &result) { std::smatch baseMatch; + std::size_t size = 2; if (std::regex_match(text, baseMatch, rgx)) { - if (baseMatch.size() == 2) { + if (baseMatch.size() == size) { result = baseMatch[1].str(); return true; } diff --git a/services/test/moduletest/panding_want_manager_test/panding_want_manager_test.cpp b/services/test/moduletest/panding_want_manager_test/panding_want_manager_test.cpp index 7d580121a24..b4732de8c88 100644 --- a/services/test/moduletest/panding_want_manager_test/panding_want_manager_test.cpp +++ b/services/test/moduletest/panding_want_manager_test/panding_want_manager_test.cpp @@ -47,28 +47,20 @@ using namespace testing::ext; namespace OHOS { namespace AAFwk { - namespace { static const int FLAG_ONE_SHOT = 1 << 30; -// static const int FLAG_NO_CREATE = 1 << 29; -// static const int FLAG_CANCEL_CURRENT = 1 << 28; -// static const int FLAG_UPDATE_CURRENT = 1 << 27; -// static const int FLAG_IMMUTABLE = 1 << 26; - int abilityRequestCode = 1; int abilitiesRequestCode = 2; int serviceRequestCode = 3; int foregroundServicesRequestCode = 4; int commonEventRequestCode = 4; - } // namespace -class PandingWantMgrTest : public testing::Test { +class PandingWantManagerTest : public testing::Test { public: static void SetUpTestCase(void); static void TearDownTestCase(void); void SetUp(); void TearDown(); - WantSenderInfo GetAbility(); WantSenderInfo GetAbilities(); WantSenderInfo GetService(); @@ -85,7 +77,7 @@ public: MockAbilityMgrService *amsSerice = new MockAbilityMgrService(); }; -void PandingWantMgrTest::SetUpTestCase(void) +void PandingWantManagerTest::SetUpTestCase(void) { OHOS::DelayedSingleton::DestroyInstance(); OHOS::DelayedSingleton::GetInstance()->RegisterSystemAbility( @@ -102,7 +94,7 @@ void PandingWantMgrTest::SetUpTestCase(void) } } -void PandingWantMgrTest::TearDownTestCase(void) +void PandingWantManagerTest::TearDownTestCase(void) { OHOS::DelayedSingleton::DestroyInstance(); if (appClient) { @@ -111,7 +103,7 @@ void PandingWantMgrTest::TearDownTestCase(void) } } -void PandingWantMgrTest::SetUp() +void PandingWantManagerTest::SetUp() { if (amsSerice == nullptr) { amsSerice = new MockAbilityMgrService(); @@ -120,10 +112,10 @@ void PandingWantMgrTest::SetUp() AbilityManagerClient::GetInstance()->remoteObject_ = amsSerice; } -void PandingWantMgrTest::TearDown() +void PandingWantManagerTest::TearDown() {} -std::shared_ptr PandingWantMgrTest::GetWant(std::string abilityName, std::string bundleName) +std::shared_ptr PandingWantManagerTest::GetWant(std::string abilityName, std::string bundleName) { if (abilityName == "") { abilityName = "hiMusic"; @@ -141,7 +133,7 @@ std::shared_ptr PandingWantMgrTest::GetWant(std::string abilityName return std::make_shared(want); } -WantSenderInfo PandingWantMgrTest::GetAbility() +WantSenderInfo PandingWantManagerTest::GetAbility() { int32_t flags = FLAG_ONE_SHOT; WantsInfo wantsInfo; @@ -160,7 +152,7 @@ WantSenderInfo PandingWantMgrTest::GetAbility() return wantSenderInfo; } -WantSenderInfo PandingWantMgrTest::GetAbilities() +WantSenderInfo PandingWantManagerTest::GetAbilities() { int32_t flags = (int32_t)FLAG_ONE_SHOT; @@ -185,7 +177,7 @@ WantSenderInfo PandingWantMgrTest::GetAbilities() return wantSenderInfo; } -WantSenderInfo PandingWantMgrTest::GetService() +WantSenderInfo PandingWantManagerTest::GetService() { int32_t flags = FLAG_ONE_SHOT; @@ -205,7 +197,7 @@ WantSenderInfo PandingWantMgrTest::GetService() return wantSenderInfo; } -WantSenderInfo PandingWantMgrTest::GetForegroundService() +WantSenderInfo PandingWantManagerTest::GetForegroundService() { int32_t flags = FLAG_ONE_SHOT; @@ -224,7 +216,7 @@ WantSenderInfo PandingWantMgrTest::GetForegroundService() return wantSenderInfo; } -WantSenderInfo PandingWantMgrTest::GetCommonEvent() +WantSenderInfo PandingWantManagerTest::GetCommonEvent() { int32_t flags = FLAG_ONE_SHOT; @@ -243,7 +235,7 @@ WantSenderInfo PandingWantMgrTest::GetCommonEvent() return wantSenderInfo; } -WantAgentInfo PandingWantMgrTest::MakeWantAgentInfo(WantAgentConstant::OperationType &type, int requestCode, +WantAgentInfo PandingWantManagerTest::MakeWantAgentInfo(WantAgentConstant::OperationType &type, int requestCode, std::vector &flags, std::vector> wants) { WantAgentInfo info; @@ -263,7 +255,7 @@ WantAgentInfo PandingWantMgrTest::MakeWantAgentInfo(WantAgentConstant::Operation * EnvConditions: NA * CaseDescription: get want sender / send want sender */ -HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_001, TestSize.Level1) +HWTEST_F(PandingWantManagerTest, pending_want_mgr_test_001, TestSize.Level1) { WantAgentConstant::OperationType type = WantAgentConstant::OperationType::START_ABILITY; int requsetCode = 10; @@ -288,7 +280,6 @@ HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_001, TestSize.Level1) auto amsProxySendWantSenderReturn = [&](const sptr &target, const SenderInfo &senderInfo) { return ams->SendWantSender(target, senderInfo); - ; }; EXPECT_CALL(*amsSerice, SendWantSender(_, _)).Times(1).WillOnce(Invoke(amsProxySendWantSenderReturn)); EXPECT_CALL(*amsSerice, GetPendingWantType(_)).Times(1).WillOnce(Return(0)); @@ -332,7 +323,7 @@ HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_001, TestSize.Level1) * EnvConditions: NA * CaseDescription: get want sender / send want sender */ -HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_002, TestSize.Level1) +HWTEST_F(PandingWantManagerTest, pending_want_mgr_test_002, TestSize.Level1) { WantAgentConstant::OperationType type = WantAgentConstant::OperationType::START_ABILITIES; int requsetCode = 10; @@ -361,7 +352,6 @@ HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_002, TestSize.Level1) auto amsProxySendWantSenderReturn = [&](const sptr &target, const SenderInfo &senderInfo) { return ams->SendWantSender(target, senderInfo); - ; }; EXPECT_CALL(*amsSerice, SendWantSender(_, _)).Times(1).WillOnce(Invoke(amsProxySendWantSenderReturn)); EXPECT_CALL(*amsSerice, GetPendingWantType(_)).Times(1).WillOnce(Return(0)); @@ -398,7 +388,7 @@ HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_002, TestSize.Level1) * EnvConditions: NA * CaseDescription: get want sender / send want sender */ -HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_003, TestSize.Level1) +HWTEST_F(PandingWantManagerTest, pending_want_mgr_test_003, TestSize.Level1) { WantAgentConstant::OperationType type = WantAgentConstant::OperationType::START_SERVICE; int requsetCode = 10; @@ -423,7 +413,6 @@ HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_003, TestSize.Level1) auto amsProxySendWantSenderReturn = [&](const sptr &target, const SenderInfo &senderInfo) { return ams->SendWantSender(target, senderInfo); - ; }; EXPECT_CALL(*amsSerice, SendWantSender(_, _)).Times(1).WillOnce(Invoke(amsProxySendWantSenderReturn)); EXPECT_CALL(*amsSerice, GetPendingWantType(_)).Times(1).WillOnce(Return(0)); @@ -465,7 +454,7 @@ HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_003, TestSize.Level1) * EnvConditions: NA * CaseDescription: get want sender / send want sender */ -HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_004, TestSize.Level1) +HWTEST_F(PandingWantManagerTest, pending_want_mgr_test_004, TestSize.Level1) { WantAgentConstant::OperationType type = WantAgentConstant::OperationType::START_FOREGROUND_SERVICE; int requsetCode = 112; @@ -490,7 +479,6 @@ HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_004, TestSize.Level1) auto amsProxySendWantSenderReturn = [&](const sptr &target, const SenderInfo &senderInfo) { return ams->SendWantSender(target, senderInfo); - ; }; EXPECT_CALL(*amsSerice, SendWantSender(_, _)).Times(1).WillOnce(Invoke(amsProxySendWantSenderReturn)); EXPECT_CALL(*amsSerice, GetPendingWantType(_)).Times(1).WillOnce(Return(0)); @@ -531,7 +519,7 @@ HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_004, TestSize.Level1) * EnvConditions: NA * CaseDescription: get want sender / send want sender */ -HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_005, TestSize.Level1) +HWTEST_F(PandingWantManagerTest, pending_want_mgr_test_005, TestSize.Level1) { WantAgentConstant::OperationType type = WantAgentConstant::OperationType::SEND_COMMON_EVENT; int requsetCode = 112; @@ -556,7 +544,6 @@ HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_005, TestSize.Level1) auto amsProxySendWantSenderReturn = [&](const sptr &target, const SenderInfo &senderInfo) { return ams->SendWantSender(target, senderInfo); - ; }; EXPECT_CALL(*amsSerice, SendWantSender(_, _)).Times(1).WillOnce(Invoke(amsProxySendWantSenderReturn)); EXPECT_CALL(*amsSerice, GetPendingWantType(_)).Times(1).WillOnce(Return(0)); @@ -586,7 +573,7 @@ HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_005, TestSize.Level1) * EnvConditions: NA * CaseDescription: get want sender / send want sender */ -HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_006, TestSize.Level1) +HWTEST_F(PandingWantManagerTest, pending_want_mgr_test_006, TestSize.Level1) { WantAgentConstant::OperationType type = WantAgentConstant::OperationType::START_ABILITY; int requsetCode = 18; @@ -653,7 +640,7 @@ HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_006, TestSize.Level1) * EnvConditions: NA * CaseDescription: get want sender different flag effects */ -HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_007, TestSize.Level1) +HWTEST_F(PandingWantManagerTest, pending_want_mgr_test_007, TestSize.Level1) { WantAgentConstant::OperationType type = WantAgentConstant::OperationType::START_ABILITY; int requsetCode = 21; @@ -743,6 +730,5 @@ HWTEST_F(PandingWantMgrTest, pending_want_mgr_test_007, TestSize.Level1) std::shared_ptr wantAgent3 = WantAgentHelper::GetWantAgent(context, info); EXPECT_EQ(wantAgent3->GetPendingWant()->GetTarget(), nullptr); } - } // namespace AAFwk } // namespace OHOS \ No newline at end of file diff --git a/tools/zip/include/zip.h b/tools/zip/include/zip.h index 5d0aa35ce1a..c741542ffa4 100755 --- a/tools/zip/include/zip.h +++ b/tools/zip/include/zip.h @@ -140,10 +140,24 @@ private: // Convenience method for callers who don't need to set up the filter callback. // If |includeHiddenFiles| is true, files starting with "." are included. // Otherwise they are omitted. +// example No1 +// srcDir = /ziptest/zipdata/ +// destFile = /ziptest/hapresult/hapfourfile.zip +// example No2 +// srcDir = /ziptest/zipdata/zip1/zip1-1.cpp +// destFile = /ziptest/hapresult/singlefile.zip +// options is default value. bool Zip(const FilePath &srcDir, const FilePath &destFile, const OPTIONS &options, CALLBACK callback, bool includeHiddenFiles); // Unzip the contents of zipFile into destDir. +// example No1 +// srcDir = /ziptest/hapresult/hapfourfile.zip +// destFile = /ziptest/hapunzipdir/01 +// example No2 +// srcDir = /ziptest/hapresult/singlefile.zip +// destFile = /ziptest/hapunzipdir/single +// options is default value. bool Unzip(const FilePath &zipFile, const FilePath &destDir, const OPTIONS &options, CALLBACK callback); } // namespace LIBZIP diff --git a/tools/zip/kits/napi/napi_zlib.cpp b/tools/zip/kits/napi/napi_zlib.cpp index 889b9881c83..06e12907f32 100755 --- a/tools/zip/kits/napi/napi_zlib.cpp +++ b/tools/zip/kits/napi/napi_zlib.cpp @@ -52,7 +52,9 @@ const int E_OK = 0; std::shared_ptr g_zipAceCallbackInfo = nullptr; std::shared_ptr g_unzipAceCallbackInfo = nullptr; void ZipFileAsyncCallBack(int result); +void ZipFilePromiseCallBack(int result); void UnzipFileAsyncCallBack(int result); +void UnzipFilePromiseCallBack(int result); napi_value UnwrapZipParam(CallZipUnzipParam ¶m, napi_env env, napi_value *args, size_t argc); napi_value UnwrapUnZipParam(CallZipUnzipParam ¶m, napi_env env, napi_value *args, size_t argc); napi_value ZipFileWrap(napi_env env, napi_callback_info info, AsyncZipCallbackInfo *asyncZipCallbackInfo); @@ -61,6 +63,9 @@ bool UnwrapOptionsParams(OPTIONS &options, napi_env env, napi_value arg); napi_value ZipFileAsync(napi_env env, napi_value *args, size_t argcAsync, AsyncZipCallbackInfo *asyncZipCallbackInfo); napi_value UnzipFileAsync(napi_env env, napi_value *args, size_t argcAsync, AsyncZipCallbackInfo *asyncZipCallbackInfo); void ZipAndUnzipFileAsyncCallBack(std::shared_ptr &zipAceCallbackInfo, int result); +napi_value ZipFilePromise(napi_env env, AsyncZipCallbackInfo *asyncZipCallbackInfo); +napi_value UnzipFilePromise(napi_env env, AsyncZipCallbackInfo *asyncZipCallbackInfo); +void ZipAndUnzipFileAsyncCallBackInnerJsThread(uv_work_t *work, int status); /** * @brief FeatureAbility NAPI module registration. @@ -102,7 +107,6 @@ AsyncZipCallbackInfo *CreateZipAsyncCallbackInfo(napi_env env) AsyncZipCallbackInfo *asyncCallbackInfo = new (std::nothrow) AsyncZipCallbackInfo{ .asyncWork = nullptr, - .deferred = nullptr, .aceCallback = nullptr, }; if (asyncCallbackInfo == nullptr) { @@ -124,12 +128,12 @@ AsyncZipCallbackInfo *CreateZipAsyncCallbackInfo(napi_env env) napi_value NAPI_ZipFile(napi_env env, napi_callback_info info) { HILOG_INFO("%{public}s,called env=%{public}p", __func__, env); - size_t argCountWithAsync = 4; napi_value args[ARGS_MAX_COUNT] = {nullptr}; napi_value ret = 0; size_t argcAsync = 4; + const size_t argcPromise = 3; NAPI_CALL(env, napi_get_cb_info(env, info, &argcAsync, args, nullptr, nullptr)); - if (argcAsync < argCountWithAsync || argcAsync > ARGS_MAX_COUNT) { + if (argcAsync < argcPromise || argcAsync > ARGS_MAX_COUNT) { HILOG_ERROR("%{public}s, Wrong argument count.", __func__); return nullptr; } @@ -153,16 +157,15 @@ napi_value NAPI_ZipFile(napi_env env, napi_callback_info info) napi_value ZipFileWrap(napi_env env, napi_callback_info info, AsyncZipCallbackInfo *asyncZipCallbackInfo) { HILOG_INFO("%{public}s,called", __func__); - size_t argCountWithAsync = 4; napi_value args[ARGS_MAX_COUNT] = {nullptr}; napi_value ret = 0; - size_t argcAsync; + size_t argcAsync = 4; + const size_t argcPromise = 3; NAPI_CALL(env, napi_get_cb_info(env, info, &argcAsync, args, nullptr, nullptr)); - if (argcAsync < argCountWithAsync || argcAsync > ARGS_MAX_COUNT) { + if (argcAsync < argcPromise || argcAsync > ARGS_MAX_COUNT) { HILOG_ERROR("%{public}s, Wrong argument count.", __func__); return nullptr; } - CallZipUnzipParam param; if (UnwrapZipParam(param, env, args, argcAsync) == nullptr) { HILOG_ERROR("%{public}s, call unwrapWant failed.", __func__); @@ -180,25 +183,59 @@ napi_value ZipFileWrap(napi_env env, napi_callback_info info, AsyncZipCallbackIn if (argcAsync > PARAM3) { ret = ZipFileAsync(env, args, argcAsync, asyncZipCallbackInfo); } else { - if (asyncZipCallbackInfo != nullptr) { - delete asyncZipCallbackInfo; - asyncZipCallbackInfo = nullptr; - } - if (g_zipAceCallbackInfo != nullptr) { - g_zipAceCallbackInfo.reset(); - g_zipAceCallbackInfo = nullptr; - } - HILOG_INFO("%{public}s called, wrong number of parameters", __func__); + ret = ZipFilePromise(env, asyncZipCallbackInfo); + } + return ret; +} +napi_value ZipFilePromise(napi_env env, AsyncZipCallbackInfo *asyncZipCallbackInfo) +{ + HILOG_INFO("%{public}s, promise.", __func__); + if (asyncZipCallbackInfo == nullptr) { + HILOG_ERROR("%{public}s, asyncZipCallbackInfo is nullptr.", __func__); return nullptr; } - return ret; + napi_value resourceName = 0; + NAPI_CALL(env, napi_create_string_latin1(env, __func__, NAPI_AUTO_LENGTH, &resourceName)); + napi_deferred deferred; + napi_value promise = 0; + NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); + g_zipAceCallbackInfo->deferred = deferred; + napi_create_async_work( + env, + nullptr, + resourceName, + [](napi_env env, void *data) { + HILOG_INFO("NAPI_ZipFile_Promise, worker pool thread execute."); + AsyncZipCallbackInfo *asyncCallbackInfo = static_cast(data); + if (asyncCallbackInfo != nullptr && asyncCallbackInfo->aceCallback != nullptr) { + Zip(FilePath(asyncCallbackInfo->aceCallback->param.src), + FilePath(asyncCallbackInfo->aceCallback->param.dest), + asyncCallbackInfo->aceCallback->param.options, + ZipFilePromiseCallBack, + false); + } + HILOG_INFO("NAPI_ZipFile_Promise, worker pool thread execute end."); + }, + [](napi_env env, napi_status status, void *data) { + HILOG_INFO("NAPI_ZipFile_Promise, main event thread complete."); + AsyncZipCallbackInfo *asyncCallbackInfo = static_cast(data); + napi_delete_async_work(env, asyncCallbackInfo->asyncWork); + delete asyncCallbackInfo; + asyncCallbackInfo = nullptr; + HILOG_INFO("NAPI_ZipFile_Promise, main event thread complete end."); + }, + (void *)asyncZipCallbackInfo, + &asyncZipCallbackInfo->asyncWork); + + napi_queue_async_work(env, asyncZipCallbackInfo->asyncWork); + HILOG_INFO("%{public}s, promise end.", __func__); + return promise; } napi_value UnwrapStringParam(std::string &str, napi_env env, napi_value argv) { HILOG_INFO("%{public}s,called", __func__); - // unwrap the param[0] napi_valuetype valueType = napi_valuetype::napi_undefined; // NAPI_CALL(env, napi_typeof(env, argv, &valueType)); @@ -288,8 +325,8 @@ bool UnwrapOptionsParams(OPTIONS &options, napi_env env, napi_value arg) napi_value UnwrapZipParam(CallZipUnzipParam ¶m, napi_env env, napi_value *args, size_t argc) { HILOG_INFO("%{public}s,called", __func__); - - if (argc < 4) { + size_t argcPromise = 3; + if (argc < argcPromise) { HILOG_INFO("%{public}s called, param count is wrong", __func__); return nullptr; } @@ -320,8 +357,8 @@ napi_value UnwrapZipParam(CallZipUnzipParam ¶m, napi_env env, napi_value *ar napi_value UnwrapUnZipParam(CallZipUnzipParam ¶m, napi_env env, napi_value *args, size_t argc) { HILOG_INFO("%{public}s,called", __func__); - - if (argc < 4) { + size_t argcPromise = 3; + if (argc < argcPromise) { return nullptr; } // unwrap the param[0] @@ -375,9 +412,8 @@ napi_value ZipFileAsync(napi_env env, napi_value *args, size_t argcAsync, AsyncZ nullptr, resourceName, [](napi_env env, void *data) { - HILOG_INFO("NAPI_ZipFile, worker pool thread execute."); + HILOG_INFO("NAPI_ZipFile_callback, worker pool thread execute."); AsyncZipCallbackInfo *asyncCallbackInfo = (AsyncZipCallbackInfo *)data; - if (asyncCallbackInfo != nullptr && asyncCallbackInfo->aceCallback != nullptr) { Zip(FilePath(asyncCallbackInfo->aceCallback->param.src), FilePath(asyncCallbackInfo->aceCallback->param.dest), @@ -387,7 +423,7 @@ napi_value ZipFileAsync(napi_env env, napi_value *args, size_t argcAsync, AsyncZ } }, [](napi_env env, napi_status status, void *data) { - HILOG_INFO("NAPI_ZipFile, main event thread complete."); + HILOG_INFO("NAPI_ZipFile_callback, main event thread complete."); AsyncZipCallbackInfo *asyncCallbackInfo = (AsyncZipCallbackInfo *)data; napi_delete_async_work(env, asyncCallbackInfo->asyncWork); delete asyncCallbackInfo; @@ -412,12 +448,12 @@ napi_value ZipFileAsync(napi_env env, napi_value *args, size_t argcAsync, AsyncZ napi_value NAPI_UnzipFile(napi_env env, napi_callback_info info) { HILOG_INFO("%{public}s,called", __func__); - size_t argCountWithAsync = 4; napi_value args[ARGS_MAX_COUNT] = {nullptr}; napi_value ret = 0; size_t argcAsync = 4; + const size_t argcPromise = 3; NAPI_CALL(env, napi_get_cb_info(env, info, &argcAsync, args, nullptr, nullptr)); - if (argcAsync < argCountWithAsync || argcAsync > ARGS_MAX_COUNT) { + if (argcAsync < argcPromise || argcAsync > ARGS_MAX_COUNT) { HILOG_ERROR("%{public}s, Wrong argument count.", __func__); return nullptr; } @@ -441,21 +477,53 @@ napi_value NAPI_UnzipFile(napi_env env, napi_callback_info info) if (argcAsync > PARAM3) { ret = UnzipFileAsync(env, args, argcAsync, asyncZipCallbackInfo); } else { - HILOG_INFO("%{public}s called, wrong number of parameters", __func__); - if (asyncZipCallbackInfo != nullptr) { - delete asyncZipCallbackInfo; - asyncZipCallbackInfo = nullptr; - } - if (g_unzipAceCallbackInfo != nullptr) { - g_unzipAceCallbackInfo.reset(); - g_unzipAceCallbackInfo = nullptr; - } - return nullptr; + ret = UnzipFilePromise(env, asyncZipCallbackInfo); } return ret; } - +napi_value UnzipFilePromise(napi_env env, AsyncZipCallbackInfo *asyncZipCallbackInfo) +{ + HILOG_INFO("%{public}s, promise.", __func__); + if (asyncZipCallbackInfo == nullptr) { + HILOG_ERROR("%{public}s, asyncZipCallbackInfo is nullptr.", __func__); + return nullptr; + } + napi_value resourceName = 0; + NAPI_CALL(env, napi_create_string_latin1(env, __func__, NAPI_AUTO_LENGTH, &resourceName)); + napi_deferred deferred; + napi_value promise = 0; + NAPI_CALL(env, napi_create_promise(env, &deferred, &promise)); + g_unzipAceCallbackInfo->deferred = deferred; + napi_create_async_work( + env, + nullptr, + resourceName, + [](napi_env env, void *data) { + HILOG_INFO("NAPI_UnzipFile_Promise, worker pool thread execute."); + AsyncZipCallbackInfo *asyncCallbackInfo = static_cast(data); + if (asyncCallbackInfo != nullptr && asyncCallbackInfo->aceCallback != nullptr) { + Unzip(FilePath(asyncCallbackInfo->aceCallback->param.src), + FilePath(asyncCallbackInfo->aceCallback->param.dest), + asyncCallbackInfo->aceCallback->param.options, + UnzipFilePromiseCallBack); + } + HILOG_INFO("NAPI_UnzipFile_Promise, worker pool thread execute end."); + }, + [](napi_env env, napi_status status, void *data) { + HILOG_INFO("NAPI_UnzipFile_Promise, main event thread complete."); + AsyncZipCallbackInfo *asyncCallbackInfo = static_cast(data); + napi_delete_async_work(env, asyncCallbackInfo->asyncWork); + delete asyncCallbackInfo; + asyncCallbackInfo = nullptr; + HILOG_INFO("NAPI_UnzipFile_Promise, main event thread complete end."); + }, + (void *)asyncZipCallbackInfo, + &asyncZipCallbackInfo->asyncWork); + napi_queue_async_work(env, asyncZipCallbackInfo->asyncWork); + HILOG_INFO("%{public}s, promise end.", __func__); + return promise; +} napi_value UnzipFileAsync(napi_env env, napi_value *args, size_t argcAsync, AsyncZipCallbackInfo *asyncZipCallbackInfo) { HILOG_INFO("%{public}s, asyncCallback.", __func__); @@ -465,7 +533,6 @@ napi_value UnzipFileAsync(napi_env env, napi_value *args, size_t argcAsync, Asyn } napi_value resourceName = 0; napi_create_string_latin1(env, __func__, NAPI_AUTO_LENGTH, &resourceName); - if (argcAsync > PARAM3) { napi_valuetype valuetype = napi_undefined; NAPI_CALL_BASE(env, napi_typeof(env, args[PARAM3], &valuetype), nullptr); @@ -484,9 +551,8 @@ napi_value UnzipFileAsync(napi_env env, napi_value *args, size_t argcAsync, Asyn [](napi_env env, void *data) { HILOG_INFO("NAPI_UnzipFile, worker pool thread execute."); AsyncZipCallbackInfo *asyncCallbackInfo = (AsyncZipCallbackInfo *)data; - // Unzip - if (asyncCallbackInfo != nullptr) { + if (asyncCallbackInfo != nullptr && asyncCallbackInfo->aceCallback != nullptr) { Unzip(FilePath(asyncCallbackInfo->aceCallback->param.src), FilePath(asyncCallbackInfo->aceCallback->param.dest), asyncCallbackInfo->aceCallback->param.options, @@ -507,14 +573,76 @@ napi_value UnzipFileAsync(napi_env env, napi_value *args, size_t argcAsync, Asyn napi_get_null(env, &result); return result; } +// ZipFile callback void ZipFileAsyncCallBack(int result) { + if (g_zipAceCallbackInfo != nullptr) { + g_zipAceCallbackInfo->isCallBack = true; + } + ZipAndUnzipFileAsyncCallBack(g_zipAceCallbackInfo, result); +} +// ZipFile Promise +void ZipFilePromiseCallBack(int result) +{ + if (g_zipAceCallbackInfo != nullptr) { + g_zipAceCallbackInfo->isCallBack = false; + } ZipAndUnzipFileAsyncCallBack(g_zipAceCallbackInfo, result); } +// UnzipFile callback void UnzipFileAsyncCallBack(int result) { + if (g_unzipAceCallbackInfo != nullptr) { + g_unzipAceCallbackInfo->isCallBack = true; + } ZipAndUnzipFileAsyncCallBack(g_unzipAceCallbackInfo, result); } +// UnzipFile Promise +void UnzipFilePromiseCallBack(int result) +{ + if (g_unzipAceCallbackInfo != nullptr) { + g_unzipAceCallbackInfo->isCallBack = false; + } + ZipAndUnzipFileAsyncCallBack(g_unzipAceCallbackInfo, result); +} +void ZipAndUnzipFileAsyncCallBackInnerJsThread(uv_work_t *work, int status) +{ + // JS Thread + ZlibCallbackInfo *asyncCallbackInfo = (ZlibCallbackInfo *)work->data; + if (asyncCallbackInfo == nullptr) { + return; + } + napi_value result[ARGS_TWO] = {0}; + // callback result + napi_create_int32(asyncCallbackInfo->env, (int32_t)asyncCallbackInfo->callbackResult, &result[PARAM1]); + if (asyncCallbackInfo->isCallBack) { + napi_value callback = 0; + napi_value undefined = 0; + // callback(err, data) errorInfo->error_code; + result[PARAM0] = GetCallbackErrorValue(asyncCallbackInfo->env, NO_ERROR); + // get callback + napi_get_reference_value(asyncCallbackInfo->env, asyncCallbackInfo->callback, &callback); + napi_get_undefined(asyncCallbackInfo->env, &undefined); + // call callback + napi_value jsResult = 0; + napi_call_function(asyncCallbackInfo->env, undefined, callback, ARGS_TWO, &result[PARAM0], &jsResult); + // free data + if (asyncCallbackInfo->callback != nullptr) { + napi_delete_reference(asyncCallbackInfo->env, asyncCallbackInfo->callback); + } + } else { + // promise + napi_resolve_deferred(asyncCallbackInfo->env, asyncCallbackInfo->deferred, result[PARAM1]); + } + if (asyncCallbackInfo != nullptr) { + delete asyncCallbackInfo; + asyncCallbackInfo = nullptr; + } + if (work != nullptr) { + delete work; + work = nullptr; + } +} void ZipAndUnzipFileAsyncCallBack(std::shared_ptr &zipAceCallbackInfo, int result) { if (zipAceCallbackInfo == nullptr) { @@ -527,7 +655,6 @@ void ZipAndUnzipFileAsyncCallBack(std::shared_ptr &zipAceCallb HILOG_ERROR("%{public}s, work == nullptr.", __func__); return; } - uv_work_t *work = new (std::nothrow) uv_work_t; if (work == nullptr) { HILOG_ERROR("%{public}s, work == nullptr.", __func__); @@ -542,49 +669,20 @@ void ZipAndUnzipFileAsyncCallBack(std::shared_ptr &zipAceCallb zipAceCallbackInfo.reset(); zipAceCallbackInfo = nullptr; work->data = (void *)asyncCallbackInfo; - int rev = uv_queue_work( loop, work, [](uv_work_t *work) {}, [](uv_work_t *work, int status) { HILOG_INFO("ZipAndUnzipFileAsyncCallBack, uv_queue_work"); - // JS Thread - ZlibCallbackInfo *asyncCallbackInfo = (ZlibCallbackInfo *)work->data; - if (asyncCallbackInfo == nullptr) { - return; - } - - napi_value callback = 0; - napi_value undefined = 0; - napi_value result[ARGS_TWO] = {0}; - // callback(err, data) errorInfo->error_code; - result[PARAM0] = GetCallbackErrorValue(asyncCallbackInfo->env, NO_ERROR); - // callback result - napi_create_int32(asyncCallbackInfo->env, (int32_t)asyncCallbackInfo->callbackResult, &result[PARAM1]); - // get callback - napi_get_reference_value(asyncCallbackInfo->env, asyncCallbackInfo->callback, &callback); - napi_get_undefined(asyncCallbackInfo->env, &undefined); - // call callback - napi_value jsResult = 0; - napi_call_function(asyncCallbackInfo->env, undefined, callback, ARGS_TWO, &result[PARAM0], &jsResult); - // free data + ZipAndUnzipFileAsyncCallBackInnerJsThread(work, status); + HILOG_INFO("ZipAndUnzipFileAsyncCallBack, uv_queue_work end."); + }); + if (rev != E_OK) { + if (asyncCallbackInfo->isCallBack) { if (asyncCallbackInfo->callback != nullptr) { napi_delete_reference(asyncCallbackInfo->env, asyncCallbackInfo->callback); } - if (asyncCallbackInfo != nullptr) { - delete asyncCallbackInfo; - asyncCallbackInfo = nullptr; - } - if (work != nullptr) { - delete work; - work = nullptr; - } - }); - if (rev != E_OK) { - // free data - if (asyncCallbackInfo->callback != nullptr) { - napi_delete_reference(asyncCallbackInfo->env, asyncCallbackInfo->callback); } if (asyncCallbackInfo != nullptr) { delete asyncCallbackInfo; diff --git a/tools/zip/kits/napi/napi_zlib.h b/tools/zip/kits/napi/napi_zlib.h index df47a62d80d..3200b733fd3 100755 --- a/tools/zip/kits/napi/napi_zlib.h +++ b/tools/zip/kits/napi/napi_zlib.h @@ -40,6 +40,33 @@ napi_value ZlibInit(napi_env env, napi_value exports); * @param info The callback info passed into the callback function. * * @return The return value from NAPI C++ to JS for the module. + * + * NAPI_Zipfile interface supports promise and callback calls. + * + * example No1 + * var src ="/ziptest/zipdata/"; + * var dest ="/ziptest/hapresult/hapfourfile.zip"; + * var option = { + * flush:0, + * finishFlush:2, + * chunkSize:68, + * memLevel:8, + * level:-1, + * strategy:0 + * }; + * + * example No2 + * var src ="/ziptest/zipdata/zip1/zip1-1.cpp"; + * var dest ="/ziptest/hapresult/single.zip"; + * var option = { + * flush:0, + * finishFlush:2, + * chunkSize:68, + * memLevel:8, + * level:-1, + * strategy:0 + * }; + * */ napi_value NAPI_ZipFile(napi_env env, napi_callback_info info); @@ -50,6 +77,32 @@ napi_value NAPI_ZipFile(napi_env env, napi_callback_info info); * @param info The callback info passed into the callback function. * * @return The return value from NAPI C++ to JS for the module. + * + * NAPI_UnzipFile interface supports promise and callback calls. + * + * example No1 + * var src ="/ziptest/hapresult/hapfourfile.zip"; + * var dest ="/ziptest/hapunzipdir/01"; + * var option = { + * flush:0, + * finishFlush:2, + * chunkSize:68, + * memLevel:8, + * level:-1, + * strategy:0 + * }; + * + * example No2 + * var src ="/ziptest/hapresult/single.zip"; + * var dest ="/ziptest/hapunzipdir/single"; + * var option = { + * flush:0, + * finishFlush:2, + * chunkSize:68, + * memLevel:8, + * level:-1, + * strategy:0 + * }; */ napi_value NAPI_UnzipFile(napi_env env, napi_callback_info info); diff --git a/tools/zip/kits/napi/napi_zlib_common.h b/tools/zip/kits/napi/napi_zlib_common.h index 7abf6b82cca..e00e5f0154d 100755 --- a/tools/zip/kits/napi/napi_zlib_common.h +++ b/tools/zip/kits/napi/napi_zlib_common.h @@ -68,13 +68,14 @@ struct CallZipUnzipParam { struct ZlibCallbackInfo { napi_env env; napi_ref callback = 0; + napi_deferred deferred; CallZipUnzipParam param; + bool isCallBack = false; int callbackResult = 0; }; struct AsyncZipCallbackInfo { napi_async_work asyncWork; - napi_deferred deferred; std::shared_ptr aceCallback; }; bool UnwrapIntValue(napi_env env, napi_value jsValue, int &result); -- Gitee