146debc2cSopenharmony_ci# Copyright (c) 2024 Huawei Device Co., Ltd.
246debc2cSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
346debc2cSopenharmony_ci# you may not use this file except in compliance with the License.
446debc2cSopenharmony_ci# You may obtain a copy of the License at
546debc2cSopenharmony_ci#
646debc2cSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
746debc2cSopenharmony_ci#
846debc2cSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
946debc2cSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1046debc2cSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1146debc2cSopenharmony_ci# See the License for the specific language governing permissions and
1246debc2cSopenharmony_ci# limitations under the License.
1346debc2cSopenharmony_ci
1446debc2cSopenharmony_ciimport("//base/print/print_fwk/print.gni")
1546debc2cSopenharmony_ciimport("//build/config/features.gni")
1646debc2cSopenharmony_ciimport("//build/ohos.gni")
1746debc2cSopenharmony_ciimport("//build/test.gni")
1846debc2cSopenharmony_ci
1946debc2cSopenharmony_ciohos_fuzztest("ScanHelperFuzzTest") {
2046debc2cSopenharmony_ci  module_out_path = fuzz_test_output_path
2146debc2cSopenharmony_ci
2246debc2cSopenharmony_ci  fuzz_config_file = "${print_path}/test/fuzztest/scanhelper_fuzzer"
2346debc2cSopenharmony_ci
2446debc2cSopenharmony_ci  include_dirs = [
2546debc2cSopenharmony_ci    "//third_party/node/${print_path}/frameworks/helper/scan_helper/src",
2646debc2cSopenharmony_ci    "//third_party/curl/include",
2746debc2cSopenharmony_ci    "${print_path}/frameworks/innerkitsimpl/scan_impl/include",
2846debc2cSopenharmony_ci    "${print_path}/frameworks/helper/scan_helper/include",
2946debc2cSopenharmony_ci    "${print_utils_path}/include",
3046debc2cSopenharmony_ci  ]
3146debc2cSopenharmony_ci
3246debc2cSopenharmony_ci  cflags = [
3346debc2cSopenharmony_ci    "-g",
3446debc2cSopenharmony_ci    "-O0",
3546debc2cSopenharmony_ci    "-Wno-unused-variable",
3646debc2cSopenharmony_ci    "-fno-omit-frame-pointer",
3746debc2cSopenharmony_ci  ]
3846debc2cSopenharmony_ci
3946debc2cSopenharmony_ci  deps = [ "${print_path}/frameworks/helper/scan_helper:scan_helper" ]
4046debc2cSopenharmony_ci
4146debc2cSopenharmony_ci  external_deps = [
4246debc2cSopenharmony_ci    "ability_base:want",
4346debc2cSopenharmony_ci    "ability_runtime:ability_manager",
4446debc2cSopenharmony_ci    "ability_runtime:abilitykit_native",
4546debc2cSopenharmony_ci    "ability_runtime:data_ability_helper",
4646debc2cSopenharmony_ci    "ability_runtime:napi_base_context",
4746debc2cSopenharmony_ci    "c_utils:utils",
4846debc2cSopenharmony_ci    "common_event_service:cesfwk_innerkits",
4946debc2cSopenharmony_ci    "eventhandler:libeventhandler",
5046debc2cSopenharmony_ci    "hilog:libhilog",
5146debc2cSopenharmony_ci    "ipc:ipc_core",
5246debc2cSopenharmony_ci    "napi:ace_napi",
5346debc2cSopenharmony_ci    "samgr:samgr_proxy",
5446debc2cSopenharmony_ci  ]
5546debc2cSopenharmony_ci
5646debc2cSopenharmony_ci  if (security_guard_enabled) {
5746debc2cSopenharmony_ci    external_deps += [
5846debc2cSopenharmony_ci      "security_guard:libsg_collect_sdk",
5946debc2cSopenharmony_ci      "time_service:time_client",
6046debc2cSopenharmony_ci    ]
6146debc2cSopenharmony_ci  }
6246debc2cSopenharmony_ci
6346debc2cSopenharmony_ci  sources = [ "scanhelper_fuzzer.cpp" ]
6446debc2cSopenharmony_ci}
6546debc2cSopenharmony_ci
6646debc2cSopenharmony_cigroup("fuzztest") {
6746debc2cSopenharmony_ci  testonly = true
6846debc2cSopenharmony_ci  deps = []
6946debc2cSopenharmony_ci  deps += [
7046debc2cSopenharmony_ci    # deps file
7146debc2cSopenharmony_ci    ":ScanHelperFuzzTest",
7246debc2cSopenharmony_ci  ]
7346debc2cSopenharmony_ci}
74