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