1# Copyright (c) 2024 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/ohos.gni")
17import("//build/test.gni")
18SMS_MMS_SOURCE_DIR = "../../../"
19
20##############################fuzztest##########################################
21ohos_fuzztest("UnittestFuzzTest") {
22  module_output_path = "sms_mms/sms_mms"
23  module_out_path = module_output_path
24  fuzz_config_file = "$SMS_MMS_SOURCE_DIR/test/fuzztest/unittest_fuzzer"
25
26  include_dirs = [
27    "$SMS_MMS_SOURCE_DIR/frameworks/js/napi/include",
28    "$SMS_MMS_SOURCE_DIR/interfaces/innerkits/",
29    "$SMS_MMS_SOURCE_DIR/interfaces/innerkits/ims",
30    "$SMS_MMS_SOURCE_DIR/services/include",
31    "$SMS_MMS_SOURCE_DIR/test/fuzztest/common_fuzzer",
32  ]
33
34  deps = [
35    "$SMS_MMS_SOURCE_DIR:tel_sms_mms",
36    "$SMS_MMS_SOURCE_DIR/frameworks/native:tel_sms_mms_api",
37  ]
38
39  external_deps = [
40    "ability_runtime:ability_manager",
41    "ability_runtime:data_ability_helper",
42    "access_token:libaccesstoken_sdk",
43    "access_token:libnativetoken",
44    "access_token:libtoken_setproc",
45    "c_utils:utils",
46    "common_event_service:cesfwk_innerkits",
47    "core_service:libtel_common",
48    "core_service:tel_core_service_api",
49    "curl:curl_shared",
50    "data_share:datashare_consumer",
51    "eventhandler:libeventhandler",
52    "hilog:libhilog",
53    "ipc:ipc_single",
54    "libphonenumber:geocoding",
55    "libphonenumber:phonenumber_standard",
56    "napi:ace_napi",
57    "netmanager_base:net_conn_manager_if",
58    "netstack:http_client",
59    "protobuf:protobuf",
60    "telephony_data:tel_telephony_data",
61  ]
62  defines = [
63    "FUZZTEST = 1",
64    "LOG_DOMAIN = 0xD000F00",
65    "TELEPHONY_LOG_TAG = \"SmsMmsFuzzTest\"",
66  ]
67
68  cflags = [
69    "-fno-omit-frame-pointer",
70    "-g",
71    "-O0",
72    "-Wno-unused-variable",
73  ]
74
75  sources = [
76    "$SMS_MMS_SOURCE_DIR/test/fuzztest/common_fuzzer/addsmstoken_fuzzer.cpp",
77    "unittest_fuzzer.cpp",
78  ]
79}
80
81###############################################################################
82group("fuzztest") {
83  testonly = true
84  deps = []
85  deps += [
86    # deps file
87    ":UnittestFuzzTest",
88  ]
89}
90###############################################################################
91