1# Copyright (c) 2022-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
14import("//build/test.gni")
15import("//foundation/filemanagement/app_file_service/backup.gni")
16
17ohos_unittest("b_error_test") {
18  branch_protector_ret = "pac_ret"
19  sanitize = {
20    integer_overflow = true
21    cfi = true
22    cfi_cross_dso = true
23    debug = false
24  }
25
26  module_out_path = path_module_out_tests
27
28  sources = [ "b_error/b_error_test.cpp" ]
29
30  deps = [
31    "${path_backup}/tests/utils:backup_test_utils",
32    "${path_backup}/utils/:backup_utils",
33  ]
34
35  external_deps = [ "hilog:libhilog" ]
36
37  defines = [ "private = public" ]
38
39  use_exceptions = true
40}
41
42ohos_unittest("b_file_test") {
43  branch_protector_ret = "pac_ret"
44  sanitize = {
45    integer_overflow = true
46    cfi = true
47    cfi_cross_dso = true
48    debug = false
49  }
50
51  module_out_path = path_module_out_tests
52
53  sources = [
54    "b_filesystem/b_dir_test.cpp",
55    "b_filesystem/b_file_hash_test.cpp",
56    "b_filesystem/b_file_test.cpp",
57  ]
58
59  include_dirs = [ "${path_backup}/utils/src/b_filesystem" ]
60
61  deps = [
62    "${path_backup}/tests/utils:backup_test_utils",
63    "${path_backup}/utils/:backup_utils",
64    "${path_jsoncpp}:jsoncpp",
65  ]
66
67  external_deps = [
68    "c_utils:utils",
69    "hilog:libhilog",
70  ]
71
72  use_exceptions = true
73}
74
75ohos_unittest("b_jsonutil_test") {
76  branch_protector_ret = "pac_ret"
77  sanitize = {
78    integer_overflow = true
79    cfi = true
80    cfi_cross_dso = true
81    debug = false
82  }
83
84  module_out_path = path_module_out_tests
85
86  sources = [ "b_jsonutil/b_jsonutil_test.cpp" ]
87
88  deps = [
89    "${path_backup}/tests/utils:backup_test_utils",
90    "${path_backup}/utils/:backup_utils",
91    "${path_jsoncpp}:jsoncpp",
92  ]
93
94  external_deps = [
95    "cJSON:cjson",
96    "c_utils:utils",
97    "hilog:libhilog",
98  ]
99
100  use_exceptions = true
101}
102
103ohos_unittest("b_json_test") {
104  branch_protector_ret = "pac_ret"
105
106  module_out_path = path_module_out_tests
107
108  sources = [
109    "${path_backup}/utils/src/b_json/b_json_entity_extension_config.cpp",
110    "${path_backup}/utils/src/b_json/b_json_service_disposal_config.cpp",
111    "b_json/b_json_cached_entity_test.cpp",
112    "b_json/b_json_entity_ext_manage_test.cpp",
113    "b_json/b_json_entity_extension_config_test.cpp",
114    "b_json/b_json_service_disposal_config_test.cpp",
115    "b_json/b_report_entity_test.cpp",
116  ]
117  sources += backup_mock_parameter_src
118
119  include_dirs = [
120    "${path_backup}/utils",
121    "${path_base}/include",
122  ]
123  include_dirs += backup_mock_parameter_include_dirs
124
125  deps = [
126    "${path_backup}/interfaces/innerkits/native:sandbox_helper_native",
127    "${path_backup}/tests/utils:backup_test_utils",
128    "${path_backup}/utils/:backup_utils",
129    "${path_googletest}:gmock_main",
130    "${path_jsoncpp}:jsoncpp",
131  ]
132
133  external_deps = [
134    "cJSON:cjson",
135    "c_utils:utils",
136    "hilog:libhilog",
137  ]
138
139  defines = [
140    "LOG_TAG=\"app_file_service\"",
141    "LOG_DOMAIN=0xD004303",
142    "private = public",
143    "protected = public",
144  ]
145
146  sanitize = {
147    integer_overflow = true
148    cfi = true
149    cfi_cross_dso = true
150    debug = false
151  }
152
153  use_exceptions = true
154}
155
156ohos_unittest("b_tarball_cmdline_test") {
157  branch_protector_ret = "pac_ret"
158  sanitize = {
159    integer_overflow = true
160    cfi = true
161    cfi_cross_dso = true
162    debug = false
163  }
164
165  module_out_path = path_module_out_tests
166
167  sources = [
168    "${path_backup_mock}/b_process/b_process_mock.cpp",
169    "b_tarball/b_tarball_cmdline_test.cpp",
170  ]
171
172  include_dirs = [
173    "${path_base}/include",
174    "${path_backup}/utils/include",
175  ]
176
177  deps = [
178    "${path_backup}/tests/utils:backup_test_utils",
179    "${path_backup}/utils/:backup_utils",
180    "${path_googletest}:gmock_main",
181  ]
182
183  external_deps = [
184    "c_utils:utils",
185    "hilog:libhilog",
186  ]
187
188  use_exceptions = true
189}
190
191ohos_unittest("b_tarball_factory_test") {
192  branch_protector_ret = "pac_ret"
193  sanitize = {
194    integer_overflow = true
195    cfi = true
196    cfi_cross_dso = true
197    debug = false
198  }
199
200  module_out_path = path_module_out_tests
201
202  sources = [
203    "${path_backup_mock}/b_tarball/b_tarball_cmdline_mock.cpp",
204    "b_tarball/b_tarball_factory_test.cpp",
205  ]
206
207  include_dirs = [
208    "${path_base}/include",
209    "${path_backup}/utils/include",
210  ]
211
212  deps = [
213    "${path_backup}/tests/utils:backup_test_utils",
214    "${path_googletest}:gmock_main",
215  ]
216  external_deps = [ "c_utils:utils" ]
217  use_exceptions = true
218}
219
220ohos_unittest("b_process_test") {
221  branch_protector_ret = "pac_ret"
222  sanitize = {
223    integer_overflow = true
224    cfi = true
225    cfi_cross_dso = true
226    debug = false
227  }
228
229  module_out_path = path_module_out_tests
230
231  sources = [ "b_process/b_process_test.cpp" ]
232
233  include_dirs = [
234    "${path_base}/include",
235    "${path_backup}/utils/include",
236  ]
237
238  deps = [
239    "${path_backup}/tests/utils:backup_test_utils",
240    "${path_backup}/utils/:backup_utils",
241    "${path_jsoncpp}:jsoncpp",
242  ]
243  external_deps = [
244    "c_utils:utils",
245    "hilog:libhilog",
246  ]
247
248  use_exceptions = true
249}
250
251ohos_unittest("b_json_other_test") {
252  module_out_path = path_module_out_tests
253
254  sources = [
255    "${path_backup}/tests/mock/cJson/src/cJsonMock.cpp",
256    "${path_backup}/tests/unittests/backup_utils/b_json/b_json_service_disposal_config_other_test.cpp",
257    "${path_backup}/utils/src/b_json/b_json_service_disposal_config.cpp",
258  ]
259  sources += backup_mock_parameter_src
260
261  include_dirs = [
262    "${path_backup}/utils",
263    "${path_base}/include",
264    "${path_backup}/tests/mock/cJson/include",
265  ]
266  include_dirs += backup_mock_parameter_include_dirs
267
268  deps = [
269    "${path_backup}/interfaces/innerkits/native:sandbox_helper_native",
270    "${path_backup}/tests/utils:backup_test_utils",
271    "${path_backup}/utils/:backup_utils",
272    "${path_googletest}:gmock_main",
273    "${path_jsoncpp}:jsoncpp",
274  ]
275
276  external_deps = [
277    "cJSON:cjson",
278    "c_utils:utils",
279    "hilog:libhilog",
280  ]
281
282  defines = [
283    "LOG_TAG=\"app_file_service\"",
284    "LOG_DOMAIN=0xD004303",
285    "private = public",
286    "protected = public",
287  ]
288
289  use_exceptions = true
290}
291
292ohos_unittest("b_jsonutil_other_test") {
293  module_out_path = path_module_out_tests
294
295  sources = [
296    "${path_backup}/tests/mock/cJson/src/cJsonMock.cpp",
297    "${path_backup}/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_other_test.cpp",
298    "${path_backup}/utils/src/b_jsonutil/b_jsonutil.cpp",
299  ]
300  sources += backup_mock_parameter_src
301
302  include_dirs = [
303    "${path_backup}/utils",
304    "${path_base}/include",
305    "${path_backup}/tests/mock/cJson/include",
306  ]
307  include_dirs += backup_mock_parameter_include_dirs
308
309  deps = [
310    "${path_backup}/tests/utils:backup_test_utils",
311    "${path_backup}/utils/:backup_utils",
312    "${path_googletest}:gmock_main",
313    "${path_jsoncpp}:jsoncpp",
314  ]
315
316  external_deps = [
317    "cJSON:cjson",
318    "c_utils:utils",
319    "hilog:libhilog",
320  ]
321
322  defines = [
323    "LOG_TAG=\"app_file_service\"",
324    "LOG_DOMAIN=0xD004303",
325    "private = public",
326    "protected = public",
327  ]
328
329  use_exceptions = true
330}
331
332ohos_unittest("b_json_clear_data_test") {
333  module_out_path = path_module_out_tests
334
335  sources = [
336    "${path_backup}/tests/mock/cJson/src/cJsonMock.cpp",
337    "${path_backup}/tests/unittests/backup_utils/b_json/b_json_clear_data_config_test.cpp",
338    "${path_backup}/utils/src/b_json/b_json_clear_data_config.cpp",
339  ]
340  sources += backup_mock_parameter_src
341
342  include_dirs = [
343    "${path_backup}/utils",
344    "${path_base}/include",
345    "${path_backup}/tests/mock/cJson/include",
346  ]
347  include_dirs += backup_mock_parameter_include_dirs
348
349  deps = [
350    "${path_backup}/interfaces/innerkits/native:sandbox_helper_native",
351    "${path_backup}/tests/utils:backup_test_utils",
352    "${path_backup}/utils/:backup_utils",
353    "${path_googletest}:gmock_main",
354    "${path_jsoncpp}:jsoncpp",
355  ]
356
357  external_deps = [
358    "cJSON:cjson",
359    "c_utils:utils",
360    "hilog:libhilog",
361  ]
362
363  defines = [
364    "LOG_TAG=\"app_file_service\"",
365    "LOG_DOMAIN=0xD004303",
366    "private = public",
367    "protected = public",
368  ]
369
370  use_exceptions = true
371}
372
373group("backup_test") {
374  testonly = true
375
376  deps = [
377    ":b_error_test",
378    ":b_file_test",
379    ":b_json_clear_data_test",
380    ":b_json_other_test",
381    ":b_json_test",
382    ":b_jsonutil_other_test",
383    ":b_jsonutil_test",
384    ":b_process_test",
385    ":b_tarball_cmdline_test",
386    ":b_tarball_factory_test",
387  ]
388}
389