1# Copyright (c) 2021-2023 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
14if (defined(ohos_lite)) {
15  import("//build/lite/config/test.gni")
16} else {
17  import("//build/config/sanitizers/sanitizers.gni")
18  import("//build/test.gni")
19  import("./../../../../../hdf_core/adapter/uhdf2/uhdf.gni")
20}
21
22if (defined(ohos_lite)) {
23  unittest("usb_host_sdk_test") {
24    output_extension = "bin"
25    output_dir = "$root_out_dir/test/unittest/hdf"
26    include_dirs = [
27      "//third_party/googletest/googletest/include",
28      "//third_party/bounds_checking_function/include",
29      "./../../../../../../base/hiviewdfx/hilog_lite/interfaces/native/innerkits",
30    ]
31
32    sources = [ "./liteos/hdf_usb_test.cpp" ]
33    public_deps = [
34      "./../../../../../../base/hiviewdfx/hilog_lite/frameworks/featured:hilog_shared",
35      "./../../../../../hdf_core/adapter/uhdf/manager:hdf_core",
36      "./../../../../../hdf_core/adapter/uhdf/platform:hdf_platform",
37      "./../../../../../hdf_core/adapter/uhdf/posix:hdf_posix_osal",
38      "./../../../../../hdf_core/adapter/uhdf/test/unittest/common:hdf_test_common",
39      "//third_party/bounds_checking_function:libsec_shared",
40    ]
41    cflags = [
42      "-Wall",
43      "-Wextra",
44      "-Werror",
45      "-fsigned-char",
46      "-fno-common",
47      "-fno-strict-aliasing",
48    ]
49  }
50  unittest("usb_host_sdk_io_test") {
51    output_extension = "bin"
52    output_dir = "$root_out_dir/test/unittest/hdf"
53    include_dirs = [
54      "//third_party/googletest/googletest/include",
55      "//third_party/bounds_checking_function/include",
56      "./../../../../../../base/hiviewdfx/hilog_lite/interfaces/native/innerkits",
57    ]
58
59    sources = [ "./liteos/hdf_usb_io_test.cpp" ]
60    public_deps = [
61      "./../../../../../../base/hiviewdfx/hilog_lite/frameworks/featured:hilog_shared",
62      "./../../../../../hdf_core/adapter/uhdf/manager:hdf_core",
63      "./../../../../../hdf_core/adapter/uhdf/platform:hdf_platform",
64      "./../../../../../hdf_core/adapter/uhdf/posix:hdf_posix_osal",
65      "./../../../../../hdf_core/adapter/uhdf/test/unittest/common:hdf_test_common",
66      "//third_party/bounds_checking_function:libsec_shared",
67    ]
68
69    cflags = [
70      "-Wall",
71      "-Wextra",
72      "-Werror",
73      "-fsigned-char",
74      "-fno-common",
75      "-fno-strict-aliasing",
76    ]
77  }
78  unittest("usb_host_raw_test") {
79    output_extension = "bin"
80    output_dir = "$root_out_dir/test/unittest/hdf"
81    include_dirs = [
82      "//third_party/googletest/googletest/include",
83      "//third_party/bounds_checking_function/include",
84      "./../../../../../../base/hiviewdfx/hilog_lite/interfaces/native/innerkits",
85    ]
86
87    sources = [ "./liteos/hdf_usb_raw_test.cpp" ]
88    public_deps = [
89      "./../../../../../../base/hiviewdfx/hilog_lite/frameworks/featured:hilog_shared",
90      "./../../../../../hdf_core/adapter/uhdf/manager:hdf_core",
91      "./../../../../../hdf_core/adapter/uhdf/platform:hdf_platform",
92      "./../../../../../hdf_core/adapter/uhdf/posix:hdf_posix_osal",
93      "./../../../../../hdf_core/adapter/uhdf/test/unittest/common:hdf_test_common",
94      "//third_party/bounds_checking_function:libsec_shared",
95    ]
96
97    cflags = [
98      "-Wall",
99      "-Wextra",
100      "-Werror",
101      "-fsigned-char",
102      "-fno-common",
103      "-fno-strict-aliasing",
104    ]
105  }
106  unittest("usb_host_raw_io_test") {
107    output_extension = "bin"
108    output_dir = "$root_out_dir/test/unittest/hdf"
109    include_dirs = [
110      "//third_party/googletest/googletest/include",
111      "//third_party/bounds_checking_function/include",
112      "./../../../../../../base/hiviewdfx/hilog_lite/interfaces/native/innerkits",
113    ]
114
115    sources = [ "./liteos/hdf_usb_raw_io_test.cpp" ]
116    public_deps = [
117      "./../../../../../../base/hiviewdfx/hilog_lite/frameworks/featured:hilog_shared",
118      "./../../../../../hdf_core/adapter/uhdf/manager:hdf_core",
119      "./../../../../../hdf_core/adapter/uhdf/platform:hdf_platform",
120      "./../../../../../hdf_core/adapter/uhdf/posix:hdf_posix_osal",
121      "./../../../../../hdf_core/adapter/uhdf/test/unittest/common:hdf_test_common",
122      "//third_party/bounds_checking_function:libsec_shared",
123    ]
124
125    cflags = [
126      "-Wall",
127      "-Wextra",
128      "-Werror",
129      "-fsigned-char",
130      "-fno-common",
131      "-fno-strict-aliasing",
132    ]
133  }
134} else {
135  module_output_path = "hdf/usb"
136  ohos_unittest("usb_host_sdk_if_test") {
137    module_out_path = module_output_path
138    include_dirs = [
139      "./../../../ddk/common/include",
140      "./../../../ddk/device/include",
141      "./../../../ddk/host/include",
142      "./../../../interfaces/ddk/common",
143      "./../../../interfaces/ddk/host",
144      "./../../../interfaces/ddk/device",
145      "./../host_sdk",
146    ]
147
148    sources = [ "./usb_host_sdk_if_test.cpp" ]
149
150    deps = [ "./../../../ddk:libusb_core" ]
151
152    if (is_standard_system) {
153      external_deps = [
154        "hdf_core:libhdf_host",
155        "hdf_core:libhdf_ipc_adapter",
156        "hdf_core:libhdf_utils",
157        "hilog:libhilog",
158      ]
159      if (usb_c_utils_enable) {
160        external_deps += [ "c_utils:utils" ]
161      }
162    } else {
163      external_deps = [ "hilog:libhilog" ]
164    }
165  }
166
167  ohos_unittest("usb_raw_sdk_if_test") {
168    module_out_path = module_output_path
169    include_dirs = [
170      "./../../../ddk/common/include",
171      "./../../../ddk/host/include",
172      "./../../../interfaces/ddk/common",
173      "./../../../interfaces/ddk/host",
174      "./../../../interfaces/ddk/device",
175      "./../host_sdk",
176    ]
177
178    sources = [ "./usb_raw_sdk_if_test.cpp" ]
179
180    deps = [ "./../../../ddk:libusb_core" ]
181
182    if (is_standard_system) {
183      external_deps = [
184        "hdf_core:libhdf_host",
185        "hdf_core:libhdf_ipc_adapter",
186        "hdf_core:libhdf_utils",
187        "hilog:libhilog",
188      ]
189      if (usb_c_utils_enable) {
190        external_deps += [ "c_utils:utils" ]
191      }
192    } else {
193      external_deps = [ "hilog:libhilog" ]
194    }
195  }
196
197  ohos_unittest("usb_host_sdk_if_test_io") {
198    module_out_path = module_output_path
199    include_dirs = [
200      "./../../../ddk/common/include",
201      "./../../../ddk/device/include",
202      "./../../../ddk/host/include",
203      "./../../../interfaces/ddk/common",
204      "./../../../interfaces/ddk/host",
205      "./../../../interfaces/ddk/device",
206      "./../host_sdk",
207    ]
208
209    sources = [ "./usb_host_sdk_if_test_io.cpp" ]
210
211    deps = [ "./../../../ddk:libusb_core" ]
212
213    if (is_standard_system) {
214      external_deps = [
215        "hdf_core:libhdf_host",
216        "hdf_core:libhdf_ipc_adapter",
217        "hdf_core:libhdf_utils",
218        "hilog:libhilog",
219      ]
220      if (usb_c_utils_enable) {
221        external_deps += [ "c_utils:utils" ]
222      }
223    } else {
224      external_deps = [ "hilog:libhilog" ]
225    }
226  }
227
228  ohos_unittest("usb_raw_sdk_if_test_io") {
229    module_out_path = module_output_path
230    include_dirs = [
231      "./../../../ddk/common/include",
232      "./../../../ddk/host/include",
233      "./../../../interfaces/ddk/common",
234      "./../../../interfaces/ddk/host",
235      "./../../../interfaces/ddk/device",
236      "./../../../test/unittest/host_sdk",
237    ]
238
239    sources = [ "./usb_raw_sdk_if_test_io.cpp" ]
240
241    deps = [ "./../../../ddk:libusb_core" ]
242
243    if (is_standard_system) {
244      external_deps = [
245        "hdf_core:libhdf_host",
246        "hdf_core:libhdf_ipc_adapter",
247        "hdf_core:libhdf_utils",
248        "hilog:libhilog",
249      ]
250      if (usb_c_utils_enable) {
251        external_deps += [ "c_utils:utils" ]
252      }
253    } else {
254      external_deps = [ "hilog:libhilog" ]
255    }
256  }
257  group("hdf_unittest_usb_host") {
258    testonly = true
259    deps = [
260      ":usb_host_sdk_if_test",
261      ":usb_host_sdk_if_test_io",
262      ":usb_raw_sdk_if_test",
263      ":usb_raw_sdk_if_test_io",
264    ]
265  }
266}
267