1# Copyright (c) 2021 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.
13import("//build/test.gni")
14
15module_output_path = "utils/base"
16
17###############################################################################
18config("module_private_config") {
19  visibility = [ ":*" ]
20
21  include_dirs = [ "../../../include" ]
22
23  cflags = [ "-Wno-implicit-const-int-float-conversion" ]
24
25  # library path
26  lib_dirs = [ "libs" ]
27}
28
29##############################unittest##########################################
30ohos_unittest("UtilsStringTest") {
31  module_out_path = module_output_path
32  sources = [ "utils_string_test.cpp" ]
33
34  configs = [ ":module_private_config" ]
35
36  deps = [ "//commonlibrary/c_utils/base:utils" ]
37
38  external_deps = [ "googletest:gtest_main" ]
39}
40
41##############################unittest##########################################
42ohos_unittest("UtilsDirectoryTest") {
43  module_out_path = module_output_path
44  sources = [ "utils_directory_test.cpp" ]
45
46  configs = [ ":module_private_config" ]
47
48  deps = [ "//commonlibrary/c_utils/base:utils" ]
49
50  external_deps = [ "googletest:gtest_main" ]
51}
52
53##############################unittest##########################################
54ohos_unittest("UtilsDateTimeTest") {
55  module_out_path = module_output_path
56  sources = [ "utils_datetime_test.cpp" ]
57
58  configs = [ ":module_private_config" ]
59
60  deps = [ "//commonlibrary/c_utils/base:utils" ]
61
62  external_deps = [ "googletest:gtest_main" ]
63}
64
65##############################unittest##########################################
66ohos_unittest("UtilsParcelTest") {
67  module_out_path = module_output_path
68  sources = [ "utils_parcel_test.cpp" ]
69
70  configs = [ ":module_private_config" ]
71
72  deps = [ "//commonlibrary/c_utils/base:utils" ]
73
74  external_deps = [ "googletest:gtest_main" ]
75}
76
77##############################unittest##########################################
78ohos_unittest("UtilsAshmemTest") {
79  module_out_path = module_output_path
80  sources = [ "utils_ashmem_test.cpp" ]
81
82  configs = [ ":module_private_config" ]
83
84  deps = [ "//commonlibrary/c_utils/base:utils" ]
85
86  external_deps = [
87    "googletest:gtest_main",
88    "hilog:libhilog",
89  ]
90}
91
92##############################unittest##########################################
93ohos_unittest("UtilsRefbaseTest") {
94  module_out_path = module_output_path
95  sources = [ "utils_refbase_test.cpp" ]
96
97  configs = [ ":module_private_config" ]
98
99  deps = [ "//commonlibrary/c_utils/base:utils" ]
100
101  external_deps = [ "googletest:gtest_main" ]
102}
103
104##############################unittest##########################################
105ohos_unittest("UtilsThreadTest") {
106  module_out_path = module_output_path
107  sources = [ "utils_thread_test.cpp" ]
108
109  configs = [ ":module_private_config" ]
110
111  deps = [ "//commonlibrary/c_utils/base:utils" ]
112
113  external_deps = [ "googletest:gtest_main" ]
114}
115
116##############################unittest##########################################
117ohos_unittest("UtilsEventTest") {
118  module_out_path = module_output_path
119  sources = [ "utils_event_test.cpp" ]
120
121  configs = [ ":module_private_config" ]
122
123  deps = [ "//commonlibrary/c_utils/base:utils" ]
124
125  external_deps = [ "googletest:gtest_main" ]
126}
127
128##############################unittest##########################################
129ohos_unittest("UtilsFileTest") {
130  module_out_path = module_output_path
131  sources = [ "utils_file_test.cpp" ]
132
133  configs = [ ":module_private_config" ]
134
135  deps = [ "//commonlibrary/c_utils/base:utils" ]
136
137  external_deps = [ "googletest:gtest_main" ]
138}
139
140##############################unittest##########################################
141ohos_unittest("UtilsMappedFileTest") {
142  module_out_path = module_output_path
143  sources = [ "utils_mapped_file_test.cpp" ]
144
145  configs = [ ":module_private_config" ]
146
147  deps = [ "//commonlibrary/c_utils/base:utils" ]
148
149  external_deps = [ "googletest:gtest_main" ]
150}
151
152##############################unittest##########################################
153ohos_unittest("UtilsObserverTest") {
154  module_out_path = module_output_path
155  sources = [ "utils_observer_test.cpp" ]
156
157  configs = [ ":module_private_config" ]
158
159  deps = [ "//commonlibrary/c_utils/base:utils" ]
160
161  external_deps = [ "googletest:gtest_main" ]
162}
163
164##############################unittest##########################################
165ohos_unittest("UtilsSafeBlockQueueTest") {
166  module_out_path = module_output_path
167  sources = [ "utils_safe_block_queue_test.cpp" ]
168
169  configs = [ ":module_private_config" ]
170
171  deps = [ "//commonlibrary/c_utils/base:utils" ]
172
173  external_deps = [ "googletest:gtest_main" ]
174}
175
176##############################unittest##########################################
177ohos_unittest("UtilsSafeMapTest") {
178  module_out_path = module_output_path
179  sources = [ "utils_safe_map_test.cpp" ]
180
181  configs = [
182    ":module_private_config",
183    "//build/config/compiler:exceptions",
184  ]
185  remove_configs = [ "//build/config/compiler:no_exceptions" ]
186
187  deps = [ "//commonlibrary/c_utils/base:utils" ]
188
189  external_deps = [ "googletest:gtest_main" ]
190}
191
192##############################unittest##########################################
193ohos_unittest("UtilsSafeBlockQueueTrackingTest") {
194  module_out_path = module_output_path
195  sources = [ "utils_safe_block_queue_tracking.cpp" ]
196
197  configs = [ ":module_private_config" ]
198
199  deps = [ "//commonlibrary/c_utils/base:utils" ]
200
201  external_deps = [ "googletest:gtest_main" ]
202}
203
204###############################################################################
205ohos_unittest("UtilsSafeQueueTest") {
206  module_out_path = module_output_path
207  sources = [ "utils_safe_queue_test.cpp" ]
208
209  configs = [ ":module_private_config" ]
210
211  deps = [ "//commonlibrary/c_utils/base:utils" ]
212
213  external_deps = [ "googletest:gtest_main" ]
214}
215
216##############################unittest##########################################
217ohos_unittest("UtilsThreadPoolTest") {
218  module_out_path = module_output_path
219  sources = [ "utils_thread_pool_test.cpp" ]
220
221  configs = [ ":module_private_config" ]
222
223  deps = [ "//commonlibrary/c_utils/base:utils" ]
224
225  external_deps = [ "googletest:gtest_main" ]
226}
227
228##############################unittest##########################################
229ohos_unittest("UtilsSemaphoreTest") {
230  module_out_path = module_output_path
231  sources = [ "utils_semaphore_test.cpp" ]
232
233  configs = [ ":module_private_config" ]
234
235  deps = [ "//commonlibrary/c_utils/base:utils" ]
236
237  external_deps = [ "googletest:gtest_main" ]
238}
239
240##############################unittest##########################################
241ohos_unittest("UtilsSingletonTest") {
242  module_out_path = module_output_path
243  sources = [ "utils_singleton_test.cpp" ]
244
245  configs = [ ":module_private_config" ]
246
247  deps = [ "//commonlibrary/c_utils/base:utils" ]
248
249  external_deps = [ "googletest:gtest_main" ]
250}
251
252###############################################################################
253ohos_unittest("UtilsSortedVectorTest") {
254  module_out_path = module_output_path
255  sources = [ "utils_sorted_vector_test.cpp" ]
256
257  configs = [ ":module_private_config" ]
258
259  deps = [ "//commonlibrary/c_utils/base:utils" ]
260
261  external_deps = [ "googletest:gtest_main" ]
262}
263
264###############################################################################
265ohos_unittest("UtilsUniqueFdTest") {
266  module_out_path = module_output_path
267  sources = [ "utils_unique_fd_test.cpp" ]
268
269  configs = [ ":module_private_config" ]
270
271  deps = [ "//commonlibrary/c_utils/base:utils" ]
272
273  external_deps = [ "googletest:gtest_main" ]
274}
275
276###############################################################################
277ohos_unittest("UtilsTimerTest") {
278  module_out_path = module_output_path
279  sources = [ "utils_timer_test.cpp" ]
280
281  configs = [ ":module_private_config" ]
282
283  deps = [ "//commonlibrary/c_utils/base:utils" ]
284
285  external_deps = [ "googletest:gtest_main" ]
286}
287
288###############################################################################
289ohos_unittest("UtilsRWLockTest") {
290  module_out_path = module_output_path
291  sources = [ "utils_rwlock_test.cpp" ]
292
293  configs = [ ":module_private_config" ]
294
295  deps = [ "//commonlibrary/c_utils/base:utils" ]
296
297  external_deps = [ "googletest:gtest_main" ]
298}
299
300###############################################################################
301
302group("unittest") {
303  testonly = true
304  deps = []
305
306  deps += [
307    # deps file
308    ":UtilsAshmemTest",
309    ":UtilsDateTimeTest",
310    ":UtilsDirectoryTest",
311    ":UtilsEventTest",
312    ":UtilsFileTest",
313    ":UtilsMappedFileTest",
314    ":UtilsObserverTest",
315    ":UtilsParcelTest",
316    ":UtilsRWLockTest",
317    ":UtilsRefbaseTest",
318    ":UtilsSafeBlockQueueTest",
319    ":UtilsSafeBlockQueueTrackingTest",
320    ":UtilsSafeMapTest",
321    ":UtilsSafeQueueTest",
322    ":UtilsSingletonTest",
323    ":UtilsSortedVectorTest",
324    ":UtilsStringTest",
325    ":UtilsThreadPoolTest",
326    ":UtilsThreadTest",
327    ":UtilsTimerTest",
328    ":UtilsUniqueFdTest",
329  ]
330}
331###############################################################################
332