1# Copyright (c) 2022-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################### 15import("//build/config/features.gni") 16import("//build/ohos.gni") 17import("//build/test.gni") 18import("//foundation/ability/dmsfwk/dmsfwk.gni") 19distributed_service = "//foundation/ability/dmsfwk/services" 20 21config("continuationmanager_fuzz_config") { 22 visibility = [ ":*" ] 23 include_dirs = [ 24 "${distributed_service}/dtbabilitymgr/include/", 25 "//foundation/ability/dmsfwk/interfaces/innerkits/continuation_manager/include/", 26 ] 27} 28 29dtbabilitymgr_sources = [ 30 "${distributed_service}/dtbabilitymgr/src/continuation_manager/app_connection_stub.cpp", 31 "${distributed_service}/dtbabilitymgr/src/continuation_manager/app_device_callback_stub.cpp", 32 "${distributed_service}/dtbabilitymgr/src/continuation_manager/connect_status_info.cpp", 33 "${distributed_service}/dtbabilitymgr/src/continuation_manager/continuation_extra_params.cpp", 34 "${distributed_service}/dtbabilitymgr/src/continuation_manager/continuation_result.cpp", 35 "${distributed_service}/dtbabilitymgr/src/continuation_manager/device_selection_notifier_proxy.cpp", 36 "${distributed_service}/dtbabilitymgr/src/continuation_manager/device_selection_notifier_stub.cpp", 37 "${distributed_service}/dtbabilitymgr/src/continuation_manager/notifier_death_recipient.cpp", 38 "${distributed_service}/dtbabilitymgr/src/continuation_manager/notifier_info.cpp", 39 "${distributed_service}/dtbabilitymgr/src/distributed_ability_manager_dumper.cpp", 40 "${distributed_service}/dtbabilitymgr/src/distributed_ability_manager_service.cpp", 41 "${distributed_service}/dtbabilitymgr/src/distributed_ability_manager_stub.cpp", 42] 43 44dtbabilitymgr_external_deps = [ 45 "ability_base:want", 46 "ability_runtime:ability_manager", 47 "access_token:libaccesstoken_sdk", 48 "access_token:libnativetoken_shared", 49 "access_token:libtokensetproc_shared", 50 "bundle_framework:appexecfwk_base", 51 "bundle_framework:appexecfwk_core", 52 "c_utils:utils", 53 "device_manager:devicemanagersdk", 54 "eventhandler:libeventhandler", 55 "ffrt:libffrt", 56 "hilog:libhilog", 57 "init:libbegetutil", 58 "ipc:ipc_core", 59 "safwk:system_ability_fwk", 60 "samgr:samgr_proxy", 61] 62if (os_account_part) { 63 dtbabilitymgr_external_deps += [ "os_account:os_account_innerkits" ] 64} 65 66##############################fuzztest########################################## 67ohos_fuzztest("ContinuationManagerFuzzTest") { 68 module_out_path = module_output_path 69 70 fuzz_config_file = 71 "//foundation/ability/dmsfwk/test/fuzztest/continuationmanager_fuzzer" 72 73 configs = [ 74 ":continuationmanager_fuzz_config", 75 "${distributed_service}/dtbschedmgr/test/resource:coverage_flags", 76 ] 77 78 cflags = [ 79 "-g", 80 "-O0", 81 "-Wno-unused-variable", 82 "-fno-omit-frame-pointer", 83 ] 84 85 sources = [ 86 "continuationmanager_fuzzer.cpp", 87 "fuzz_util.cpp", 88 ] 89 90 sources += dtbabilitymgr_sources 91 92 external_deps = dtbabilitymgr_external_deps 93} 94 95group("fuzztest") { 96 testonly = true 97 deps = [ ":ContinuationManagerFuzzTest" ] 98} 99