122736c2fSopenharmony_ci# Copyright (c) 2022 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("SettingsDataUtilsFuzzTest") {
2322736c2fSopenharmony_ci  module_out_path = "imf/imf"
2422736c2fSopenharmony_ci
2522736c2fSopenharmony_ci  fuzz_config_file =
2622736c2fSopenharmony_ci      "${inputmethod_path}/test/fuzztest/settingsdatautils_fuzzer"
2722736c2fSopenharmony_ci
2822736c2fSopenharmony_ci  include_dirs = [
2922736c2fSopenharmony_ci    "${inputmethod_path}/services/adapter/settings_data_provider/include",
3022736c2fSopenharmony_ci    "${inputmethod_path}/services/adapter/settings_data_provider/common/include",
3122736c2fSopenharmony_ci    "${inputmethod_path}/services/adapter/ime_connection_manager/include",
3222736c2fSopenharmony_ci    "${inputmethod_path}/services/include",
3322736c2fSopenharmony_ci    "${inputmethod_path}/test/common",
3422736c2fSopenharmony_ci  ]
3522736c2fSopenharmony_ci
3622736c2fSopenharmony_ci  cflags = [
3722736c2fSopenharmony_ci    "-g",
3822736c2fSopenharmony_ci    "-O0",
3922736c2fSopenharmony_ci    "-Wno-unused-variable",
4022736c2fSopenharmony_ci    "-fno-omit-frame-pointer",
4122736c2fSopenharmony_ci  ]
4222736c2fSopenharmony_ci
4322736c2fSopenharmony_ci  sources = [
4422736c2fSopenharmony_ci    "${inputmethod_path}/services/adapter/settings_data_provider/common/src/settings_data_utils.cpp",
4522736c2fSopenharmony_ci    "settingsdatautils_fuzzer.cpp",
4622736c2fSopenharmony_ci  ]
4722736c2fSopenharmony_ci
4822736c2fSopenharmony_ci  deps = [
4922736c2fSopenharmony_ci    "${inputmethod_path}/interfaces/inner_api/inputmethod_controller:inputmethod_client_static",
5022736c2fSopenharmony_ci    "${inputmethod_path}/services:inputmethod_service_static",
5122736c2fSopenharmony_ci    "${inputmethod_path}/test/common:inputmethod_test_common",
5222736c2fSopenharmony_ci  ]
5322736c2fSopenharmony_ci
5422736c2fSopenharmony_ci  external_deps = [
5522736c2fSopenharmony_ci    "ability_base:zuri",
5622736c2fSopenharmony_ci    "ability_runtime:dataobs_manager",
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    "resource_management:global_resmgr",
6522736c2fSopenharmony_ci  ]
6622736c2fSopenharmony_ci}
6722736c2fSopenharmony_ci
6822736c2fSopenharmony_ci###############################################################################
6922736c2fSopenharmony_cigroup("fuzztest") {
7022736c2fSopenharmony_ci  testonly = true
7122736c2fSopenharmony_ci  deps = []
7222736c2fSopenharmony_ci  deps += [
7322736c2fSopenharmony_ci    # deps file
7422736c2fSopenharmony_ci    ":SettingsDataUtilsFuzzTest",
7522736c2fSopenharmony_ci  ]
7622736c2fSopenharmony_ci}
7722736c2fSopenharmony_ci###############################################################################
78