1e5d0e473Sopenharmony_ci# Copyright (c) 2022 Huawei Device Co., Ltd.
2e5d0e473Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3e5d0e473Sopenharmony_ci# you may not use this file except in compliance with the License.
4e5d0e473Sopenharmony_ci# You may obtain a copy of the License at
5e5d0e473Sopenharmony_ci#
6e5d0e473Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7e5d0e473Sopenharmony_ci#
8e5d0e473Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9e5d0e473Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10e5d0e473Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11e5d0e473Sopenharmony_ci# See the License for the specific language governing permissions and
12e5d0e473Sopenharmony_ci# limitations under the License.
13e5d0e473Sopenharmony_ci
14e5d0e473Sopenharmony_ci#####################hydra-fuzz###################
15e5d0e473Sopenharmony_ciimport("//build/config/features.gni")
16e5d0e473Sopenharmony_ciimport("//build/ohos.gni")
17e5d0e473Sopenharmony_ciimport("//build/test.gni")
18e5d0e473Sopenharmony_ciSMS_MMS_SOURCE_DIR = "../../../"
19e5d0e473Sopenharmony_ci
20e5d0e473Sopenharmony_ci##############################fuzztest##########################################
21e5d0e473Sopenharmony_ciohos_fuzztest("GsmSmsMessageFuzzTest") {
22e5d0e473Sopenharmony_ci  module_output_path = "sms_mms/sms_mms"
23e5d0e473Sopenharmony_ci  module_out_path = module_output_path
24e5d0e473Sopenharmony_ci  fuzz_config_file = "$SMS_MMS_SOURCE_DIR/test/fuzztest/gsmsmsmessage_fuzzer"
25e5d0e473Sopenharmony_ci
26e5d0e473Sopenharmony_ci  include_dirs = [
27e5d0e473Sopenharmony_ci    "$SMS_MMS_SOURCE_DIR/frameworks/js/napi/include",
28e5d0e473Sopenharmony_ci    "$SMS_MMS_SOURCE_DIR/services/include",
29e5d0e473Sopenharmony_ci    "$SMS_MMS_SOURCE_DIR/test/fuzztest/common_fuzzer",
30e5d0e473Sopenharmony_ci    "$SMS_MMS_SOURCE_DIR/interfaces/innerkits/",
31e5d0e473Sopenharmony_ci    "$SMS_MMS_SOURCE_DIR/interfaces/innerkits/ims",
32e5d0e473Sopenharmony_ci    "//third_party/libphonenumber/cpp/src",
33e5d0e473Sopenharmony_ci    "//third_party/libphonenumber/cpp/src/phonenumbers",
34e5d0e473Sopenharmony_ci    "//third_party/protobuf/src",
35e5d0e473Sopenharmony_ci  ]
36e5d0e473Sopenharmony_ci
37e5d0e473Sopenharmony_ci  deps = [
38e5d0e473Sopenharmony_ci    "$SMS_MMS_SOURCE_DIR:tel_sms_mms",
39e5d0e473Sopenharmony_ci    "$SMS_MMS_SOURCE_DIR/frameworks/native:tel_sms_mms_api",
40e5d0e473Sopenharmony_ci    "//third_party/libphonenumber/cpp:phonenumber_standard",
41e5d0e473Sopenharmony_ci  ]
42e5d0e473Sopenharmony_ci
43e5d0e473Sopenharmony_ci  external_deps = [
44e5d0e473Sopenharmony_ci    "ability_runtime:ability_manager",
45e5d0e473Sopenharmony_ci    "ability_runtime:data_ability_helper",
46e5d0e473Sopenharmony_ci    "access_token:libaccesstoken_sdk",
47e5d0e473Sopenharmony_ci    "access_token:libnativetoken",
48e5d0e473Sopenharmony_ci    "access_token:libtoken_setproc",
49e5d0e473Sopenharmony_ci    "curl:curl_shared",
50e5d0e473Sopenharmony_ci    "c_utils:utils",
51e5d0e473Sopenharmony_ci    "common_event_service:cesfwk_innerkits",
52e5d0e473Sopenharmony_ci    "core_service:libtel_common",
53e5d0e473Sopenharmony_ci    "core_service:tel_core_service_api",
54e5d0e473Sopenharmony_ci    "data_share:datashare_consumer",
55e5d0e473Sopenharmony_ci    "eventhandler:libeventhandler",
56e5d0e473Sopenharmony_ci    "hilog:libhilog",
57e5d0e473Sopenharmony_ci    "ipc:ipc_single",
58e5d0e473Sopenharmony_ci    "napi:ace_napi",
59e5d0e473Sopenharmony_ci    "netmanager_base:net_conn_manager_if",
60e5d0e473Sopenharmony_ci    "netstack:http_client",
61e5d0e473Sopenharmony_ci    "telephony_data:tel_telephony_data",
62e5d0e473Sopenharmony_ci  ]
63e5d0e473Sopenharmony_ci  defines = [
64e5d0e473Sopenharmony_ci    "TELEPHONY_LOG_TAG = \"SmsMmsFuzzTest\"",
65e5d0e473Sopenharmony_ci    "LOG_DOMAIN = 0xD000F00",
66e5d0e473Sopenharmony_ci  ]
67e5d0e473Sopenharmony_ci
68e5d0e473Sopenharmony_ci  cflags = [
69e5d0e473Sopenharmony_ci    "-g",
70e5d0e473Sopenharmony_ci    "-O0",
71e5d0e473Sopenharmony_ci    "-Wno-unused-variable",
72e5d0e473Sopenharmony_ci    "-fno-omit-frame-pointer",
73e5d0e473Sopenharmony_ci  ]
74e5d0e473Sopenharmony_ci
75e5d0e473Sopenharmony_ci  sources = [
76e5d0e473Sopenharmony_ci    "$SMS_MMS_SOURCE_DIR/test/fuzztest/common_fuzzer/addsmstoken_fuzzer.cpp",
77e5d0e473Sopenharmony_ci    "gsmsmsmessage_fuzzer.cpp",
78e5d0e473Sopenharmony_ci  ]
79e5d0e473Sopenharmony_ci}
80e5d0e473Sopenharmony_ci
81e5d0e473Sopenharmony_ci###############################################################################
82e5d0e473Sopenharmony_cigroup("fuzztest") {
83e5d0e473Sopenharmony_ci  testonly = true
84e5d0e473Sopenharmony_ci  deps = []
85e5d0e473Sopenharmony_ci  deps += [
86e5d0e473Sopenharmony_ci    # deps file
87e5d0e473Sopenharmony_ci    ":GsmSmsMessageFuzzTest",
88e5d0e473Sopenharmony_ci  ]
89e5d0e473Sopenharmony_ci}
90e5d0e473Sopenharmony_ci###############################################################################
91