1 # Copyright (c) 2024 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 
14 #####################hydra-fuzz###################
15 import("//build/config/features.gni")
16 import("//build/ohos.gni")
17 import("//build/test.gni")
18 import("//foundation/ability/ability_runtime/ability_runtime.gni")
19 module_output_path = "ability_runtime/abilitymgr"
20 
21 ##############################fuzztest##########################################
22 ohos_fuzztest("PendingWantManagerFuzzTest") {
23   module_out_path = module_output_path
24 
25   fuzz_config_file =
26       "${ability_runtime_test_path}/fuzztest/pendingwantmanager_fuzzer"
27   include_dirs = [
28     "${ability_runtime_innerkits_path}/ability_manager/include",
29     "${ability_runtime_innerkits_path}/dataobs_manager/include",
30     "${bgtaskmgr_interfaces_path}/innerkits/include",
31     "${multimodalinput_path}/interfaces/native/innerkits/event/include",
32   ]
33   cflags = [
34     "-g",
35     "-O0",
36     "-Wno-unused-variable",
37     "-fno-omit-frame-pointer",
38   ]
39   sources = [ "pendingwantmanager_fuzzer.cpp" ]
40 
41   configs = [
42     "${ability_runtime_innerkits_path}/ability_manager:ability_manager_public_config",
43     "${ability_runtime_services_path}/abilitymgr:abilityms_config",
44   ]
45 
46   deps = [
47     "${ability_runtime_innerkits_path}/ability_manager:ability_manager",
48     "${ability_runtime_innerkits_path}/ability_manager:mission_info",
49     "${ability_runtime_innerkits_path}/uri_permission:uri_permission_mgr",
50     "${ability_runtime_native_path}/ability/native:abilitykit_native",
51     "${ability_runtime_services_path}/abilitymgr:abilityms",
52     "${ability_runtime_services_path}/abilitymgr:mission_list",
53     "${ability_runtime_services_path}/abilitymgr:wantagent_manager",
54     "//third_party/jsoncpp:jsoncpp",
55   ]
56 
57   external_deps = [
58     "ability_base:want",
59     "ability_base:zuri",
60     "ability_runtime:ability_deps_wrapper",
61     "ability_runtime:connection_obs_manager",
62     "bundle_framework:appexecfwk_base",
63     "c_utils:utils",
64     "common_event_service:cesfwk_core",
65     "common_event_service:cesfwk_innerkits",
66     "ffrt:libffrt",
67     "ipc:ipc_core",
68     "napi:ace_napi",
69     "relational_store:native_dataability",
70     "relational_store:native_rdb",
71     "samgr:samgr_proxy",
72   ]
73 
74   if (ability_runtime_graphics) {
75     deps += []
76     external_deps += [
77       "i18n:intl_util",
78       "window_manager:libwm",
79     ]
80   }
81 }
82 
83 ###############################################################################
84 group("fuzztest") {
85   testonly = true
86   deps = []
87   deps += [
88     # deps file
89     ":PendingWantManagerFuzzTest",
90   ]
91 }
92 ###############################################################################
93