1# Copyright (c) 2021-2025 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/ohos.gni") 15import("//build/test.gni") 16import("//foundation/ability/ability_runtime/ability_runtime.gni") 17 18module_output_path = "ability_runtime/ability_runtime/test" 19 20############################################################################### 21config("module_private_config") { 22 visibility = [ ":*" ] 23 cflags = [] 24 if (target_cpu == "arm") { 25 cflags += [ "-DBINDER_IPC_32BIT" ] 26 } 27 include_dirs = [ 28 "${ability_runtime_innerkits_path}/ability_manager/include", 29 "${ability_runtime_services_path}/common/include", 30 "${ability_runtime_test_path}/mock/frameworks_kits_test/AMS", 31 "${ability_runtime_services_path}/common/include", 32 "${ability_runtime_test_path}/mock/frameworks_kits_ability_native_test/include", 33 "${ability_runtime_test_path}/mock/frameworks_kits_test/DemoAbility", 34 "${ability_runtime_services_path}/abilitymgr/include/utils", 35 "${ability_runtime_services_path}/abilitymgr/include", 36 "${ability_runtime_innerkits_path}/dataobs_manager/include", 37 ] 38} 39 40ohos_moduletest("ability_moduletest") { 41 module_out_path = module_output_path 42 sources = [ 43 "${ability_runtime_test_path}/mock/frameworks_kits_ability_native_test/include/mock_bundle_manager.cpp", 44 "${ability_runtime_test_path}/mock/frameworks_kits_ability_native_test/include/mock_overlay_manager.cpp", 45 "${ability_runtime_test_path}/mock/frameworks_kits_ability_native_test/include/sys_mgr_client_mock.cpp", 46 "${ability_runtime_test_path}/mock/frameworks_kits_test/AMS/mock_ability_manager_client.cpp", 47 "${ability_runtime_test_path}/mock/frameworks_kits_test/AMS/mock_ability_manager_service.cpp", 48 "${ability_runtime_test_path}/mock/frameworks_kits_test/DemoAbility/demo_ability_test.cpp", 49 "${ability_runtime_test_path}/mock/frameworks_kits_test/DemoAbility/mock_lifecycle_observer.cpp", 50 "ability_test.cpp", 51 ] 52 53 configs = [ 54 ":module_private_config", 55 "${ability_runtime_native_path}/ability/native:ability_config", 56 ] 57 58 deps = [ 59 "${ability_runtime_innerkits_path}/ability_manager:ability_manager", 60 "${ability_runtime_innerkits_path}/app_manager:app_manager", 61 "${ability_runtime_innerkits_path}/runtime:runtime", 62 "${ability_runtime_native_path}/ability/native:ability_thread", 63 "${ability_runtime_native_path}/ability/native:abilitykit_native", 64 "${ability_runtime_native_path}/ability/native:abilitykit_utils", 65 "${ability_runtime_native_path}/appkit:appkit_native", 66 "${ability_runtime_services_path}/abilitymgr:abilityms", 67 ] 68 69 external_deps = [ 70 "ability_base:base", 71 "ability_base:configuration", 72 "ability_base:session_info", 73 "ability_base:want", 74 "ability_base:zuri", 75 "bundle_framework:appexecfwk_base", 76 "bundle_framework:appexecfwk_core", 77 "c_utils:utils", 78 "eventhandler:libeventhandler", 79 "form_fwk:fmskit_native", 80 "googletest:gmock_main", 81 "googletest:gtest_main", 82 "hilog:libhilog", 83 "image_framework:image_native", 84 "init:libbegetutil", 85 "ipc:ipc_core", 86 "ipc:ipc_napi", 87 "json:nlohmann_json_static", 88 "napi:ace_napi", 89 "relational_store:native_appdatafwk", 90 "relational_store:native_dataability", 91 "relational_store:native_rdb", 92 "resource_management:global_resmgr", 93 "samgr:samgr_proxy", 94 "window_manager:sms", 95 ] 96 97 if (ability_runtime_graphics) { 98 external_deps += [ 99 "input:libmmi-client", 100 "window_manager:libwsutils", 101 ] 102 } 103} 104 105ohos_moduletest("ability_conetxt_test") { 106 module_out_path = module_output_path 107 sources = [ 108 "${ability_runtime_test_path}/mock/frameworks_kits_ability_native_test/include/mock_bundle_manager.cpp", 109 "${ability_runtime_test_path}/mock/frameworks_kits_ability_native_test/include/mock_overlay_manager.cpp", 110 "${ability_runtime_test_path}/mock/frameworks_kits_ability_native_test/include/sys_mgr_client_mock.cpp", 111 "${ability_runtime_test_path}/mock/frameworks_kits_test/AMS/mock_ability_manager_client.cpp", 112 "${ability_runtime_test_path}/mock/frameworks_kits_test/AMS/mock_serviceability_manager_service.cpp", 113 "${ability_runtime_test_path}/mock/frameworks_kits_test/DemoAbility/demo_ability_test.cpp", 114 "${ability_runtime_test_path}/mock/frameworks_kits_test/DemoAbility/mock_lifecycle_observer.cpp", 115 "ability_context_test.cpp", 116 ] 117 118 configs = [ 119 ":module_private_config", 120 "${ability_runtime_native_path}/ability/native:ability_config", 121 ] 122 123 deps = [ 124 "${ability_runtime_innerkits_path}/ability_manager:ability_manager", 125 "${ability_runtime_innerkits_path}/app_manager:app_manager", 126 "${ability_runtime_innerkits_path}/runtime:runtime", 127 "${ability_runtime_native_path}/ability/native:ability_thread", 128 "${ability_runtime_native_path}/ability/native:abilitykit_native", 129 "${ability_runtime_native_path}/ability/native:abilitykit_utils", 130 "${ability_runtime_native_path}/appkit:appkit_native", 131 "${ability_runtime_services_path}/abilitymgr:abilityms", 132 ] 133 134 external_deps = [ 135 "ability_base:base", 136 "ability_base:configuration", 137 "ability_base:session_info", 138 "ability_base:want", 139 "ability_base:zuri", 140 "bundle_framework:appexecfwk_base", 141 "bundle_framework:appexecfwk_core", 142 "c_utils:utils", 143 "eventhandler:libeventhandler", 144 "form_fwk:fmskit_native", 145 "googletest:gmock_main", 146 "googletest:gtest_main", 147 "hilog:libhilog", 148 "init:libbegetutil", 149 "ipc:ipc_core", 150 "ipc:ipc_napi", 151 "json:nlohmann_json_static", 152 "napi:ace_napi", 153 "relational_store:native_appdatafwk", 154 "relational_store:native_dataability", 155 "relational_store:native_rdb", 156 "resource_management:global_resmgr", 157 "samgr:samgr_proxy", 158 "window_manager:sms", 159 ] 160 if (ability_runtime_graphics) { 161 external_deps += [ 162 "input:libmmi-client", 163 "window_manager:libwsutils", 164 ] 165 } 166} 167 168ohos_moduletest("ability_thread_call_request_module_test") { 169 module_out_path = module_output_path 170 sources = [ "ability_thread_call_request_module_test.cpp" ] 171 172 configs = [ ":module_private_config" ] 173 174 deps = [ 175 "${ability_runtime_innerkits_path}/ability_manager:ability_manager", 176 "${ability_runtime_native_path}/ability/native:ability_thread", 177 "${ability_runtime_native_path}/ability/native:abilitykit_native", 178 "${ability_runtime_native_path}/ability/native:abilitykit_utils", 179 "${ability_runtime_native_path}/appkit:app_context", 180 ] 181 182 external_deps = [ 183 "ability_base:configuration", 184 "ability_base:want", 185 "ability_base:zuri", 186 "ability_runtime:runtime", 187 "bundle_framework:appexecfwk_base", 188 "c_utils:utils", 189 "common_event_service:cesfwk_innerkits", 190 "eventhandler:libeventhandler", 191 "form_fwk:fmskit_native", 192 "googletest:gtest_main", 193 "hilog:libhilog", 194 "ipc:ipc_napi", 195 "json:nlohmann_json_static", 196 "napi:ace_napi", 197 "samgr:samgr_proxy", 198 "window_manager:sms", 199 ] 200} 201 202ohos_moduletest("data_ability_operation_moduletest") { 203 module_out_path = module_output_path 204 sources = [ 205 "${ability_runtime_test_path}/mock/frameworks_kits_ability_native_test/include/mock_bundle_manager.cpp", 206 "${ability_runtime_test_path}/mock/frameworks_kits_ability_native_test/include/mock_overlay_manager.cpp", 207 "${ability_runtime_test_path}/mock/frameworks_kits_ability_native_test/include/sys_mgr_client_mock.cpp", 208 "${ability_runtime_test_path}/mock/frameworks_kits_test/AMS/mock_ability_manager_client.cpp", 209 "${ability_runtime_test_path}/mock/frameworks_kits_test/AMS/mock_ability_manager_service.cpp", 210 "${ability_runtime_test_path}/mock/frameworks_kits_test/DemoAbility/demo_ability_test.cpp", 211 "${ability_runtime_test_path}/mock/frameworks_kits_test/DemoAbility/mock_lifecycle_observer.cpp", 212 "data_ability_operation_module_test.cpp", 213 ] 214 215 configs = [ 216 ":module_private_config", 217 "${ability_runtime_native_path}/ability/native:ability_config", 218 ] 219 220 deps = [ 221 "${ability_runtime_innerkits_path}/ability_manager:ability_manager", 222 "${ability_runtime_innerkits_path}/app_manager:app_manager", 223 "${ability_runtime_innerkits_path}/runtime:runtime", 224 "${ability_runtime_native_path}/ability/native:abilitykit_native", 225 "${ability_runtime_services_path}/abilitymgr:abilityms", 226 ] 227 228 external_deps = [ 229 "ability_base:base", 230 "ability_base:configuration", 231 "ability_base:session_info", 232 "ability_base:want", 233 "ability_base:zuri", 234 "bundle_framework:appexecfwk_base", 235 "bundle_framework:appexecfwk_core", 236 "c_utils:utils", 237 "eventhandler:libeventhandler", 238 "form_fwk:fmskit_native", 239 "googletest:gmock_main", 240 "googletest:gtest_main", 241 "hilog:libhilog", 242 "image_framework:image_native", 243 "ipc:ipc_core", 244 "ipc:ipc_napi", 245 "json:nlohmann_json_static", 246 "napi:ace_napi", 247 "relational_store:native_appdatafwk", 248 "relational_store:native_dataability", 249 "relational_store:native_rdb", 250 "resource_management:global_resmgr", 251 "samgr:samgr_proxy", 252 "window_manager:sms", 253 ] 254 255 if (ability_runtime_graphics) { 256 external_deps += [ 257 "input:libmmi-client", 258 "window_manager:libwsutils", 259 ] 260 } 261} 262 263ohos_moduletest("data_ability_helper_module_test") { 264 module_out_path = module_output_path 265 266 include_dirs = [ 267 "${ability_runtime_test_path}/mock/frameworks_kits_test/DemoAbility", 268 "${ability_runtime_test_path}/mock/frameworks_kits_test/DemoObServer", 269 "${ability_runtime_test_path}/mock/frameworks_kits_ability_native_test/include", 270 "${ability_runtime_services_path}/dataobsmgr/include", 271 "${ability_runtime_innerkits_path}/dataobs_manager/include", 272 ] 273 274 sources = [ "data_ability_helper_module_test.cpp" ] 275 276 configs = [ 277 ":module_private_config", 278 "${ability_runtime_native_path}/ability/native:ability_config", 279 ] 280 281 deps = [ 282 "${ability_runtime_innerkits_path}/ability_manager:ability_manager", 283 "${ability_runtime_innerkits_path}/runtime:runtime", 284 "${ability_runtime_native_path}/ability/native:ability_thread", 285 "${ability_runtime_native_path}/ability/native:abilitykit_native", 286 "${ability_runtime_native_path}/ability/native:abilitykit_utils", 287 "${ability_runtime_native_path}/ability/native:data_ability_helper", 288 "${ability_runtime_native_path}/appkit:appkit_native", 289 "${ability_runtime_services_path}/abilitymgr:abilityms", 290 ] 291 292 external_deps = [ 293 "ability_base:base", 294 "ability_base:want", 295 "ability_base:zuri", 296 "bundle_framework:appexecfwk_base", 297 "c_utils:utils", 298 "common_event_service:cesfwk_innerkits", 299 "eventhandler:libeventhandler", 300 "googletest:gmock_main", 301 "googletest:gtest_main", 302 "hilog:libhilog", 303 "ipc:ipc_core", 304 "ipc:ipc_napi", 305 "json:nlohmann_json_static", 306 "napi:ace_napi", 307 "relational_store:native_appdatafwk", 308 "relational_store:native_dataability", 309 "relational_store:native_rdb", 310 "window_manager:sms", 311 ] 312 313 if (ability_runtime_graphics) { 314 external_deps += [ "input:libmmi-client" ] 315 } 316} 317 318ohos_moduletest("ability_post_event_timeout_test") { 319 module_out_path = module_output_path 320 321 include_dirs = [ 322 "${ability_runtime_test_path}/mock/frameworks_kits_test/DemoAbility", 323 "${ability_runtime_test_path}/mock/frameworks_kits_test/DemoObServer", 324 "${ability_runtime_test_path}/mock/frameworks_kits_ability_native_test/include", 325 "${ability_runtime_services_path}/dataobsmgr/include", 326 "${ability_runtime_innerkits_path}/dataobs_manager/include", 327 ] 328 329 sources = [ "ability_post_event_timeout_test.cpp" ] 330 331 configs = [ 332 ":module_private_config", 333 "${ability_runtime_native_path}/ability/native:ability_config", 334 ] 335 336 deps = [ 337 "${ability_runtime_innerkits_path}/ability_manager:ability_manager", 338 "${ability_runtime_native_path}/ability/native:abilitykit_native", 339 "${ability_runtime_native_path}/ability/native:abilitykit_utils", 340 "${ability_runtime_native_path}/ability/native:data_ability_helper", 341 ] 342 343 external_deps = [ 344 "ability_base:base", 345 "ability_base:want", 346 "ability_base:zuri", 347 "bundle_framework:appexecfwk_base", 348 "c_utils:utils", 349 "eventhandler:libeventhandler", 350 "googletest:gmock_main", 351 "googletest:gtest_main", 352 "hilog:libhilog", 353 "ipc:ipc_core", 354 "json:nlohmann_json_static", 355 "napi:ace_napi", 356 "relational_store:native_appdatafwk", 357 "relational_store:native_dataability", 358 "relational_store:native_rdb", 359 ] 360 361 if (ability_runtime_graphics) { 362 external_deps += [ "input:libmmi-client" ] 363 } 364} 365 366################################################################################ 367group("moduletest") { 368 testonly = true 369 370 deps = [] 371 372 if (is_phone_product && !use_libfuzzer) { 373 deps += [ 374 ":ability_conetxt_test", 375 ":ability_moduletest", 376 ":ability_post_event_timeout_test", 377 ":ability_thread_call_request_module_test", 378 ":data_ability_helper_module_test", 379 ":data_ability_operation_moduletest", 380 ] 381 } 382} 383