1cc290419Sopenharmony_ci# Copyright (C) 2021 Huawei Device Co., Ltd.
2cc290419Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3cc290419Sopenharmony_ci# you may not use this file except in compliance with the License.
4cc290419Sopenharmony_ci# You may obtain a copy of the License at
5cc290419Sopenharmony_ci#
6cc290419Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7cc290419Sopenharmony_ci#
8cc290419Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9cc290419Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10cc290419Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11cc290419Sopenharmony_ci# See the License for the specific language governing permissions and
12cc290419Sopenharmony_ci# limitations under the License.
13cc290419Sopenharmony_ciimport("//build/test.gni")
14cc290419Sopenharmony_ciimport("//developtools/hdc/hdc.gni")
15cc290419Sopenharmony_cihdc_path = "//developtools/hdc/"
16cc290419Sopenharmony_cimodule_output_path = "developtools/hdc/"
17cc290419Sopenharmony_cideclare_args() {
18cc290419Sopenharmony_ci  hdc_unit_test = true
19cc290419Sopenharmony_ci  hdc_fuzz_test = true
20cc290419Sopenharmony_ci}
21cc290419Sopenharmony_ci
22cc290419Sopenharmony_cihdc_common_sources = [
23cc290419Sopenharmony_ci  "${hdc_path}/src/common/async_cmd.cpp",
24cc290419Sopenharmony_ci  "${hdc_path}/src/common/auth.cpp",
25cc290419Sopenharmony_ci  "${hdc_path}/src/common/base.cpp",
26cc290419Sopenharmony_ci  "${hdc_path}/src/common/channel.cpp",
27cc290419Sopenharmony_ci  "${hdc_path}/src/common/circle_buffer.cpp",
28cc290419Sopenharmony_ci  "${hdc_path}/src/common/debug.cpp",
29cc290419Sopenharmony_ci  "${hdc_path}/src/common/file.cpp",
30cc290419Sopenharmony_ci  "${hdc_path}/src/common/file_descriptor.cpp",
31cc290419Sopenharmony_ci  "${hdc_path}/src/common/forward.cpp",
32cc290419Sopenharmony_ci  "${hdc_path}/src/common/session.cpp",
33cc290419Sopenharmony_ci  "${hdc_path}/src/common/task.cpp",
34cc290419Sopenharmony_ci  "${hdc_path}/src/common/tcp.cpp",
35cc290419Sopenharmony_ci  "${hdc_path}/src/common/transfer.cpp",
36cc290419Sopenharmony_ci  "${hdc_path}/src/common/usb.cpp",
37cc290419Sopenharmony_ci]
38cc290419Sopenharmony_ci
39cc290419Sopenharmony_cihdc_daemon_sources = [
40cc290419Sopenharmony_ci  "${hdc_path}/src/daemon/daemon.cpp",
41cc290419Sopenharmony_ci  "${hdc_path}/src/daemon/daemon_app.cpp",
42cc290419Sopenharmony_ci  "${hdc_path}/src/daemon/daemon_forward.cpp",
43cc290419Sopenharmony_ci  "${hdc_path}/src/daemon/daemon_tcp.cpp",
44cc290419Sopenharmony_ci  "${hdc_path}/src/daemon/daemon_unity.cpp",
45cc290419Sopenharmony_ci  "${hdc_path}/src/daemon/daemon_usb.cpp",
46cc290419Sopenharmony_ci  "${hdc_path}/src/daemon/jdwp.cpp",
47cc290419Sopenharmony_ci  "${hdc_path}/src/daemon/shell.cpp",
48cc290419Sopenharmony_ci  "${hdc_path}/src/daemon/system_depend.cpp",
49cc290419Sopenharmony_ci]
50cc290419Sopenharmony_ci
51cc290419Sopenharmony_cihdc_host_sources = [
52cc290419Sopenharmony_ci  "${hdc_path}/src/host/client.cpp",
53cc290419Sopenharmony_ci  "${hdc_path}/src/host/host_app.cpp",
54cc290419Sopenharmony_ci  "${hdc_path}/src/host/host_forward.cpp",
55cc290419Sopenharmony_ci  "${hdc_path}/src/host/host_tcp.cpp",
56cc290419Sopenharmony_ci  "${hdc_path}/src/host/host_unity.cpp",
57cc290419Sopenharmony_ci  "${hdc_path}/src/host/host_updater.cpp",
58cc290419Sopenharmony_ci  "${hdc_path}/src/host/host_usb.cpp",
59cc290419Sopenharmony_ci  "${hdc_path}/src/host/server.cpp",
60cc290419Sopenharmony_ci  "${hdc_path}/src/host/server_for_client.cpp",
61cc290419Sopenharmony_ci  "${hdc_path}/src/host/translate.cpp",
62cc290419Sopenharmony_ci]
63cc290419Sopenharmony_ci
64cc290419Sopenharmony_cicommon_external_deps = [
65cc290419Sopenharmony_ci  "bounds_checking_function:libsec_static",
66cc290419Sopenharmony_ci  "libuv:uv",
67cc290419Sopenharmony_ci  "lz4:liblz4_static",
68cc290419Sopenharmony_ci  "openssl:libcrypto_static",
69cc290419Sopenharmony_ci]
70cc290419Sopenharmony_ci
71cc290419Sopenharmony_ciconfig("hdc_ut_code_flag") {
72cc290419Sopenharmony_ci  cflags = code_check_flag
73cc290419Sopenharmony_ci}
74cc290419Sopenharmony_ci
75cc290419Sopenharmony_ciconfig("hdc_ut_config") {
76cc290419Sopenharmony_ci  defines = [
77cc290419Sopenharmony_ci    "TEST_HASH",
78cc290419Sopenharmony_ci    "HDC_MSG_HASH=\"TEST\"",
79cc290419Sopenharmony_ci  ]
80cc290419Sopenharmony_ci  include_dirs = [ "${hdc_path}/src/common" ]
81cc290419Sopenharmony_ci
82cc290419Sopenharmony_ci  cflags = [
83cc290419Sopenharmony_ci    "-std=c++17",
84cc290419Sopenharmony_ci    "-fno-access-control",
85cc290419Sopenharmony_ci    "-g",
86cc290419Sopenharmony_ci  ]
87cc290419Sopenharmony_ci  ldflags = []
88cc290419Sopenharmony_ci
89cc290419Sopenharmony_ci  if (hdc_test_coverage && is_ohos) {
90cc290419Sopenharmony_ci    cflags += [
91cc290419Sopenharmony_ci      "-fprofile-arcs",
92cc290419Sopenharmony_ci      "-ftest-coverage",
93cc290419Sopenharmony_ci    ]
94cc290419Sopenharmony_ci    ldflags += [ "--coverage" ]
95cc290419Sopenharmony_ci  }
96cc290419Sopenharmony_ci}
97cc290419Sopenharmony_ci
98cc290419Sopenharmony_ciconfig("hdc_common_config") {
99cc290419Sopenharmony_ci  defines = []
100cc290419Sopenharmony_ci  include_dirs = [
101cc290419Sopenharmony_ci    "${hdc_path}/src/common",
102cc290419Sopenharmony_ci    "${hdc_path}/src/daemon",
103cc290419Sopenharmony_ci    "${hdc_path}/src/host",
104cc290419Sopenharmony_ci    "${hdc_path}/test/unittest/common/include",
105cc290419Sopenharmony_ci  ]
106cc290419Sopenharmony_ci
107cc290419Sopenharmony_ci  if (hdc_support_uart) {
108cc290419Sopenharmony_ci    defines += [ "HDC_SUPPORT_UART" ]
109cc290419Sopenharmony_ci  }
110cc290419Sopenharmony_ci
111cc290419Sopenharmony_ci  defines += [ "HDC_UT" ]
112cc290419Sopenharmony_ci}
113cc290419Sopenharmony_ci
114cc290419Sopenharmony_ciconfig("hdc_host_common_config") {
115cc290419Sopenharmony_ci  defines = [ "HDC_HOST" ]
116cc290419Sopenharmony_ci
117cc290419Sopenharmony_ci  # both linux and ohos is same linux syscall
118cc290419Sopenharmony_ci  defines += [ "HOST_LINUX" ]
119cc290419Sopenharmony_ci  defines += [ "HARMONY_PROJECT" ]
120cc290419Sopenharmony_ci}
121cc290419Sopenharmony_ci
122cc290419Sopenharmony_ciohos_source_set("hdc_common") {
123cc290419Sopenharmony_ci  use_exceptions = true
124cc290419Sopenharmony_ci  testonly = true
125cc290419Sopenharmony_ci  sources = hdc_common_sources
126cc290419Sopenharmony_ci  if (hdc_support_uart) {
127cc290419Sopenharmony_ci    sources += [ "${hdc_path}/src/common/uart.cpp" ]
128cc290419Sopenharmony_ci  }
129cc290419Sopenharmony_ci  public_external_deps = common_external_deps
130cc290419Sopenharmony_ci  external_deps = [ "init:libbegetutil" ]
131cc290419Sopenharmony_ci  public_configs = [
132cc290419Sopenharmony_ci    ":hdc_common_config",
133cc290419Sopenharmony_ci    ":hdc_ut_config",
134cc290419Sopenharmony_ci  ]
135cc290419Sopenharmony_ci  defines = [ "OPENSSL_SUPPRESS_DEPRECATED" ]
136cc290419Sopenharmony_ci  if (hdc_fuzz_test) {
137cc290419Sopenharmony_ci    defines += [
138cc290419Sopenharmony_ci      "FUZZ_TEST",
139cc290419Sopenharmony_ci      "HDC_HILOG",
140cc290419Sopenharmony_ci    ]
141cc290419Sopenharmony_ci    external_deps += [ "hilog:libhilog" ]
142cc290419Sopenharmony_ci  }
143cc290419Sopenharmony_ci}
144cc290419Sopenharmony_ci
145cc290419Sopenharmony_ciohos_source_set("hdc_daemon") {
146cc290419Sopenharmony_ci  use_exceptions = true
147cc290419Sopenharmony_ci  sources = hdc_common_sources
148cc290419Sopenharmony_ci  sources += hdc_daemon_sources
149cc290419Sopenharmony_ci  if (hdc_support_uart) {
150cc290419Sopenharmony_ci    sources += [ "${hdc_path}/src/common/uart.cpp" ]
151cc290419Sopenharmony_ci    sources += [ "${hdc_path}/src/daemon/daemon_uart.cpp" ]
152cc290419Sopenharmony_ci  }
153cc290419Sopenharmony_ci  public_external_deps = common_external_deps
154cc290419Sopenharmony_ci  external_deps = [ "init:libbegetutil" ]
155cc290419Sopenharmony_ci  public_configs = [
156cc290419Sopenharmony_ci    ":hdc_common_config",
157cc290419Sopenharmony_ci    ":hdc_ut_config",
158cc290419Sopenharmony_ci  ]
159cc290419Sopenharmony_ci  defines = [ "OPENSSL_SUPPRESS_DEPRECATED" ]
160cc290419Sopenharmony_ci}
161cc290419Sopenharmony_ci
162cc290419Sopenharmony_ciohos_source_set("hdc_host") {
163cc290419Sopenharmony_ci  use_exceptions = true
164cc290419Sopenharmony_ci  sources = hdc_common_sources
165cc290419Sopenharmony_ci  sources += hdc_host_sources
166cc290419Sopenharmony_ci  if (hdc_support_uart) {
167cc290419Sopenharmony_ci    sources += [ "${hdc_path}/src/common/uart.cpp" ]
168cc290419Sopenharmony_ci    sources += [ "${hdc_path}/src/host/host_uart.cpp" ]
169cc290419Sopenharmony_ci  }
170cc290419Sopenharmony_ci  public_external_deps = common_external_deps
171cc290419Sopenharmony_ci  public_external_deps += [ "libusb:libusb" ]
172cc290419Sopenharmony_ci  public_configs = [
173cc290419Sopenharmony_ci    ":hdc_common_config",
174cc290419Sopenharmony_ci    ":hdc_host_common_config",
175cc290419Sopenharmony_ci    ":hdc_ut_config",
176cc290419Sopenharmony_ci  ]
177cc290419Sopenharmony_ci  defines = [ "OPENSSL_SUPPRESS_DEPRECATED" ]
178cc290419Sopenharmony_ci}
179cc290419Sopenharmony_ci
180cc290419Sopenharmony_ciohos_source_set("hdc_daemon_platform") {
181cc290419Sopenharmony_ci  testonly = true
182cc290419Sopenharmony_ci  public_configs = [ ":hdc_ut_config" ]
183cc290419Sopenharmony_ci
184cc290419Sopenharmony_ci  #defines = [ "HARMONY_PROJECT" ]
185cc290419Sopenharmony_ci  defines = []
186cc290419Sopenharmony_ci  if (hdc_test_coverage && is_ohos) {
187cc290419Sopenharmony_ci    defines += [ "TEST_COVERAGE" ]
188cc290419Sopenharmony_ci  }
189cc290419Sopenharmony_ci
190cc290419Sopenharmony_ci  if (hdc_unit_test) {
191cc290419Sopenharmony_ci    defines += [ "HDC_UNIT_TEST" ]
192cc290419Sopenharmony_ci  }
193cc290419Sopenharmony_ci  if (js_jdwp_connect) {
194cc290419Sopenharmony_ci    defines += [ "JS_JDWP_CONNECT" ]
195cc290419Sopenharmony_ci  }
196cc290419Sopenharmony_ci
197cc290419Sopenharmony_ci  sources = [
198cc290419Sopenharmony_ci    "${hdc_path}/src/daemon/daemon_unity.cpp",
199cc290419Sopenharmony_ci    "${hdc_path}/src/daemon/jdwp.cpp",
200cc290419Sopenharmony_ci  ]
201cc290419Sopenharmony_ci
202cc290419Sopenharmony_ci  public_external_deps = [
203cc290419Sopenharmony_ci    "bounds_checking_function:libsec_static",
204cc290419Sopenharmony_ci    "googletest:gtest",
205cc290419Sopenharmony_ci    "libuv:uv",
206cc290419Sopenharmony_ci    "openssl:libcrypto_static",
207cc290419Sopenharmony_ci  ]
208cc290419Sopenharmony_ci
209cc290419Sopenharmony_ci  external_deps = [ "init:libbegetutil" ]
210cc290419Sopenharmony_ci
211cc290419Sopenharmony_ci  include_dirs = [ "${hdc_path}/daemon" ]
212cc290419Sopenharmony_ci}
213cc290419Sopenharmony_ci
214cc290419Sopenharmony_ciohos_unittest("hdc_jdwp_unittest") {
215cc290419Sopenharmony_ci  module_out_path = module_output_path
216cc290419Sopenharmony_ci  public_configs = [ ":hdc_ut_config" ]
217cc290419Sopenharmony_ci  defines = [ "HARMONY_PROJECT" ]
218cc290419Sopenharmony_ci  if (hdc_test_coverage && is_ohos) {
219cc290419Sopenharmony_ci    defines += [ "TEST_COVERAGE" ]
220cc290419Sopenharmony_ci  }
221cc290419Sopenharmony_ci  if (hdc_unit_test) {
222cc290419Sopenharmony_ci    defines += [ "HDC_UNIT_TEST" ]
223cc290419Sopenharmony_ci  }
224cc290419Sopenharmony_ci  if (js_jdwp_connect) {
225cc290419Sopenharmony_ci    defines += [ "JS_JDWP_CONNECT" ]
226cc290419Sopenharmony_ci  }
227cc290419Sopenharmony_ci  public_deps = [ ":hdc_daemon_platform" ]
228cc290419Sopenharmony_ci
229cc290419Sopenharmony_ci  sources = [ "unittest/common/HdcJdwpTest.cpp" ]
230cc290419Sopenharmony_ci  deps = [ ":hdc_common" ]
231cc290419Sopenharmony_ci
232cc290419Sopenharmony_ci  include_dirs = [
233cc290419Sopenharmony_ci    "${hdc_path}/test/unittest/common/include",
234cc290419Sopenharmony_ci    "${hdc_path}/src/daemon",
235cc290419Sopenharmony_ci    "${hdc_path}/src/common",
236cc290419Sopenharmony_ci  ]
237cc290419Sopenharmony_ci  external_deps = [ "googletest:gmock_main" ]
238cc290419Sopenharmony_ci
239cc290419Sopenharmony_ci  if (is_linux) {
240cc290419Sopenharmony_ci    static_link = false
241cc290419Sopenharmony_ci  }
242cc290419Sopenharmony_ci  subsystem_name = "developtools"
243cc290419Sopenharmony_ci  defines += [ "OPENSSL_SUPPRESS_DEPRECATED" ]
244cc290419Sopenharmony_ci  external_deps += [
245cc290419Sopenharmony_ci    "bounds_checking_function:libsec_static",
246cc290419Sopenharmony_ci    "libuv:uv",
247cc290419Sopenharmony_ci  ]
248cc290419Sopenharmony_ci}
249cc290419Sopenharmony_ci
250cc290419Sopenharmony_ciohos_unittest("hdc_uart_unittest") {
251cc290419Sopenharmony_ci  use_exceptions = true
252cc290419Sopenharmony_ci  module_out_path = module_output_path
253cc290419Sopenharmony_ci  resource_config_file = "unittest/resource/ohos_test.xml"
254cc290419Sopenharmony_ci  sources = [
255cc290419Sopenharmony_ci    "unittest/common/daemon_uart_test.cpp",
256cc290419Sopenharmony_ci    "unittest/common/uart_test.cpp",
257cc290419Sopenharmony_ci  ]
258cc290419Sopenharmony_ci
259cc290419Sopenharmony_ci  configs = [ ":hdc_common_config" ]
260cc290419Sopenharmony_ci  configs += [ ":hdc_ut_code_flag" ]
261cc290419Sopenharmony_ci  deps = [ ":hdc_daemon" ]
262cc290419Sopenharmony_ci  defines = [ "OPENSSL_SUPPRESS_DEPRECATED" ]
263cc290419Sopenharmony_ci
264cc290419Sopenharmony_ci  external_deps = [ "googletest:gmock_main" ]
265cc290419Sopenharmony_ci}
266cc290419Sopenharmony_ci
267cc290419Sopenharmony_ciohos_unittest("hdc_host_uart_unittest") {
268cc290419Sopenharmony_ci  use_exceptions = true
269cc290419Sopenharmony_ci  module_out_path = module_output_path
270cc290419Sopenharmony_ci  resource_config_file = "unittest/resource/ohos_test.xml"
271cc290419Sopenharmony_ci  sources = [
272cc290419Sopenharmony_ci    "unittest/common/host_uart_test.cpp",
273cc290419Sopenharmony_ci    "unittest/common/uart_test.cpp",
274cc290419Sopenharmony_ci  ]
275cc290419Sopenharmony_ci
276cc290419Sopenharmony_ci  configs = [
277cc290419Sopenharmony_ci    ":hdc_common_config",
278cc290419Sopenharmony_ci    ":hdc_host_common_config",
279cc290419Sopenharmony_ci    ":hdc_ut_code_flag",
280cc290419Sopenharmony_ci  ]
281cc290419Sopenharmony_ci
282cc290419Sopenharmony_ci  deps = [ ":hdc_host" ]
283cc290419Sopenharmony_ci
284cc290419Sopenharmony_ci  defines = [ "OPENSSL_SUPPRESS_DEPRECATED" ]
285cc290419Sopenharmony_ci
286cc290419Sopenharmony_ci  external_deps = [ "googletest:gmock_main" ]
287cc290419Sopenharmony_ci}
288cc290419Sopenharmony_ci
289cc290419Sopenharmony_cigroup("HdcJdwpTest") {
290cc290419Sopenharmony_ci  testonly = true
291cc290419Sopenharmony_ci  deps = [ ":hdc_jdwp_unittest" ]
292cc290419Sopenharmony_ci}
293cc290419Sopenharmony_ci
294cc290419Sopenharmony_cigroup("hdc_unittest") {
295cc290419Sopenharmony_ci  testonly = true
296cc290419Sopenharmony_ci  deps = [
297cc290419Sopenharmony_ci    ":hdc_host_uart_unittest",
298cc290419Sopenharmony_ci    ":hdc_host_uart_unittest(${host_toolchain})",
299cc290419Sopenharmony_ci    ":hdc_jdwp_unittest",
300cc290419Sopenharmony_ci    ":hdc_register_unittest",
301cc290419Sopenharmony_ci    ":hdc_uart_unittest",
302cc290419Sopenharmony_ci    ":hdc_uart_unittest(${host_toolchain})",
303cc290419Sopenharmony_ci  ]
304cc290419Sopenharmony_ci}
305cc290419Sopenharmony_ci
306cc290419Sopenharmony_ciconfig("hdc_test_config") {
307cc290419Sopenharmony_ci  cflags = code_check_flag
308cc290419Sopenharmony_ci  ldflags = []
309cc290419Sopenharmony_ci  defines = [ "HARMONY_PROJECT" ]
310cc290419Sopenharmony_ci
311cc290419Sopenharmony_ci  if (hdc_test_coverage && is_ohos) {
312cc290419Sopenharmony_ci    defines += [ "TEST_COVERAGE" ]
313cc290419Sopenharmony_ci    cflags += [
314cc290419Sopenharmony_ci      "-fprofile-arcs",
315cc290419Sopenharmony_ci      "-ftest-coverage",
316cc290419Sopenharmony_ci    ]
317cc290419Sopenharmony_ci    ldflags += [ "--coverage" ]
318cc290419Sopenharmony_ci  }
319cc290419Sopenharmony_ci  if (js_jdwp_connect) {
320cc290419Sopenharmony_ci    defines += [ "JS_JDWP_CONNECT" ]
321cc290419Sopenharmony_ci  }
322cc290419Sopenharmony_ci  include_dirs = [
323cc290419Sopenharmony_ci    "${hdc_path}/test/fuzztest/jdwpreadstream_fuzzer",
324cc290419Sopenharmony_ci    "${hdc_path}/test/fuzztest/forwardreadstream_fuzzer",
325cc290419Sopenharmony_ci    "${hdc_path}/src/daemon",
326cc290419Sopenharmony_ci    "${hdc_path}/src/common",
327cc290419Sopenharmony_ci  ]
328cc290419Sopenharmony_ci}
329cc290419Sopenharmony_ci
330cc290419Sopenharmony_ciconfig("hdc_register_config") {
331cc290419Sopenharmony_ci  cflags = code_check_flag
332cc290419Sopenharmony_ci  ldflags = []
333cc290419Sopenharmony_ci  defines = [ "HDC_HILOG" ]
334cc290419Sopenharmony_ci
335cc290419Sopenharmony_ci  if (hdc_test_coverage && is_ohos) {
336cc290419Sopenharmony_ci    defines += [ "TEST_COVERAGE" ]
337cc290419Sopenharmony_ci    cflags += [
338cc290419Sopenharmony_ci      "-fprofile-arcs",
339cc290419Sopenharmony_ci      "-ftest-coverage",
340cc290419Sopenharmony_ci    ]
341cc290419Sopenharmony_ci    ldflags += [ "--coverage" ]
342cc290419Sopenharmony_ci  }
343cc290419Sopenharmony_ci  if (js_jdwp_connect) {
344cc290419Sopenharmony_ci    defines += [ "JS_JDWP_CONNECT" ]
345cc290419Sopenharmony_ci  }
346cc290419Sopenharmony_ci}
347cc290419Sopenharmony_ci
348cc290419Sopenharmony_cifuzz_cflags = [
349cc290419Sopenharmony_ci  "-O0",
350cc290419Sopenharmony_ci  "-Wno-unused-variable",
351cc290419Sopenharmony_ci  "-fno-omit-frame-pointer",
352cc290419Sopenharmony_ci]
353cc290419Sopenharmony_ci
354cc290419Sopenharmony_ciohos_fuzztest("JdwpReadStreamFuzzTest") {
355cc290419Sopenharmony_ci  module_out_path = FUZZ_OUTPUT_PATH
356cc290419Sopenharmony_ci  fuzz_config_file = "${hdc_path}/test/fuzztest/jdwpreadstream_fuzzer"
357cc290419Sopenharmony_ci  configs = [ ":hdc_test_config" ]
358cc290419Sopenharmony_ci  cflags = fuzz_cflags
359cc290419Sopenharmony_ci  sources = [
360cc290419Sopenharmony_ci    "${hdc_path}/src/daemon/jdwp.cpp",
361cc290419Sopenharmony_ci    "${hdc_path}/src/daemon/system_depend.cpp",
362cc290419Sopenharmony_ci    "fuzztest/jdwpreadstream_fuzzer/JdwpReadStream_fuzzer.cpp",
363cc290419Sopenharmony_ci  ]
364cc290419Sopenharmony_ci  deps = [ ":hdc_common" ]
365cc290419Sopenharmony_ci  external_deps = [
366cc290419Sopenharmony_ci    "hilog:libhilog",
367cc290419Sopenharmony_ci    "init:libbeget_proxy",
368cc290419Sopenharmony_ci    "init:libbegetutil",
369cc290419Sopenharmony_ci  ]
370cc290419Sopenharmony_ci  public_external_deps = [
371cc290419Sopenharmony_ci    "bounds_checking_function:libsec_static",
372cc290419Sopenharmony_ci    "libuv:uv",
373cc290419Sopenharmony_ci  ]
374cc290419Sopenharmony_ci}
375cc290419Sopenharmony_ci
376cc290419Sopenharmony_ciohos_fuzztest("ForwardReadStreamFuzzTest") {
377cc290419Sopenharmony_ci  module_out_path = FUZZ_OUTPUT_PATH
378cc290419Sopenharmony_ci  fuzz_config_file = "${hdc_path}/test/fuzztest/forwardreadstream_fuzzer"
379cc290419Sopenharmony_ci  configs = [ ":hdc_test_config" ]
380cc290419Sopenharmony_ci  cflags = fuzz_cflags
381cc290419Sopenharmony_ci  sources = [ "fuzztest/forwardreadstream_fuzzer/ForwardReadStream_fuzzer.cpp" ]
382cc290419Sopenharmony_ci  deps = [ ":hdc_common" ]
383cc290419Sopenharmony_ci  subsystem_name = "developtools"
384cc290419Sopenharmony_ci  part_name = "hdc"
385cc290419Sopenharmony_ci  external_deps = [
386cc290419Sopenharmony_ci    "hilog:libhilog",
387cc290419Sopenharmony_ci    "libuv:uv",
388cc290419Sopenharmony_ci  ]
389cc290419Sopenharmony_ci  public_external_deps = [
390cc290419Sopenharmony_ci    "bounds_checking_function:libsec_static",
391cc290419Sopenharmony_ci    "libuv:uv",
392cc290419Sopenharmony_ci  ]
393cc290419Sopenharmony_ci}
394cc290419Sopenharmony_ci
395cc290419Sopenharmony_ciohos_fuzztest("DaemonUsbReadFuzzTest") {
396cc290419Sopenharmony_ci  module_out_path = FUZZ_OUTPUT_PATH
397cc290419Sopenharmony_ci  fuzz_config_file = "${hdc_path}/test/fuzztest/daemonusbread_fuzzer"
398cc290419Sopenharmony_ci  configs = [ ":hdc_test_config" ]
399cc290419Sopenharmony_ci  cflags = fuzz_cflags
400cc290419Sopenharmony_ci  sources = [
401cc290419Sopenharmony_ci    "${hdc_path}/src/daemon/daemon_usb.cpp",
402cc290419Sopenharmony_ci    "${hdc_path}/src/daemon/system_depend.cpp",
403cc290419Sopenharmony_ci    "fuzztest/daemonusbread_fuzzer/DaemonUsbRead_fuzzer.cpp",
404cc290419Sopenharmony_ci  ]
405cc290419Sopenharmony_ci  deps = [ ":hdc_common" ]
406cc290419Sopenharmony_ci  external_deps = [
407cc290419Sopenharmony_ci    "init:libbeget_proxy",
408cc290419Sopenharmony_ci    "init:libbegetutil",
409cc290419Sopenharmony_ci  ]
410cc290419Sopenharmony_ci  public_external_deps = [
411cc290419Sopenharmony_ci    "bounds_checking_function:libsec_static",
412cc290419Sopenharmony_ci    "libuv:uv",
413cc290419Sopenharmony_ci  ]
414cc290419Sopenharmony_ci}
415cc290419Sopenharmony_ci
416cc290419Sopenharmony_cigroup("hdc_fuzztest") {
417cc290419Sopenharmony_ci  testonly = true
418cc290419Sopenharmony_ci  deps = [
419cc290419Sopenharmony_ci    ":DaemonUsbReadFuzzTest",
420cc290419Sopenharmony_ci    ":ForwardReadStreamFuzzTest",
421cc290419Sopenharmony_ci    ":JdwpReadStreamFuzzTest",
422cc290419Sopenharmony_ci  ]
423cc290419Sopenharmony_ci}
424cc290419Sopenharmony_ci
425cc290419Sopenharmony_ciohos_unittest("hdc_register_unittest") {
426cc290419Sopenharmony_ci  module_out_path = module_output_path
427cc290419Sopenharmony_ci  resource_config_file = "unittest/resource/ohos_test.xml"
428cc290419Sopenharmony_ci
429cc290419Sopenharmony_ci  sources = [
430cc290419Sopenharmony_ci    "${hdc_path}/src/register/hdc_connect.cpp",
431cc290419Sopenharmony_ci    "${hdc_path}/src/register/hdc_jdwp.cpp",
432cc290419Sopenharmony_ci    "unittest/register/register_test.cpp",
433cc290419Sopenharmony_ci  ]
434cc290419Sopenharmony_ci
435cc290419Sopenharmony_ci  include_dirs = [ "${hdc_path}/src/register/" ]
436cc290419Sopenharmony_ci
437cc290419Sopenharmony_ci  configs = [ ":hdc_register_config" ]
438cc290419Sopenharmony_ci
439cc290419Sopenharmony_ci  external_deps = [
440cc290419Sopenharmony_ci    "c_utils:utils",
441cc290419Sopenharmony_ci    "googletest:gmock_main",
442cc290419Sopenharmony_ci    "hilog:libhilog",
443cc290419Sopenharmony_ci    "init:libbeget_proxy",
444cc290419Sopenharmony_ci    "init:libbegetutil",
445cc290419Sopenharmony_ci    "libuv:uv",
446cc290419Sopenharmony_ci  ]
447cc290419Sopenharmony_ci
448cc290419Sopenharmony_ci  subsystem_name = "developtools"
449cc290419Sopenharmony_ci  part_name = "hdc"
450cc290419Sopenharmony_ci}
451