199552fe9Sopenharmony_ci# Copyright (c) 2024 Huawei Device Co., Ltd.
299552fe9Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
399552fe9Sopenharmony_ci# you may not use this file except in compliance with the License.
499552fe9Sopenharmony_ci# You may obtain a copy of the License at
599552fe9Sopenharmony_ci#
699552fe9Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
799552fe9Sopenharmony_ci#
899552fe9Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
999552fe9Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1099552fe9Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1199552fe9Sopenharmony_ci# See the License for the specific language governing permissions and
1299552fe9Sopenharmony_ci# limitations under the License.
1399552fe9Sopenharmony_ci
1499552fe9Sopenharmony_ci#####################hydra-fuzz###################
1599552fe9Sopenharmony_ciimport("//build/config/features.gni")
1699552fe9Sopenharmony_ciimport("//build/test.gni")
1799552fe9Sopenharmony_ciimport("//foundation/resourceschedule/device_standby/standby_service.gni")
1899552fe9Sopenharmony_cimodule_output_path = "device_standby/device_standby"
1999552fe9Sopenharmony_ci
2099552fe9Sopenharmony_ci##############################fuzztest##########################################
2199552fe9Sopenharmony_ciohos_fuzztest("ConfigManagerFuzzTest") {
2299552fe9Sopenharmony_ci  module_out_path = module_output_path
2399552fe9Sopenharmony_ci  fuzz_config_file =
2499552fe9Sopenharmony_ci      "${standby_service_utils_path}/test/fuzztest/configmanager_fuzzer"
2599552fe9Sopenharmony_ci
2699552fe9Sopenharmony_ci  include_dirs = [
2799552fe9Sopenharmony_ci    "${standby_utils_common_path}:standby_utils_common",
2899552fe9Sopenharmony_ci    "${standby_utils_policy_path}:standby_utils_policy",
2999552fe9Sopenharmony_ci  ]
3099552fe9Sopenharmony_ci
3199552fe9Sopenharmony_ci  cflags = [
3299552fe9Sopenharmony_ci    "-g",
3399552fe9Sopenharmony_ci    "-O0",
3499552fe9Sopenharmony_ci    "-Wno-unused-variable",
3599552fe9Sopenharmony_ci    "-fno-omit-frame-pointer",
3699552fe9Sopenharmony_ci  ]
3799552fe9Sopenharmony_ci
3899552fe9Sopenharmony_ci  cflags_cc = [
3999552fe9Sopenharmony_ci    "-Dprivate=public",
4099552fe9Sopenharmony_ci    "-Dprotected=public",
4199552fe9Sopenharmony_ci  ]
4299552fe9Sopenharmony_ci
4399552fe9Sopenharmony_ci  deps = [
4499552fe9Sopenharmony_ci    "${standby_utils_common_path}:standby_utils_common",
4599552fe9Sopenharmony_ci    "${standby_utils_policy_path}:standby_utils_policy_static",
4699552fe9Sopenharmony_ci  ]
4799552fe9Sopenharmony_ci
4899552fe9Sopenharmony_ci  sources = [ "configmanager_fuzzer.cpp" ]
4999552fe9Sopenharmony_ci
5099552fe9Sopenharmony_ci  external_deps = [
5199552fe9Sopenharmony_ci    "c_utils:utils",
5299552fe9Sopenharmony_ci    "hilog:libhilog",
5399552fe9Sopenharmony_ci    "ipc:ipc_single",
5499552fe9Sopenharmony_ci    "json:nlohmann_json_static",
5599552fe9Sopenharmony_ci  ]
5699552fe9Sopenharmony_ci}
5799552fe9Sopenharmony_ci
5899552fe9Sopenharmony_ci###############################################################################
5999552fe9Sopenharmony_cigroup("fuzztest") {
6099552fe9Sopenharmony_ci  testonly = true
6199552fe9Sopenharmony_ci  deps = []
6299552fe9Sopenharmony_ci  deps += [
6399552fe9Sopenharmony_ci    # deps file
6499552fe9Sopenharmony_ci    ":ConfigManagerFuzzTest",
6599552fe9Sopenharmony_ci  ]
6699552fe9Sopenharmony_ci}
6799552fe9Sopenharmony_ci###############################################################################
68