1# Copyright (c) 2025 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 14#####################hydra-fuzz################### 15import("//build/config/features.gni") 16import("//build/test.gni") 17import("//foundation/distributeddatamgr/relational_store/relational_store.gni") 18 19##############################fuzztest########################################## 20ohos_fuzztest("RdStatementFuzzTest") { 21 module_out_path = "relational_store/relational_store" 22 23 include_dirs = [ 24 "${relational_store_native_path}/rdb/include", 25 "${relational_store_common_path}/include", 26 ] 27 28 cflags = [ 29 "-g", 30 "-O0", 31 "-Wno-unused-variable", 32 "-fno-omit-frame-pointer", 33 ] 34 35 fuzz_config_file = "${relational_store_base_path}/test/native/rdb/fuzztest/rdstatement_fuzzer" 36 37 sources = [ 38 "${relational_store_native_path}/appdatafwk/src/general_endian.cpp", 39 "${relational_store_native_path}/appdatafwk/src/serializable.cpp", 40 "${relational_store_native_path}/rdb/mock/src/rdb_fault_hiview_reporter.cpp", 41 "${relational_store_native_path}/rdb/src/grd_api_manager.cpp", 42 "${relational_store_native_path}/rdb/src/raw_data_parser.cpp", 43 "${relational_store_native_path}/rdb/src/rd_statement.cpp", 44 "${relational_store_native_path}/rdb/src/rd_utils.cpp", 45 "${relational_store_native_path}/rdb/src/sqlite_utils.cpp", 46 "rdstatement_fuzzer.cpp", 47 ] 48 49 deps = [ "${relational_store_innerapi_path}/rdb:native_rdb" ] 50 51 external_deps = [ 52 "ability_base:zuri", 53 "ability_runtime:dataobs_manager", 54 "json:nlohmann_json_static", 55 "c_utils:utils", 56 "hilog:libhilog", 57 "ipc:ipc_core", 58 "kv_store:distributeddata_inner", 59 "kv_store:distributeddb", 60 "kv_store:distributeddb_client", 61 "sqlite:sqlite", 62 ] 63} 64 65############################################################################### 66group("fuzztest") { 67 testonly = true 68 deps = [] 69 deps += [ 70 # deps file 71 ":RdStatementFuzzTest", 72 ] 73} 74############################################################################### 75