199552fe9Sopenharmony_ci# Copyright (c) 2022-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("DeviceStandbyFuzzTest") {
2299552fe9Sopenharmony_ci  module_out_path = module_output_path
2399552fe9Sopenharmony_ci  fuzz_config_file =
2499552fe9Sopenharmony_ci      "${standby_service_path}/test/fuzztest/devicestandby_fuzzer"
2599552fe9Sopenharmony_ci
2699552fe9Sopenharmony_ci  include_dirs = [
2799552fe9Sopenharmony_ci    "${standby_service_path}/include",
2899552fe9Sopenharmony_ci    "${standby_innerkits_path}:standby_innerkits",
2999552fe9Sopenharmony_ci    "${standby_utils_common_path}:standby_utils_common",
3099552fe9Sopenharmony_ci    "${standby_utils_policy_path}:standby_utils_policy",
3199552fe9Sopenharmony_ci  ]
3299552fe9Sopenharmony_ci
3399552fe9Sopenharmony_ci  cflags = [
3499552fe9Sopenharmony_ci    "-g",
3599552fe9Sopenharmony_ci    "-O0",
3699552fe9Sopenharmony_ci    "-Wno-unused-variable",
3799552fe9Sopenharmony_ci    "-fno-omit-frame-pointer",
3899552fe9Sopenharmony_ci  ]
3999552fe9Sopenharmony_ci
4099552fe9Sopenharmony_ci  cflags_cc = [
4199552fe9Sopenharmony_ci    "-Dprivate=public",
4299552fe9Sopenharmony_ci    "-Dprotected=public",
4399552fe9Sopenharmony_ci  ]
4499552fe9Sopenharmony_ci
4599552fe9Sopenharmony_ci  deps = [
4699552fe9Sopenharmony_ci    "${standby_innerkits_path}:standby_innerkits",
4799552fe9Sopenharmony_ci    "${standby_service_frameworks_path}:standby_fwk",
4899552fe9Sopenharmony_ci    "${standby_service_path}:standby_service_static",
4999552fe9Sopenharmony_ci    "${standby_utils_common_path}:standby_utils_common",
5099552fe9Sopenharmony_ci    "${standby_utils_policy_path}:standby_utils_policy",
5199552fe9Sopenharmony_ci  ]
5299552fe9Sopenharmony_ci
5399552fe9Sopenharmony_ci  sources = [ "devicestandby_fuzzer.cpp" ]
5499552fe9Sopenharmony_ci
5599552fe9Sopenharmony_ci  external_deps = [
5699552fe9Sopenharmony_ci    "ability_base:base",
5799552fe9Sopenharmony_ci    "ability_base:want",
5899552fe9Sopenharmony_ci    "ability_base:zuri",
5999552fe9Sopenharmony_ci    "ability_runtime:app_manager",
6099552fe9Sopenharmony_ci    "ability_runtime:wantagent_innerkits",
6199552fe9Sopenharmony_ci    "bundle_framework:appexecfwk_base",
6299552fe9Sopenharmony_ci    "c_utils:utils",
6399552fe9Sopenharmony_ci    "common_event_service:cesfwk_innerkits",
6499552fe9Sopenharmony_ci    "eventhandler:libeventhandler",
6599552fe9Sopenharmony_ci    "hilog:libhilog",
6699552fe9Sopenharmony_ci    "init:libbegetutil",
6799552fe9Sopenharmony_ci    "ipc:ipc_single",
6899552fe9Sopenharmony_ci    "safwk:system_ability_fwk",
6999552fe9Sopenharmony_ci    "samgr:samgr_proxy",
7099552fe9Sopenharmony_ci    "time_service:time_client",
7199552fe9Sopenharmony_ci  ]
7299552fe9Sopenharmony_ci
7399552fe9Sopenharmony_ci  defines = []
7499552fe9Sopenharmony_ci  if (standby_power_manager_enable) {
7599552fe9Sopenharmony_ci    external_deps += [ "power_manager:powermgr_client" ]
7699552fe9Sopenharmony_ci    defines += [ "STANDBY_POWER_MANAGER_ENABLE" ]
7799552fe9Sopenharmony_ci  }
7899552fe9Sopenharmony_ci  if (device_standby_access_token_enable) {
7999552fe9Sopenharmony_ci    external_deps += [
8099552fe9Sopenharmony_ci      "access_token:libaccesstoken_sdk",
8199552fe9Sopenharmony_ci      "access_token:libnativetoken",
8299552fe9Sopenharmony_ci      "access_token:libtoken_setproc",
8399552fe9Sopenharmony_ci      "access_token:libtokenid_sdk",
8499552fe9Sopenharmony_ci    ]
8599552fe9Sopenharmony_ci    defines += [ "DEVICE_STANDBY_ACCESS_TOKEN_ENABLE" ]
8699552fe9Sopenharmony_ci  }
8799552fe9Sopenharmony_ci}
8899552fe9Sopenharmony_ci
8999552fe9Sopenharmony_ci###############################################################################
9099552fe9Sopenharmony_cigroup("fuzztest") {
9199552fe9Sopenharmony_ci  testonly = true
9299552fe9Sopenharmony_ci  deps = []
9399552fe9Sopenharmony_ci  deps += [
9499552fe9Sopenharmony_ci    # deps file
9599552fe9Sopenharmony_ci    ":DeviceStandbyFuzzTest",
9699552fe9Sopenharmony_ci  ]
9799552fe9Sopenharmony_ci}
9899552fe9Sopenharmony_ci###############################################################################
99