1# Copyright (c) 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("//base/inputmethod/imf/inputmethod.gni") 15 16#####################hydra-fuzz################### 17import("//build/config/features.gni") 18import("//build/ohos.gni") 19import("//build/test.gni") 20 21##############################fuzztest########################################## 22ohos_fuzztest("InputMethodAbilityFuzzTest") { 23 module_out_path = "imf/imf" 24 25 fuzz_config_file = 26 "//base/inputmethod/imf/test/fuzztest/inputmethodability_fuzzer" 27 28 include_dirs = [ "${inputmethod_path}/services/include" ] 29 30 cflags = [ 31 "-g", 32 "-O0", 33 "-Wno-unused-variable", 34 "-fno-omit-frame-pointer", 35 ] 36 configs = [ "${inputmethod_path}/interfaces/inner_api/inputmethod_controller:inputmethod_client_native_public_config" ] 37 sources = [ "inputmethodability_fuzzer.cpp" ] 38 39 deps = [ 40 "${inputmethod_path}/interfaces/inner_api/inputmethod_ability:input_control_channel_proxy", 41 "${inputmethod_path}/interfaces/inner_api/inputmethod_ability:inputmethod_ability_fuzz_static", 42 "${inputmethod_path}/services:inputmethod_service", 43 "${inputmethod_path}/services/json:imf_json_static", 44 "${inputmethod_path}/test/common:inputmethod_test_common", 45 ] 46 47 external_deps = [ 48 "ability_runtime:ability_manager", 49 "ability_runtime:runtime", 50 "c_utils:utils", 51 "hilog:libhilog", 52 "input:libmmi-client", 53 "ipc:ipc_single", 54 "napi:ace_napi", 55 "window_manager:libdm", 56 ] 57 58 if (window_manager_use_sceneboard) { 59 external_deps += [ "window_manager:libwm_lite" ] 60 } else { 61 external_deps += [ "window_manager:libwm" ] 62 } 63} 64 65############################################################################### 66group("fuzztest") { 67 testonly = true 68 deps = [] 69 deps += [ ":InputMethodAbilityFuzzTest" ] 70} 71############################################################################### 72