1# Copyright (c) 2021-2023 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 = "${powermgr_part_name}/powermgr_native" 18 19############################################################################### 20config("module_private_config") { 21 visibility = [ ":*" ] 22 23 include_dirs = [ 24 "include", 25 "mock", 26 "${powermgr_service_path}/native/src/hibernate", 27 "${powermgr_service_path}/native/src/runninglock", 28 "${powermgr_service_path}/native/src/shutdown", 29 "${powermgr_service_path}/native/src/suspend", 30 "${powermgr_service_path}/native/src/wakeup", 31 "${powermgr_service_path}/native/src/screenoffpre", 32 ] 33 34 if (power_manager_feature_wakeup_action) { 35 include_dirs += [ "${powermgr_service_path}/native/src/wakeup_action" ] 36 } 37} 38 39deps_ex = [ 40 "ability_base:base", 41 "ability_base:want", 42 "ability_runtime:ability_manager", 43 "bundle_framework:appexecfwk_base", 44 "bundle_framework:appexecfwk_core", 45 "c_utils:utils", 46 "common_event_service:cesfwk_innerkits", 47 "ffrt:libffrt", 48 "hilog:libhilog", 49 "hisysevent:libhisysevent", 50 "input:libmmi-client", 51 "ipc:ipc_core", 52 "power_manager:power_ffrt", 53 "safwk:system_ability_fwk", 54 "samgr:samgr_proxy", 55] 56 57if (has_sensors_sensor_part) { 58 deps_ex += [ "sensor:sensor_interface_native" ] 59} 60 61##############################systemtest########################################## 62 63ohos_systemtest("ces_system") { 64 module_out_path = module_output_path 65 66 sources = [ "src/ces_system_test.cpp" ] 67 68 configs = [ 69 "${powermgr_utils_path}:utils_config", 70 ":module_private_config", 71 "${powermgr_utils_path}:coverage_flags", 72 ] 73 74 deps = [ 75 "${powermgr_inner_api}:powermgr_client", 76 "${powermgr_service_path}:powermgr_stub", 77 "${powermgr_service_path}:powermgrservice", 78 "${powermgr_service_path}/native/src/actions:powermgr_actions", 79 "//third_party/googletest:gtest_main", 80 ] 81 82 external_deps = deps_ex 83} 84 85##############################mocksystemtest########################################## 86 87ohos_systemtest("test_power_mgr_mock_system") { 88 module_out_path = module_output_path 89 90 sanitize = { 91 cfi = true 92 cfi_cross_dso = true 93 debug = false 94 blocklist = "../cfi_blocklist.txt" 95 } 96 97 sources = [ "src/power_mgr_mock_system_test.cpp" ] 98 99 configs = [ 100 "${powermgr_utils_path}:utils_config", 101 ":module_private_config", 102 "${powermgr_utils_path}:coverage_flags", 103 ] 104 105 deps = [ 106 "${powermgr_inner_api}:powermgr_client", 107 "${powermgr_service_path}:powermgr_stub", 108 "${powermgr_service_path}:powermgrservice", 109 "${powermgr_service_path}/native/src/actions:powermgr_actions", 110 "//third_party/googletest:gmock_main", 111 "//third_party/googletest:gtest_main", 112 ] 113 114 external_deps = deps_ex 115} 116 117################################powersavemode################################ 118 119ohos_systemtest("test_power_mgr_powersavemode") { 120 module_out_path = module_output_path 121 122 sources = [ "src/power_mgr_powersavemode_test.cpp" ] 123 124 sanitize = { 125 cfi = true 126 cfi_cross_dso = true 127 debug = false 128 blocklist = "../cfi_blocklist.txt" 129 } 130 131 configs = [ 132 "${powermgr_utils_path}:utils_config", 133 ":module_private_config", 134 "${powermgr_utils_path}:coverage_flags", 135 ] 136 137 deps = [ 138 "${powermgr_inner_api}:powermgr_client", 139 "${powermgr_service_path}:powermgr_stub", 140 "${powermgr_service_path}:powermgrservice", 141 "${powermgr_service_path}/native/src/actions:powermgr_actions", 142 "//third_party/googletest:gmock_main", 143 "//third_party/googletest:gtest_main", 144 ] 145 146 external_deps = deps_ex 147} 148 149################################powermgrsystem################################ 150 151ohos_systemtest("test_power_mgr_system") { 152 module_out_path = module_output_path 153 154 resource_config_file = 155 "${powermgr_root_path}/test/systemtest/resources/ohos_test.xml" 156 157 sources = [ "src/power_mgr_system_test.cpp" ] 158 159 configs = [ 160 "${powermgr_utils_path}:utils_config", 161 ":module_private_config", 162 "${powermgr_utils_path}:coverage_flags", 163 ] 164 165 deps = [ 166 "${powermgr_inner_api}:powermgr_client", 167 "${powermgr_service_path}:powermgr_stub", 168 "${powermgr_service_path}:powermgrservice", 169 "${powermgr_service_path}/native/src/actions:powermgr_actions", 170 "//third_party/googletest:gmock_main", 171 "//third_party/googletest:gtest_main", 172 ] 173 174 external_deps = deps_ex 175} 176 177################################fastshutdown################################ 178 179ohos_systemtest("test_power_mgr_shutdown_fast") { 180 module_out_path = module_output_path 181 182 sources = [ "src/power_mgr_shutdown_fast_test.cpp" ] 183 184 sanitize = { 185 cfi = true 186 cfi_cross_dso = true 187 debug = false 188 blocklist = "../cfi_blocklist.txt" 189 } 190 191 configs = [ 192 "${powermgr_utils_path}:utils_config", 193 ":module_private_config", 194 "${powermgr_utils_path}:coverage_flags", 195 ] 196 197 deps = [ 198 "${powermgr_inner_api}:powermgr_client", 199 "${powermgr_service_path}:powermgr_stub", 200 "${powermgr_service_path}:powermgrservice", 201 "${powermgr_service_path}/native/src/actions:powermgr_actions", 202 "//third_party/googletest:gmock_main", 203 "//third_party/googletest:gtest_main", 204 ] 205 206 external_deps = deps_ex 207} 208 209################################powerevent################################ 210 211ohos_systemtest("test_power_level_event_system_test_off") { 212 module_out_path = module_output_path 213 214 sources = [ "src/power_level_event_system_test_off.cpp" ] 215 216 sanitize = { 217 cfi = true 218 cfi_cross_dso = true 219 debug = false 220 blocklist = "../cfi_blocklist.txt" 221 } 222 223 configs = [ 224 "${powermgr_utils_path}:utils_config", 225 ":module_private_config", 226 "${powermgr_utils_path}:coverage_flags", 227 ] 228 229 deps = [ 230 "${powermgr_inner_api}:powermgr_client", 231 "${powermgr_service_path}:powermgr_stub", 232 "${powermgr_service_path}:powermgrservice", 233 "${powermgr_service_path}/native/src/actions:powermgr_actions", 234 "//third_party/googletest:gmock_main", 235 "//third_party/googletest:gtest_main", 236 ] 237 238 external_deps = deps_ex 239} 240 241################################powerevent################################ 242 243ohos_systemtest("test_power_level_event_system_test_on") { 244 module_out_path = module_output_path 245 246 sources = [ "src/power_level_event_system_test_on.cpp" ] 247 248 sanitize = { 249 cfi = true 250 cfi_cross_dso = true 251 debug = false 252 blocklist = "../cfi_blocklist.txt" 253 } 254 255 configs = [ 256 "${powermgr_utils_path}:utils_config", 257 ":module_private_config", 258 "${powermgr_utils_path}:coverage_flags", 259 ] 260 261 deps = [ 262 "${powermgr_inner_api}:powermgr_client", 263 "${powermgr_service_path}:powermgr_stub", 264 "${powermgr_service_path}:powermgrservice", 265 "${powermgr_service_path}/native/src/actions:powermgr_actions", 266 "//third_party/googletest:gmock_main", 267 "//third_party/googletest:gtest_main", 268 ] 269 270 external_deps = deps_ex 271} 272 273##############################sttest########################################## 274ohos_systemtest("test_power_st_mgr_mock") { 275 module_out_path = module_output_path 276 277 sanitize = { 278 cfi = true 279 cfi_cross_dso = true 280 debug = false 281 blocklist = "../cfi_blocklist.txt" 282 } 283 284 sources = [ "src/power_mgr_st_mock_test.cpp" ] 285 286 configs = [ 287 "${powermgr_utils_path}:utils_config", 288 ":module_private_config", 289 "${powermgr_utils_path}:coverage_flags", 290 ] 291 292 deps = [ 293 "${powermgr_inner_api}:powermgr_client", 294 "${powermgr_service_path}:powermgr_stub", 295 "${powermgr_service_path}:powermgrservice", 296 "${powermgr_service_path}/native/src/actions:powermgr_actions", 297 "//third_party/googletest:gmock_main", 298 "//third_party/googletest:gtest_main", 299 ] 300 301 external_deps = deps_ex 302} 303 304##############################suspendsttest########################################## 305ohos_systemtest("test_power_st_mgr_mock_suspend") { 306 module_out_path = module_output_path 307 308 sanitize = { 309 cfi = true 310 cfi_cross_dso = true 311 debug = false 312 blocklist = "../cfi_blocklist.txt" 313 } 314 315 sources = [ "src/power_mgr_st_suspend_test.cpp" ] 316 317 configs = [ 318 "${powermgr_utils_path}:utils_config", 319 ":module_private_config", 320 "${powermgr_utils_path}:coverage_flags", 321 ] 322 323 deps = [ 324 "${powermgr_inner_api}:powermgr_client", 325 "${powermgr_service_path}:powermgr_stub", 326 "${powermgr_service_path}:powermgrservice", 327 "${powermgr_service_path}/native/src/actions:powermgr_actions", 328 "//third_party/googletest:gtest_main", 329 ] 330 331 external_deps = deps_ex 332} 333 334group("systemtest_powermgr") { 335 testonly = true 336 deps = [ 337 ":test_power_level_event_system_test_off", 338 ":test_power_level_event_system_test_on", 339 ":test_power_mgr_mock_system", 340 ":test_power_mgr_powersavemode", 341 ":test_power_mgr_shutdown_fast", 342 ":test_power_mgr_system", 343 ":test_power_st_mgr_mock", 344 ":test_power_st_mgr_mock_suspend", 345 ] 346} 347