1f857971dSopenharmony_ci# Copyright (c) 2022-2023 Huawei Device Co., Ltd.
2f857971dSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3f857971dSopenharmony_ci# you may not use this file except in compliance with the License.
4f857971dSopenharmony_ci# You may obtain a copy of the License at
5f857971dSopenharmony_ci#
6f857971dSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7f857971dSopenharmony_ci#
8f857971dSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9f857971dSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10f857971dSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11f857971dSopenharmony_ci# See the License for the specific language governing permissions and
12f857971dSopenharmony_ci# limitations under the License.
13f857971dSopenharmony_ci
14f857971dSopenharmony_ciimport("//build/config/features.gni")
15f857971dSopenharmony_ciimport("//build/test.gni")
16f857971dSopenharmony_ciimport("../../../device_status.gni")
17f857971dSopenharmony_ci
18f857971dSopenharmony_cimodule_output_path = "${device_status_fuzz_output_path}"
19f857971dSopenharmony_ci
20f857971dSopenharmony_cideps_ex = [
21f857971dSopenharmony_ci  "ability_runtime:app_manager",
22f857971dSopenharmony_ci  "ability_base:base",
23f857971dSopenharmony_ci  "ability_base:want",
24f857971dSopenharmony_ci  "bundle_framework:appexecfwk_base",
25f857971dSopenharmony_ci  "eventhandler:libeventhandler",
26f857971dSopenharmony_ci  "ipc:ipc_single",
27f857971dSopenharmony_ci  "hilog:libhilog",
28f857971dSopenharmony_ci  "safwk:system_ability_fwk",
29f857971dSopenharmony_ci  "samgr:samgr_proxy",
30f857971dSopenharmony_ci  "c_utils:utils",
31f857971dSopenharmony_ci]
32f857971dSopenharmony_ci
33f857971dSopenharmony_ciohos_fuzztest("DeviceStatusAgentFuzzTest") {
34f857971dSopenharmony_ci  module_out_path = module_output_path
35f857971dSopenharmony_ci  fuzz_config_file = "../devicestatusagent_fuzzer"
36f857971dSopenharmony_ci
37f857971dSopenharmony_ci  include_dirs = [
38f857971dSopenharmony_ci    "./",
39f857971dSopenharmony_ci    "${device_status_interfaces_path}/innerkits/include",
40f857971dSopenharmony_ci  ]
41f857971dSopenharmony_ci
42f857971dSopenharmony_ci  cflags = [
43f857971dSopenharmony_ci    "-g",
44f857971dSopenharmony_ci    "-O0",
45f857971dSopenharmony_ci    "-Wno-unused-variable",
46f857971dSopenharmony_ci    "-fno-omit-frame-pointer",
47f857971dSopenharmony_ci  ]
48f857971dSopenharmony_ci  sources = [ "./devicestatusagent_fuzzer.cpp" ]
49f857971dSopenharmony_ci  deps = [
50f857971dSopenharmony_ci    "${device_status_frameworks_path}/native/src:deviceagent",
51f857971dSopenharmony_ci    "${device_status_interfaces_path}/innerkits:devicestatus_client",
52f857971dSopenharmony_ci  ]
53f857971dSopenharmony_ci
54f857971dSopenharmony_ci  external_deps = deps_ex
55f857971dSopenharmony_ci}
56f857971dSopenharmony_ci
57f857971dSopenharmony_cigroup("fuzztest") {
58f857971dSopenharmony_ci  testonly = true
59f857971dSopenharmony_ci  deps = []
60f857971dSopenharmony_ci
61f857971dSopenharmony_ci  deps += [ ":DeviceStatusAgentFuzzTest" ]
62f857971dSopenharmony_ci}
63