1# Copyright (c) 2021-2022 Huawei Device Co., Ltd. 2# Licensed under the Apache License, Version 2.0 (the "License"); 3# you may not use this file except in compliance with the License. 4# You may obtain a copy of the License at 5# 6# http://www.apache.org/licenses/LICENSE-2.0 7# 8# Unless required by applicable law or agreed to in writing, software 9# distributed under the License is distributed on an "AS IS" BASIS, 10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11# See the License for the specific language governing permissions and 12# limitations under the License. 13 14import("//build/test.gni") 15import("../../../../powermgr.gni") 16 17module_output_path = "power_manager/power_manager" 18 19############################################################################### 20config("module_private_config") { 21 visibility = [ ":*" ] 22 23 include_dirs = [ 24 "${powermgr_service_path}/native/src/actions/", 25 "${powermgr_service_path}/native/src/actions/default", 26 "${powermgr_service_path}/native/src/hibernate", 27 "${powermgr_service_path}/native/src/proximity_sensor_controller", 28 "${powermgr_service_path}/native/src/runninglock", 29 "${powermgr_service_path}/native/src/shutdown", 30 "${powermgr_service_path}/native/src/suspend", 31 "${powermgr_service_path}/native/src/wakeup", 32 "${powermgr_service_path}/native/src/screenoffpre", 33 "${powermgr_root_path}/test/unittest/include", 34 "${powermgr_root_path}/test/unittest/include/servicetest", 35 "${powermgr_root_path}/test/unittest/include/servicetest/mock", 36 ] 37 38 if (power_manager_feature_wakeup_action) { 39 include_dirs += [ "${powermgr_service_path}/native/src/wakeup_action" ] 40 } 41} 42 43config("module_mock_private_config") { 44 include_dirs = [ 45 "${powermgr_root_path}/test/unittest/include/mock", 46 "${powermgr_root_path}/test/unittest/mock", 47 "${powermgr_service_zidl}/include", 48 ] 49} 50 51deps_ex = [ 52 "ability_base:base", 53 "ability_base:want", 54 "ability_runtime:ability_manager", 55 "cJSON:cjson", 56 "c_utils:utils", 57 "common_event_service:cesfwk_innerkits", 58 "ffrt:libffrt", 59 "hilog:libhilog", 60 "ipc:ipc_core", 61 "libxml2:libxml2", 62 "power_manager:power_ffrt", 63 "safwk:system_ability_fwk", 64 "samgr:samgr_proxy", 65 "googletest:gtest_main", 66 "window_manager:libwm_lite", 67] 68 69if (has_multimodalinput_input_part) { 70 deps_ex += [ "input:libmmi-client" ] 71} 72 73if (has_sensors_sensor_part) { 74 deps_ex += [ "sensor:sensor_interface_native" ] 75} 76 77##############################native_test########################################## 78ohos_unittest("powermgr_native_test") { 79 sanitize = { 80 cfi = true 81 cfi_cross_dso = true 82 debug = false 83 } 84 85 module_out_path = module_output_path 86 87 sources = [ 88 "powermgr_service_native_test.cpp", 89 "powermgr_service_test_proxy.cpp", 90 ] 91 92 configs = [ 93 "${powermgr_utils_path}:utils_config", 94 ":module_private_config", 95 "${powermgr_utils_path}:coverage_flags", 96 ] 97 98 deps = [ 99 "${powermgr_inner_api}:powermgr_client", 100 "${powermgr_inner_api}:powermgr_stub", 101 "${powermgr_service_path}:powermgrservice", 102 ] 103 104 external_deps = [ "image_framework:image_native" ] 105 external_deps += deps_ex 106 107 if (power_manager_feature_force_sleep_broadcast) { 108 defines += [ "POWER_MANAGER_ENABLE_FORCE_SLEEP_BROADCAST" ] 109 } 110} 111 112##############################native_mock_parcel_test########################################## 113ohos_unittest("powermgr_native_mock_parcel_test") { 114 sanitize = { 115 cfi = true 116 cfi_cross_dso = true 117 debug = false 118 } 119 120 module_out_path = module_output_path 121 122 sources = [ 123 "${powermgr_root_path}/test/unittest/mock/mock_message_parcel.cpp", 124 "${powermgr_root_path}/test/unittest/mock/mock_parcel.cpp", 125 "mock/powermgr_service_mock_parcel_test.cpp", 126 "powermgr_service_test_proxy.cpp", 127 ] 128 129 configs = [ 130 "${powermgr_utils_path}:utils_config", 131 ":module_private_config", 132 ":module_mock_private_config", 133 "${powermgr_utils_path}:coverage_flags", 134 ] 135 136 defines += [ "MOCK_WRITE_INTERFACE_TOKEN_RETURN_TRUE" ] 137 138 deps = [ 139 "${powermgr_inner_api}:powermgr_client", 140 "${powermgr_inner_api}:powermgr_stub", 141 "${powermgr_service_path}:powermgrservice", 142 ] 143 144 external_deps = deps_ex 145} 146 147group("unittest") { 148 testonly = true 149 deps = [ 150 ":powermgr_native_mock_parcel_test", 151 ":powermgr_native_test", 152 ] 153} 154