1# Copyright (c) 2021-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/communication/netmanager_base/netmanager_base_config.gni")
16
17ohos_unittest("netsys_native_manager_test") {
18  module_out_path = "netmanager_base/netsys_native_manager_test"
19
20  sanitize = {
21    cfi = true
22    cfi_cross_dso = true
23    debug = false
24  }
25
26  branch_protector_ret = "pac_ret"
27
28  sources = [
29    "dhcp_result_parcel_test.cpp",
30    "dns_manager_test.cpp",
31    "dns_param_cache_test.cpp",
32    "dns_proxy_listen_test.cpp",
33    "dns_resolv_listen_test.cpp",
34    "fwmark_network_test.cpp",
35    "interface_manager_test.cpp",
36    "iptables_wrapper_test.cpp",
37    "local_network_test.cpp",
38    "mock_netsys_native_client_test.cpp",
39    "net_conn_manager_test_util.cpp",
40    "net_diag_wrapper_test.cpp",
41    "netlink_msg_test.cpp",
42    "netsys_controller_service_impl_test.cpp",
43    "netsys_native_service_stub_test.cpp",
44    "netsys_network_test.cpp",
45    "netsys_udp_transfer_test.cpp",
46    "physical_network_test.cpp",
47    "route_manager_test.cpp",
48    "sharing_manager_test.cpp",
49    "traffic_manager_test.cpp",
50    "virtual_network_test.cpp",
51    "vnic_manager_test.cpp",
52    "vpn_manager_test.cpp",
53  ]
54
55  include_dirs = [
56    "$NETSYSNATIVE_INNERKITS_SOURCE_DIR",
57    "$INNERKITS_ROOT/netmanagernative/include",
58    "$NETSYSNATIVE_SOURCE_DIR/include/manager",
59    "$NETSYSNATIVE_SOURCE_DIR/include/netsys",
60    "$FWMARK_CLIENT_DIR/include",
61    "$NETMANAGERNATIVE_ROOT/include",
62    "$NETMANAGERNATIVE_ROOT/include/netsys/wrapper",
63    "$NETMANAGER_BASE_ROOT/services/common/include",
64    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf/include",
65    "$NETMANAGER_BASE_ROOT/services/netmanagernative/src/netsys",
66    "$NETMANAGER_BASE_ROOT/test/commonduplicatedcode",
67    "$NETSYSCONTROLLER_ROOT_DIR/include",
68    "$NETMANAGERNATIVE_ROOT/src/netsys/dnsresolv",
69  ]
70
71  deps = [
72    "$FWMARK_CLIENT_DIR:fwmark_client",
73    "$NETMANAGERNATIVE_ROOT:netsys_client",
74    "$NETMANAGER_BASE_ROOT/services/netmanagernative:netsys_native_manager_static",
75    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf:netsys_bpf_utils",
76    "$NETMANAGER_BASE_ROOT/services/netsyscontroller:netsys_controller",
77  ]
78
79  external_deps = [
80    "ability_base:want",
81    "bundle_framework:appexecfwk_base",
82    "bundle_framework:appexecfwk_core",
83    "c_utils:utils",
84    "dhcp:dhcp_sdk",
85    "ffrt:libffrt",
86    "init:libbegetutil",
87    "ipc:ipc_core",
88    "safwk:system_ability_fwk",
89    "samgr:samgr_proxy",
90  ]
91
92  defines = [
93    "NETMGRNATIVE_LOG_TAG = \"NetsysNativeService\"",
94    "LOG_DOMAIN = 0xD0015B0",
95    "SHARING_MANAGER_DEPS",
96  ]
97
98  external_deps += [ "hilog:libhilog" ]
99
100  part_name = "netmanager_base"
101  subsystem_name = "communication"
102}
103
104ohos_unittest("netsys_native_manager_fault_through_test") {
105  module_out_path = "netmanager_base/netsys_native_manager_test"
106
107  sanitize = {
108    cfi = true
109    cfi_cross_dso = true
110    debug = false
111  }
112
113  branch_protector_ret = "pac_ret"
114
115  sources = [
116    "dhcp_controller_test.cpp",
117    "net_manager_native_test.cpp",
118    "netsys_native_service_test.cpp",
119    "notify_callback_proxy_test.cpp",
120    "notify_callback_stub_test.cpp",
121  ]
122
123  include_dirs = [
124    "$NETSYSNATIVE_INNERKITS_SOURCE_DIR",
125    "$INNERKITS_ROOT/netmanagernative/include",
126    "$NETSYSNATIVE_SOURCE_DIR/include/manager",
127    "$NETSYSNATIVE_SOURCE_DIR/include/netsys",
128    "$FWMARK_CLIENT_DIR/include",
129    "$NETMANAGERNATIVE_ROOT/include",
130    "$NETMANAGERNATIVE_ROOT/include/netsys/wrapper",
131    "$NETMANAGER_BASE_ROOT/services/common/include",
132    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf/include",
133    "$NETMANAGER_BASE_ROOT/services/netmanagernative/src/netsys",
134    "$NETMANAGER_BASE_ROOT/test/commonduplicatedcode",
135    "$NETSYSCONTROLLER_ROOT_DIR/include",
136    "$NETMANAGERNATIVE_ROOT/src/netsys/dnsresolv",
137  ]
138
139  deps = [
140    "$FWMARK_CLIENT_DIR:fwmark_client",
141    "$NETMANAGERNATIVE_ROOT:netsys_client",
142    "$NETMANAGER_BASE_ROOT/services/netmanagernative:netsys_native_manager_static",
143    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf:netsys_bpf_utils",
144    "$NETMANAGER_BASE_ROOT/services/netsyscontroller:netsys_controller",
145  ]
146
147  external_deps = [
148    "ability_base:want",
149    "bundle_framework:appexecfwk_base",
150    "bundle_framework:appexecfwk_core",
151    "c_utils:utils",
152    "dhcp:dhcp_sdk",
153    "ffrt:libffrt",
154    "init:libbegetutil",
155    "ipc:ipc_core",
156    "safwk:system_ability_fwk",
157    "samgr:samgr_proxy",
158  ]
159
160  defines = [
161    "NETMGRNATIVE_LOG_TAG = \"NetsysNativeService\"",
162    "LOG_DOMAIN = 0xD0015B0",
163    "SHARING_MANAGER_DEPS",
164  ]
165
166  external_deps += [ "hilog:libhilog" ]
167
168  part_name = "netmanager_base"
169  subsystem_name = "communication"
170}
171
172ohos_unittest("netsys_controller_test") {
173  sanitize = {
174    cfi = true
175    cfi_cross_dso = true
176    debug = false
177  }
178
179  branch_protector_ret = "pac_ret"
180
181  module_out_path = "netmanager_base/netsys_controller_test"
182  sources = [
183    "$NETMANAGER_BASE_ROOT/test/security/netmanager_base_test_security.cpp",
184    "netsys_controller_test.cpp",
185  ]
186
187  include_dirs = [
188    "$NETSYSNATIVE_INNERKITS_SOURCE_DIR",
189    "$INNERKITS_ROOT/netmanagernative/include",
190    "$NETSYSNATIVE_SOURCE_DIR/include/manager",
191    "$NETSYSNATIVE_SOURCE_DIR/include/netsys",
192    "$FWMARK_CLIENT_DIR/include",
193    "$NETMANAGERNATIVE_ROOT/include",
194    "$NETMANAGERNATIVE_ROOT/include/netsys/wrapper",
195    "$NETMANAGER_BASE_ROOT/utils/common_utils/include",
196    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf/include",
197    "$NETMANAGER_BASE_ROOT/services/netmanagernative/src/netsys",
198    "$NETMANAGER_BASE_ROOT/test/commonduplicatedcode",
199    "$NETMANAGER_BASE_ROOT/test/security",
200    "$NETSYSCONTROLLER_ROOT_DIR/include",
201    "$NETMANAGERNATIVE_ROOT/src/netsys/dnsresolv",
202  ]
203
204  deps = [
205    "$FWMARK_CLIENT_DIR:fwmark_client",
206    "$NETMANAGERNATIVE_ROOT:netsys_client",
207    "$NETMANAGER_BASE_ROOT/services/netmanagernative:netsys_native_manager_static",
208    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf:netsys_bpf_utils",
209    "$NETMANAGER_BASE_ROOT/services/netsyscontroller:netsys_controller",
210  ]
211
212  external_deps = [
213    "ability_base:want",
214    "access_token:libaccesstoken_sdk",
215    "access_token:libnativetoken",
216    "access_token:libtoken_setproc",
217    "bundle_framework:appexecfwk_base",
218    "bundle_framework:appexecfwk_core",
219    "c_utils:utils",
220    "ffrt:libffrt",
221    "init:libbegetutil",
222    "ipc:ipc_core",
223    "safwk:system_ability_fwk",
224    "samgr:samgr_proxy",
225  ]
226
227  defines = [
228    "NETMGRNATIVE_LOG_TAG = \"NetsysNativeService\"",
229    "LOG_DOMAIN = 0xD0015B0",
230    "SHARING_MANAGER_DEPS",
231  ]
232
233  external_deps += [ "hilog:libhilog" ]
234
235  part_name = "netmanager_base"
236  subsystem_name = "communication"
237}
238
239ohos_unittest("netsys_native_client_test") {
240  module_out_path = "netmanager_base/netsys_native_client_test"
241
242  sanitize = {
243    cfi = true
244    cfi_cross_dso = true
245    debug = false
246  }
247
248  branch_protector_ret = "pac_ret"
249
250  sources = [ "netsys_native_client_test.cpp" ]
251
252  include_dirs = [
253    "$NETSYSNATIVE_INNERKITS_SOURCE_DIR",
254    "$INNERKITS_ROOT/netmanagernative/include",
255    "$NETSYSNATIVE_SOURCE_DIR/include/manager",
256    "$NETSYSNATIVE_SOURCE_DIR/include/netsys",
257    "$FWMARK_CLIENT_DIR/include",
258    "$NETMANAGERNATIVE_ROOT/include",
259    "$NETMANAGERNATIVE_ROOT/include/netsys/wrapper",
260    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf/include",
261    "$NETMANAGER_BASE_ROOT/services/netmanagernative/src/netsys",
262    "$NETSYSCONTROLLER_ROOT_DIR/include",
263    "$NETMANAGERNATIVE_ROOT/src/netsys/dnsresolv",
264  ]
265
266  deps = [
267    "$FWMARK_CLIENT_DIR:fwmark_client",
268    "$NETMANAGERNATIVE_ROOT:netsys_client",
269    "$NETMANAGER_BASE_ROOT/services/netmanagernative:netsys_native_manager_static",
270    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf:netsys_bpf_utils",
271    "$NETMANAGER_BASE_ROOT/services/netsyscontroller:netsys_controller",
272  ]
273
274  external_deps = [
275    "ability_base:want",
276    "bundle_framework:appexecfwk_base",
277    "bundle_framework:appexecfwk_core",
278    "c_utils:utils",
279    "ffrt:libffrt",
280    "init:libbegetutil",
281    "ipc:ipc_core",
282    "safwk:system_ability_fwk",
283    "samgr:samgr_proxy",
284  ]
285
286  defines = [
287    "NETMGRNATIVE_LOG_TAG = \"NetsysNativeService\"",
288    "LOG_DOMAIN = 0xD0015B0",
289    "SHARING_MANAGER_DEPS",
290  ]
291
292  external_deps += [ "hilog:libhilog" ]
293
294  part_name = "netmanager_base"
295  subsystem_name = "communication"
296}
297
298ohos_unittest("netsys_native_service_proxy_test") {
299  sanitize = {
300    cfi = true
301    cfi_cross_dso = true
302    debug = false
303  }
304
305  branch_protector_ret = "pac_ret"
306
307  module_out_path = "netmanager_base/netsys_native_service_proxy_test"
308  sources = [
309    "$NETMANAGER_BASE_ROOT/test/security/netmanager_base_test_security.cpp",
310    "netsys_native_service_proxy_test.cpp",
311  ]
312
313  include_dirs = [
314    "$NETMANAGER_BASE_ROOT/test/security",
315    "$NETSYSNATIVE_INNERKITS_SOURCE_DIR",
316    "$INNERKITS_ROOT/netconnclient/include",
317    "$INNERKITS_ROOT/netconnclient/include/proxy",
318    "$INNERKITS_ROOT/netmanagernative/include",
319    "$NETSYSNATIVE_SOURCE_DIR/include/manager",
320    "$NETSYSNATIVE_SOURCE_DIR/include/netsys",
321    "$FWMARK_CLIENT_DIR/include",
322    "$NETMANAGERNATIVE_ROOT/include",
323    "$NETMANAGERNATIVE_ROOT/include/netsys/wrapper",
324    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf/include",
325    "$NETMANAGER_BASE_ROOT/services/netmanagernative/src/netsys",
326    "$NETSYSCONTROLLER_ROOT_DIR/include",
327    "$NETMANAGERNATIVE_ROOT/src/netsys/dnsresolv",
328  ]
329
330  deps = [
331    "$FWMARK_CLIENT_DIR:fwmark_client",
332    "$INNERKITS_ROOT/netconnclient:net_conn_manager_if",
333    "$NETMANAGERNATIVE_ROOT:netsys_client",
334    "$NETMANAGER_BASE_ROOT/services/netmanagernative:netsys_native_manager_static",
335    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf:netsys_bpf_utils",
336    "$NETMANAGER_BASE_ROOT/services/netsyscontroller:netsys_controller",
337  ]
338
339  external_deps = [
340    "ability_base:want",
341    "access_token:libaccesstoken_sdk",
342    "access_token:libnativetoken",
343    "access_token:libtoken_setproc",
344    "bundle_framework:appexecfwk_base",
345    "bundle_framework:appexecfwk_core",
346    "c_utils:utils",
347    "ffrt:libffrt",
348    "init:libbegetutil",
349    "ipc:ipc_core",
350    "safwk:system_ability_fwk",
351    "samgr:samgr_proxy",
352  ]
353
354  defines = [
355    "NETMGRNATIVE_LOG_TAG = \"NetsysNativeService\"",
356    "LOG_DOMAIN = 0xD0015B0",
357    "SHARING_MANAGER_DEPS",
358  ]
359
360  external_deps += [ "hilog:libhilog" ]
361
362  part_name = "netmanager_base"
363  subsystem_name = "communication"
364}
365
366ohos_unittest("resolver_config_test") {
367  module_out_path = "netmanager_base/resolver_config_test"
368
369  sanitize = {
370    cfi = true
371    cfi_cross_dso = true
372    debug = false
373  }
374
375  branch_protector_ret = "pac_ret"
376
377  sources = [ "resolver_config_test.cpp" ]
378
379  include_dirs = [
380    "$NETSYSNATIVE_INNERKITS_SOURCE_DIR",
381    "$INNERKITS_ROOT/netmanagernative/include",
382    "$NETSYSNATIVE_SOURCE_DIR/include/manager",
383    "$NETSYSNATIVE_SOURCE_DIR/include/netsys",
384    "$FWMARK_CLIENT_DIR/include",
385    "$NETMANAGERNATIVE_ROOT/include",
386    "$NETMANAGERNATIVE_ROOT/include/netsys/wrapper",
387    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf/include",
388    "$NETMANAGER_BASE_ROOT/services/netmanagernative/src/netsys",
389    "$NETSYSCONTROLLER_ROOT_DIR/include",
390    "$NETMANAGERNATIVE_ROOT/src/netsys/dnsresolv",
391  ]
392
393  deps = [
394    "$FWMARK_CLIENT_DIR:fwmark_client",
395    "$NETMANAGERNATIVE_ROOT:netsys_client",
396    "$NETMANAGER_BASE_ROOT/services/netmanagernative:netsys_native_manager_static",
397    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf:netsys_bpf_utils",
398    "$NETMANAGER_BASE_ROOT/services/netsyscontroller:netsys_controller",
399  ]
400
401  external_deps = [
402    "ability_base:want",
403    "bundle_framework:appexecfwk_base",
404    "bundle_framework:appexecfwk_core",
405    "c_utils:utils",
406    "ffrt:libffrt",
407    "init:libbegetutil",
408    "ipc:ipc_core",
409    "safwk:system_ability_fwk",
410    "samgr:samgr_proxy",
411  ]
412
413  defines = [
414    "NETMGRNATIVE_LOG_TAG = \"NetsysNativeService\"",
415    "LOG_DOMAIN = 0xD0015B0",
416    "SHARING_MANAGER_DEPS",
417  ]
418
419  external_deps += [ "hilog:libhilog" ]
420
421  part_name = "netmanager_base"
422  subsystem_name = "communication"
423}
424
425ohos_unittest("conn_manager_test") {
426  module_out_path = "netmanager_base/solve_conn_manager_test"
427
428  sanitize = {
429    cfi = true
430    cfi_cross_dso = true
431    debug = false
432  }
433
434  branch_protector_ret = "pac_ret"
435
436  sources = [ "conn_manager_test.cpp" ]
437
438  include_dirs = [
439    "$NETSYSNATIVE_INNERKITS_SOURCE_DIR",
440    "$INNERKITS_ROOT/netmanagernative/include",
441    "$NETSYSNATIVE_SOURCE_DIR/include/manager",
442    "$NETSYSNATIVE_SOURCE_DIR/include/netsys",
443    "$FWMARK_CLIENT_DIR/include",
444    "$NETMANAGERNATIVE_ROOT/include",
445    "$NETMANAGERNATIVE_ROOT/include/netsys/wrapper",
446    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf/include",
447    "$NETMANAGER_BASE_ROOT/services/netmanagernative/src/netsys",
448    "$NETSYSCONTROLLER_ROOT_DIR/include",
449    "$NETMANAGERNATIVE_ROOT/src/netsys/dnsresolv",
450  ]
451
452  deps = [
453    "$FWMARK_CLIENT_DIR:fwmark_client",
454    "$NETMANAGERNATIVE_ROOT:netsys_client",
455    "$NETMANAGER_BASE_ROOT/services/netmanagernative:netsys_native_manager_static",
456    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf:netsys_bpf_utils",
457    "$NETMANAGER_BASE_ROOT/services/netsyscontroller:netsys_controller",
458  ]
459
460  external_deps = [
461    "ability_base:want",
462    "bundle_framework:appexecfwk_base",
463    "bundle_framework:appexecfwk_core",
464    "c_utils:utils",
465    "ffrt:libffrt",
466    "init:libbegetutil",
467    "ipc:ipc_core",
468    "safwk:system_ability_fwk",
469    "samgr:samgr_proxy",
470  ]
471
472  defines = [
473    "NETMGRNATIVE_LOG_TAG = \"NetsysNativeService\"",
474    "LOG_DOMAIN = 0xD0015B0",
475    "SHARING_MANAGER_DEPS",
476  ]
477
478  external_deps += [ "hilog:libhilog" ]
479
480  part_name = "netmanager_base"
481  subsystem_name = "communication"
482}
483
484ohos_unittest("nat464_clat_test") {
485  module_out_path = "netmanager_base/nat464_clat_test"
486
487  sanitize = {
488    cfi = true
489    cfi_cross_dso = true
490    debug = false
491  }
492
493  branch_protector_ret = "pac_ret"
494
495  sources = [ "clatd_packet_converter_test.cpp" ]
496
497  include_dirs = [
498    "$NETSYSNATIVE_INNERKITS_SOURCE_DIR",
499    "$INNERKITS_ROOT/netmanagernative/include",
500    "$NETSYSNATIVE_SOURCE_DIR/include/manager",
501    "$NETSYSNATIVE_SOURCE_DIR/include/netsys",
502    "$FWMARK_CLIENT_DIR/include",
503    "$NETMANAGERNATIVE_ROOT/include",
504    "$NETMANAGERNATIVE_ROOT/include/netsys/wrapper",
505    "$NETMANAGER_BASE_ROOT/services/common/include",
506    "$NETMANAGER_BASE_ROOT/services/netmanagernative/bpf/include",
507    "$NETMANAGER_BASE_ROOT/services/netmanagernative/src/netsys",
508    "$NETSYSCONTROLLER_ROOT_DIR/include",
509    "$NETMANAGERNATIVE_ROOT/src/netsys/dnsresolv",
510  ]
511
512  deps = [ "$NETMANAGER_BASE_ROOT/services/netmanagernative:netsys_native_manager_static" ]
513
514  external_deps = [
515    "ability_base:want",
516    "bundle_framework:appexecfwk_base",
517    "bundle_framework:appexecfwk_core",
518    "c_utils:utils",
519    "init:libbegetutil",
520    "ipc:ipc_core",
521    "safwk:system_ability_fwk",
522    "samgr:samgr_proxy",
523  ]
524
525  defines = [
526    "NETMGRNATIVE_LOG_TAG = \"NetsysNativeService\"",
527    "LOG_DOMAIN = 0xD0015B0",
528    "SHARING_MANAGER_DEPS",
529  ]
530
531  external_deps += [ "hilog:libhilog" ]
532
533  part_name = "netmanager_base"
534  subsystem_name = "communication"
535}
536