18d05d8e7Sopenharmony_ci# Copyright (c) 2022 Huawei Device Co., Ltd.
28d05d8e7Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
38d05d8e7Sopenharmony_ci# you may not use this file except in compliance with the License.
48d05d8e7Sopenharmony_ci# You may obtain a copy of the License at
58d05d8e7Sopenharmony_ci#
68d05d8e7Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
78d05d8e7Sopenharmony_ci#
88d05d8e7Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
98d05d8e7Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
108d05d8e7Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
118d05d8e7Sopenharmony_ci# See the License for the specific language governing permissions and
128d05d8e7Sopenharmony_ci# limitations under the License.
138d05d8e7Sopenharmony_ci
148d05d8e7Sopenharmony_ci#####################hydra-fuzz###################
158d05d8e7Sopenharmony_ciimport("//build/config/features.gni")
168d05d8e7Sopenharmony_ciimport("//build/test.gni")
178d05d8e7Sopenharmony_ciimport("//foundation/filemanagement/user_file_service/filemanagement_aafwk.gni")
188d05d8e7Sopenharmony_ci
198d05d8e7Sopenharmony_ci##############################fuzztest##########################################
208d05d8e7Sopenharmony_ciohos_fuzztest("MedialibraryFileAccessFuzzTest") {
218d05d8e7Sopenharmony_ci  module_out_path = "user_file_service/user_file_service"
228d05d8e7Sopenharmony_ci  fuzz_config_file =
238d05d8e7Sopenharmony_ci      "${user_file_service_path}/test/fuzztest/medialibraryfileaccess_fuzzer"
248d05d8e7Sopenharmony_ci
258d05d8e7Sopenharmony_ci  include_dirs = [
268d05d8e7Sopenharmony_ci    "${ability_runtime_path}/interfaces/kits/native/appkit/ability_runtime/context",
278d05d8e7Sopenharmony_ci    "${user_file_service_path}/interfaces/inner_api/file_access/include",
288d05d8e7Sopenharmony_ci    "${user_file_service_path}/utils",
298d05d8e7Sopenharmony_ci  ]
308d05d8e7Sopenharmony_ci
318d05d8e7Sopenharmony_ci  sources = [ "medialibrary_file_access_fuzzer.cpp" ]
328d05d8e7Sopenharmony_ci  configs = [ "//build/config/compiler:exceptions" ]
338d05d8e7Sopenharmony_ci
348d05d8e7Sopenharmony_ci  deps = [
358d05d8e7Sopenharmony_ci    "${ability_runtime_path}/frameworks/native/ability/native:abilitykit_native",
368d05d8e7Sopenharmony_ci    "${ability_runtime_path}/frameworks/native/appkit:app_context",
378d05d8e7Sopenharmony_ci    "${user_file_service_path}/interfaces/inner_api/file_access:file_access_extension_ability_kit",
388d05d8e7Sopenharmony_ci  ]
398d05d8e7Sopenharmony_ci
408d05d8e7Sopenharmony_ci  external_deps = [
418d05d8e7Sopenharmony_ci    "ability_base:want",
428d05d8e7Sopenharmony_ci    "ability_base:zuri",
438d05d8e7Sopenharmony_ci    "ability_runtime:ability_context_native",
448d05d8e7Sopenharmony_ci    "ability_runtime:ability_manager",
458d05d8e7Sopenharmony_ci    "ability_runtime:app_manager",
468d05d8e7Sopenharmony_ci    "ability_runtime:runtime",
478d05d8e7Sopenharmony_ci    "ability_runtime:wantagent_innerkits",
488d05d8e7Sopenharmony_ci    "access_token:libaccesstoken_sdk",
498d05d8e7Sopenharmony_ci    "access_token:libnativetoken",
508d05d8e7Sopenharmony_ci    "access_token:libtoken_setproc",
518d05d8e7Sopenharmony_ci    "c_utils:utils",
528d05d8e7Sopenharmony_ci    "hilog:libhilog",
538d05d8e7Sopenharmony_ci    "ipc:ipc_core",
548d05d8e7Sopenharmony_ci    "ipc:rpc",
558d05d8e7Sopenharmony_ci    "samgr:samgr_proxy",
568d05d8e7Sopenharmony_ci  ]
578d05d8e7Sopenharmony_ci
588d05d8e7Sopenharmony_ci  cflags = [
598d05d8e7Sopenharmony_ci    "-g",
608d05d8e7Sopenharmony_ci    "-O0",
618d05d8e7Sopenharmony_ci    "-Wno-unused-variable",
628d05d8e7Sopenharmony_ci    "-fno-omit-frame-pointer",
638d05d8e7Sopenharmony_ci  ]
648d05d8e7Sopenharmony_ci}
65