199552fe9Sopenharmony_ci/* 299552fe9Sopenharmony_ci * Copyright (c) 2023-2024 Huawei Device Co., Ltd. 399552fe9Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 499552fe9Sopenharmony_ci * you may not use this file except in compliance with the License. 599552fe9Sopenharmony_ci * You may obtain a copy of the License at 699552fe9Sopenharmony_ci * 799552fe9Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 899552fe9Sopenharmony_ci * 999552fe9Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 1099552fe9Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 1199552fe9Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1299552fe9Sopenharmony_ci * See the License for the specific language governing permissions and 1399552fe9Sopenharmony_ci * limitations under the License. 1499552fe9Sopenharmony_ci */ 1599552fe9Sopenharmony_ci 1699552fe9Sopenharmony_ci#include "timed_task.h" 1799552fe9Sopenharmony_ci#include "ability_manager_helper.h" 1899552fe9Sopenharmony_ci#include "app_mgr_helper.h" 1999552fe9Sopenharmony_ci#include "bundle_manager_helper.h" 2099552fe9Sopenharmony_ci#include "common_event_observer.h" 2199552fe9Sopenharmony_ci#ifdef ENABLE_BACKGROUND_TASK_MGR 2299552fe9Sopenharmony_ci#include "background_task_helper.h" 2399552fe9Sopenharmony_ci#endif 2499552fe9Sopenharmony_ci#include "ibundle_manager_helper.h" 2599552fe9Sopenharmony_ci 2699552fe9Sopenharmony_cinamespace { 2799552fe9Sopenharmony_ci static constexpr char TEST_DEFAULT_BUNDLE[] = "bundleName"; 2899552fe9Sopenharmony_ci static constexpr int32_t EXEMPT_ALL_RESOURCES = 100; 2999552fe9Sopenharmony_ci bool g_mockGetAllRunningProcesses = true; 3099552fe9Sopenharmony_ci bool g_mockGetRunningSystemProcess = true; 3199552fe9Sopenharmony_ci bool g_mockGetBackgroundTask = true; 3299552fe9Sopenharmony_ci bool g_mockSubscribeObserver = true; 3399552fe9Sopenharmony_ci} 3499552fe9Sopenharmony_ci 3599552fe9Sopenharmony_cinamespace OHOS { 3699552fe9Sopenharmony_cinamespace DevStandbyMgr { 3799552fe9Sopenharmony_cinamespace { 3899552fe9Sopenharmony_ci std::shared_ptr<IBundleManagerHelper> bundleManagerHelperMock; 3999552fe9Sopenharmony_ci} 4099552fe9Sopenharmony_ci 4199552fe9Sopenharmony_civoid SetBundleManagerHelper(std::shared_ptr<IBundleManagerHelper> mock) 4299552fe9Sopenharmony_ci{ 4399552fe9Sopenharmony_ci bundleManagerHelperMock = mock; 4499552fe9Sopenharmony_ci} 4599552fe9Sopenharmony_ci 4699552fe9Sopenharmony_civoid CleanBundleManagerHelper() 4799552fe9Sopenharmony_ci{ 4899552fe9Sopenharmony_ci bundleManagerHelperMock.reset(); 4999552fe9Sopenharmony_ci} 5099552fe9Sopenharmony_ci 5199552fe9Sopenharmony_cibool BundleManagerHelper::GetApplicationInfo(const std::string &appName, const AppExecFwk::ApplicationFlag flag, 5299552fe9Sopenharmony_ci const int userId, AppExecFwk::ApplicationInfo &appInfo) 5399552fe9Sopenharmony_ci{ 5499552fe9Sopenharmony_ci bool ret {true}; 5599552fe9Sopenharmony_ci if (bundleManagerHelperMock) { 5699552fe9Sopenharmony_ci ret = bundleManagerHelperMock->GetApplicationInfo(appName, flag, userId, appInfo); 5799552fe9Sopenharmony_ci } else { 5899552fe9Sopenharmony_ci appInfo.resourcesApply = { EXEMPT_ALL_RESOURCES }; 5999552fe9Sopenharmony_ci } 6099552fe9Sopenharmony_ci return ret; 6199552fe9Sopenharmony_ci} 6299552fe9Sopenharmony_ci 6399552fe9Sopenharmony_ciuint64_t TimedTask::CreateTimer(bool repeat, uint64_t interval, bool isExact, bool isIdle, 6499552fe9Sopenharmony_ci const std::function<void()>& callBack) 6599552fe9Sopenharmony_ci{ 6699552fe9Sopenharmony_ci return 1; 6799552fe9Sopenharmony_ci} 6899552fe9Sopenharmony_ci 6999552fe9Sopenharmony_cibool TimedTask::StartDayNightSwitchTimer(uint64_t& timeId) 7099552fe9Sopenharmony_ci{ 7199552fe9Sopenharmony_ci return true; 7299552fe9Sopenharmony_ci} 7399552fe9Sopenharmony_ci 7499552fe9Sopenharmony_cibool AbilityManagerHelper::GetRunningSystemProcess(std::list<SystemProcessInfo>& systemProcessInfos) 7599552fe9Sopenharmony_ci{ 7699552fe9Sopenharmony_ci systemProcessInfos.emplace_back(SystemProcessInfo{}); 7799552fe9Sopenharmony_ci return g_mockGetRunningSystemProcess; 7899552fe9Sopenharmony_ci} 7999552fe9Sopenharmony_ci 8099552fe9Sopenharmony_cibool AppMgrHelper::GetAllRunningProcesses(std::vector<AppExecFwk::RunningProcessInfo>& allAppProcessInfos) 8199552fe9Sopenharmony_ci{ 8299552fe9Sopenharmony_ci allAppProcessInfos.emplace_back(AppExecFwk::RunningProcessInfo{}); 8399552fe9Sopenharmony_ci return g_mockGetAllRunningProcesses; 8499552fe9Sopenharmony_ci} 8599552fe9Sopenharmony_ci 8699552fe9Sopenharmony_cibool AppMgrHelper::GetForegroundApplications(std::vector<AppExecFwk::AppStateData>& fgApps) 8799552fe9Sopenharmony_ci{ 8899552fe9Sopenharmony_ci return g_mockGetAllRunningProcesses; 8999552fe9Sopenharmony_ci} 9099552fe9Sopenharmony_ci 9199552fe9Sopenharmony_ci 9299552fe9Sopenharmony_cibool AppMgrHelper::Connect() 9399552fe9Sopenharmony_ci{ 9499552fe9Sopenharmony_ci return true; 9599552fe9Sopenharmony_ci} 9699552fe9Sopenharmony_ci 9799552fe9Sopenharmony_cibool AppMgrHelper::GetAppRunningStateByBundleName(const std::string &bundleName, bool& isRunning) 9899552fe9Sopenharmony_ci{ 9999552fe9Sopenharmony_ci isRunning = true; 10099552fe9Sopenharmony_ci return true; 10199552fe9Sopenharmony_ci} 10299552fe9Sopenharmony_ci 10399552fe9Sopenharmony_cistd::string BundleManagerHelper::GetClientBundleName(int32_t uid) 10499552fe9Sopenharmony_ci{ 10599552fe9Sopenharmony_ci return TEST_DEFAULT_BUNDLE; 10699552fe9Sopenharmony_ci} 10799552fe9Sopenharmony_ci 10899552fe9Sopenharmony_cibool BundleManagerHelper::Connect() 10999552fe9Sopenharmony_ci{ 11099552fe9Sopenharmony_ci return true; 11199552fe9Sopenharmony_ci} 11299552fe9Sopenharmony_ci 11399552fe9Sopenharmony_cibool CommonEventObserver::Subscribe() 11499552fe9Sopenharmony_ci{ 11599552fe9Sopenharmony_ci return true; 11699552fe9Sopenharmony_ci} 11799552fe9Sopenharmony_ci 11899552fe9Sopenharmony_cibool CommonEventObserver::Unsubscribe() 11999552fe9Sopenharmony_ci{ 12099552fe9Sopenharmony_ci return true; 12199552fe9Sopenharmony_ci} 12299552fe9Sopenharmony_ci 12399552fe9Sopenharmony_ci#ifdef ENABLE_BACKGROUND_TASK_MGR 12499552fe9Sopenharmony_cibool BackgroundTaskHelper::GetContinuousTaskApps(std::vector<std::shared_ptr<ContinuousTaskCallbackInfo>> &list) 12599552fe9Sopenharmony_ci{ 12699552fe9Sopenharmony_ci return g_mockGetBackgroundTask; 12799552fe9Sopenharmony_ci} 12899552fe9Sopenharmony_ci 12999552fe9Sopenharmony_cibool BackgroundTaskHelper::GetTransientTaskApps(std::vector<std::shared_ptr<TransientTaskAppInfo>> &list) 13099552fe9Sopenharmony_ci{ 13199552fe9Sopenharmony_ci return g_mockGetBackgroundTask; 13299552fe9Sopenharmony_ci} 13399552fe9Sopenharmony_ci#endif 13499552fe9Sopenharmony_ci 13599552fe9Sopenharmony_cibool AppMgrHelper::SubscribeObserver(const sptr<AppExecFwk::IApplicationStateObserver> &observer) 13699552fe9Sopenharmony_ci{ 13799552fe9Sopenharmony_ci return g_mockSubscribeObserver; 13899552fe9Sopenharmony_ci} 13999552fe9Sopenharmony_ci 14099552fe9Sopenharmony_cibool AppMgrHelper::UnsubscribeObserver(const sptr<AppExecFwk::IApplicationStateObserver> &observer) 14199552fe9Sopenharmony_ci{ 14299552fe9Sopenharmony_ci return g_mockSubscribeObserver; 14399552fe9Sopenharmony_ci} 14499552fe9Sopenharmony_ci 14599552fe9Sopenharmony_civoid IBundleManagerHelper::MockGetAllRunningProcesses(bool mockRet) 14699552fe9Sopenharmony_ci{ 14799552fe9Sopenharmony_ci g_mockGetAllRunningProcesses = mockRet; 14899552fe9Sopenharmony_ci} 14999552fe9Sopenharmony_ci 15099552fe9Sopenharmony_civoid IBundleManagerHelper::MockGetRunningSystemProcess(bool mockRet) 15199552fe9Sopenharmony_ci{ 15299552fe9Sopenharmony_ci g_mockGetRunningSystemProcess = mockRet; 15399552fe9Sopenharmony_ci} 15499552fe9Sopenharmony_ci 15599552fe9Sopenharmony_civoid IBundleManagerHelper::MockGetBackgroundTask(bool mockRet) 15699552fe9Sopenharmony_ci{ 15799552fe9Sopenharmony_ci g_mockGetBackgroundTask = mockRet; 15899552fe9Sopenharmony_ci} 15999552fe9Sopenharmony_ci 16099552fe9Sopenharmony_civoid IBundleManagerHelper::MockSubscribeObserver(bool mockRet) 16199552fe9Sopenharmony_ci{ 16299552fe9Sopenharmony_ci g_mockSubscribeObserver = mockRet; 16399552fe9Sopenharmony_ci} 16499552fe9Sopenharmony_ci} // namespace DevStandbyMgr 16599552fe9Sopenharmony_ci} // namespace OHOS