122736c2fSopenharmony_ci# Copyright (c) 2022-2002 Huawei Device Co., Ltd.
222736c2fSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
322736c2fSopenharmony_ci# you may not use this file except in compliance with the License.
422736c2fSopenharmony_ci# You may obtain a copy of the License at
522736c2fSopenharmony_ci#
622736c2fSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
722736c2fSopenharmony_ci#
822736c2fSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
922736c2fSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1022736c2fSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1122736c2fSopenharmony_ci# See the License for the specific language governing permissions and
1222736c2fSopenharmony_ci# limitations under the License.
1322736c2fSopenharmony_ci
1422736c2fSopenharmony_ciimport("//base/inputmethod/imf/inputmethod.gni")
1522736c2fSopenharmony_ci
1622736c2fSopenharmony_ci#####################hydra-fuzz###################
1722736c2fSopenharmony_ciimport("//build/config/features.gni")
1822736c2fSopenharmony_ciimport("//build/ohos.gni")
1922736c2fSopenharmony_ciimport("//build/test.gni")
2022736c2fSopenharmony_ci
2122736c2fSopenharmony_ci##############################fuzztest##########################################
2222736c2fSopenharmony_ciohos_fuzztest("InputmethodSystemAbilityFuzzTest") {
2322736c2fSopenharmony_ci  module_out_path = "imf/imf"
2422736c2fSopenharmony_ci
2522736c2fSopenharmony_ci  fuzz_config_file =
2622736c2fSopenharmony_ci      "${inputmethod_path}/test/fuzztest/inputmethodsystemability_fuzzer"
2722736c2fSopenharmony_ci
2822736c2fSopenharmony_ci  include_dirs = [
2922736c2fSopenharmony_ci    "${inputmethod_path}/services/adapter/ime_connection_manager/include",
3022736c2fSopenharmony_ci    "${inputmethod_path}/services/include",
3122736c2fSopenharmony_ci    "${inputmethod_path}/test/common",
3222736c2fSopenharmony_ci  ]
3322736c2fSopenharmony_ci
3422736c2fSopenharmony_ci  cflags = [
3522736c2fSopenharmony_ci    "-g",
3622736c2fSopenharmony_ci    "-O0",
3722736c2fSopenharmony_ci    "-Wno-unused-variable",
3822736c2fSopenharmony_ci    "-fno-omit-frame-pointer",
3922736c2fSopenharmony_ci  ]
4022736c2fSopenharmony_ci
4122736c2fSopenharmony_ci  sources = [
4222736c2fSopenharmony_ci    "${inputmethod_path}/services/adapter/ime_connection_manager/src/ime_connection.cpp",
4322736c2fSopenharmony_ci    "inputmethodsystemability_fuzzer.cpp",
4422736c2fSopenharmony_ci  ]
4522736c2fSopenharmony_ci
4622736c2fSopenharmony_ci  deps = [
4722736c2fSopenharmony_ci    "${inputmethod_path}/interfaces/inner_api/inputmethod_controller:inputmethod_client_static",
4822736c2fSopenharmony_ci    "${inputmethod_path}/services:inputmethod_service_static",
4922736c2fSopenharmony_ci    "${inputmethod_path}/test/common:inputmethod_test_common",
5022736c2fSopenharmony_ci  ]
5122736c2fSopenharmony_ci
5222736c2fSopenharmony_ci  external_deps = [
5322736c2fSopenharmony_ci    "ability_runtime:ability_manager",
5422736c2fSopenharmony_ci    "access_token:libaccesstoken_sdk",
5522736c2fSopenharmony_ci    "access_token:libnativetoken",
5622736c2fSopenharmony_ci    "access_token:libtoken_setproc",
5722736c2fSopenharmony_ci    "bundle_framework:appexecfwk_core",
5822736c2fSopenharmony_ci    "c_utils:utils",
5922736c2fSopenharmony_ci    "data_share:datashare_common",
6022736c2fSopenharmony_ci    "data_share:datashare_consumer",
6122736c2fSopenharmony_ci    "hilog:libhilog",
6222736c2fSopenharmony_ci    "input:libmmi-client",
6322736c2fSopenharmony_ci    "ipc:ipc_single",
6422736c2fSopenharmony_ci  ]
6522736c2fSopenharmony_ci}
6622736c2fSopenharmony_ci
6722736c2fSopenharmony_ci###############################################################################
6822736c2fSopenharmony_cigroup("fuzztest") {
6922736c2fSopenharmony_ci  testonly = true
7022736c2fSopenharmony_ci  deps = []
7122736c2fSopenharmony_ci  deps += [
7222736c2fSopenharmony_ci    # deps file
7322736c2fSopenharmony_ci    ":InputmethodSystemAbilityFuzzTest",
7422736c2fSopenharmony_ci  ]
7522736c2fSopenharmony_ci}
7622736c2fSopenharmony_ci###############################################################################
77