1# Copyright (c) 2022-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 14#####################hydra-fuzz################### 15import("//build/config/features.gni") 16import("//build/ohos.gni") 17import("//build/test.gni") 18module_output_path = "dmsfwk/continuationmanager" 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", 49 "access_token:libtoken_setproc", 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 "os_account:os_account_innerkits", 60 "safwk:system_ability_fwk", 61 "samgr:samgr_proxy", 62] 63 64##############################fuzztest########################################## 65ohos_fuzztest("ContinuationManagerFuzzTest") { 66 module_out_path = module_output_path 67 68 fuzz_config_file = 69 "//foundation/ability/dmsfwk/test/fuzztest/continuationmanager_fuzzer" 70 71 configs = [ 72 ":continuationmanager_fuzz_config", 73 "${distributed_service}/dtbschedmgr/test/resource:coverage_flags", 74 ] 75 76 cflags = [ 77 "-g", 78 "-O0", 79 "-Wno-unused-variable", 80 "-fno-omit-frame-pointer", 81 ] 82 83 sources = [ 84 "continuationmanager_fuzzer.cpp", 85 "fuzz_util.cpp", 86 ] 87 88 sources += dtbabilitymgr_sources 89 90 external_deps = dtbabilitymgr_external_deps 91} 92 93group("fuzztest") { 94 testonly = true 95 deps = [ ":ContinuationManagerFuzzTest" ] 96} 97