• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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/ohos.gni")
15import("//build/test.gni")
16import("../../multimodalinput_mini.gni")
17
18defines = input_default_defines
19
20module_output_path = "multimodalinput/mmi_unit_out"
21
22config("libmmi_client_config") {
23  visibility = [ ":*" ]
24
25  include_dirs = [
26    "${mmi_path}/interfaces/kits/c/input",
27    "${mmi_path}/interfaces/native/innerkits/common/include",
28    "${mmi_path}/util/common/include",
29    "${mmi_path}/interfaces/native/innerkits/event/include",
30    "event_handler/include",
31    "events/include",
32    "module_loader/include",
33  ]
34}
35
36config("libmmi_public_client_config") {
37  include_dirs = [
38    "${mmi_path}/common/anco/comm/include",
39    "${mmi_path}/interfaces/native/innerkits",
40    "${mmi_path}/interfaces/native/innerkits/event/include",
41    "${mmi_path}/interfaces/native/innerkits/proxy/include",
42    "${mmi_path}/util/common/include",
43  ]
44
45  if (input_ext_feature_anco) {
46    include_dirs += [ "${mmi_ext_path}/anco_uds_manager/include" ]
47  }
48}
49
50config("libmmi_test_util") {
51  include_dirs = [
52    "${mmi_path}/frameworks/proxy/event_handler/include",
53    "${mmi_path}/frameworks/proxy/module_loader/include",
54    "${mmi_path}/interfaces/native/innerkits/common/include",
55    "${mmi_path}/interfaces/native/innerkits/proxy/include",
56    "${mmi_path}/test/unittest/common/include",
57    "${mmi_path}/util/network/include",
58    "${mmi_path}/util/socket/include",
59  ]
60}
61
62ohos_source_set("libmmi-common") {
63  sources = libmmi_common_sources
64  public_configs = [ ":libmmi_client_config" ]
65  visibility = [ "${mmi_path}/*" ]
66  branch_protector_ret = "pac_ret"
67  external_deps = [
68    "c_utils:utils",
69    "ffrt:libffrt",
70    "hilog:libhilog",
71    "init:libbegetutil",
72  ]
73
74  part_name = "input"
75  subsystem_name = "multimodalinput"
76}
77
78if (is_arkui_x) {
79  ohos_source_set("libmmi-client-crossplatform") {
80    sources = libmmi_common_sources
81    public_configs = [ ":libmmi_public_client_config" ]
82    include_dirs = [
83      "${c_utils_root}/base/include",
84      "${mmi_path}/frameworks/proxy/events/include",
85    ]
86
87    if (target_os == "android") {
88      defines += [ "ANDROID_PLATFORM" ]
89    } else if (target_os == "ios") {
90      defines += [ "IOS_PLATFORM" ]
91    }
92
93    deps = [ "${hilog_root}/interfaces/native/innerkits:libhilog_${target_os}" ]
94
95    part_name = "input"
96    subsystem_name = "multimodalinput"
97  }
98}
99
100ohos_shared_library("libmmi-client") {
101  sources = libmmi_client_sources
102  version_script = "${mmi_path}/interfaces/native/innerkits/libmmi-client-map"
103  innerapi_tags = [ "platformsdk" ]
104  branch_protector_ret = "pac_ret"
105
106  sources += [ "event_handler/src/tablet_event_input_subscribe_manager.cpp" ]
107  if (input_feature_interceptor) {
108    sources += [ "event_handler/src/input_interceptor_manager.cpp" ]
109  }
110
111  if (input_feature_monitor) {
112    sources += [ "event_handler/src/input_monitor_manager.cpp" ]
113  }
114
115  if (input_feature_keyboard) {
116    sources += [ "event_handler/src/key_event_input_subscribe_manager.cpp" ]
117  }
118
119  if (input_feature_switch) {
120    sources += [ "event_handler/src/switch_event_input_subscribe_manager.cpp" ]
121  }
122
123  configs = [
124    "${mmi_path}:coverage_flags",
125    ":libmmi_client_config",
126    "${mmi_path}/util:libmmi_util_public_config",
127    "${mmi_path}/service/filter:mmi_event_filter_config",
128    "${mmi_path}/service/connect_manager:mmi_connect_manager_config",
129  ]
130
131  public_configs = [ ":libmmi_public_client_config" ]
132
133  deps = [
134    ":libmmi-common",
135    "${mmi_path}/service/connect_manager:mmi_connect_manager_proxy",
136    "${mmi_path}/service/filter:mmi_event_filter_service",
137    "${mmi_path}/util:libmmi-util",
138  ]
139
140  if (input_ext_feature_anco) {
141    deps += [ "${mmi_path}/common/anco/comm:mmi_anco_channel_stub" ]
142  }
143
144  part_name = "input"
145  subsystem_name = "multimodalinput"
146  external_deps = [
147    "c_utils:utils",
148    "eventhandler:libeventhandler",
149    "ffrt:libffrt",
150    "graphic_2d:2d_graphics",
151    "hilog:libhilog",
152    "image_framework:image_native",
153    "init:libbegetutil",
154    "ipc:ipc_single",
155    "qos_manager:qos",
156    "samgr:samgr_proxy",
157  ]
158
159  if (hitrace_enabled) {
160    external_deps += [ "hitrace:hitrace_meter" ]
161  }
162}
163
164ohos_unittest("ut-mmi-proxy-out") {
165  module_out_path = module_output_path
166  include_dirs = [ "$root_out_dir/diff_libinput_mmi/export_include" ]
167
168  sources = [ "module_loader/test/mmi_client_test.cpp" ]
169
170  configs = [
171    "${mmi_path}:coverage_flags",
172    ":libmmi_test_util",
173  ]
174
175  deps = [
176    "${mmi_path}/frameworks/proxy:libmmi-client",
177    "${mmi_path}/util:libmmi-util",
178  ]
179  external_deps = [
180    "c_utils:utils",
181    "eventhandler:libeventhandler",
182    "googletest:gmock_main",
183    "googletest:gtest_main",
184    "hilog:libhilog",
185    "ipc:ipc_single",
186  ]
187}
188
189ohos_unittest("KeyEventTest") {
190  module_out_path = module_output_path
191  include_dirs = [ "$root_out_dir/diff_libinput_mmi/export_include" ]
192
193  cflags = [
194    "-Dprivate=public",
195    "-Dprotected=public",
196  ]
197
198  sources = [
199    "${mmi_path}/test/unittest/common/src/event_util_test.cpp",
200    "${mmi_path}/test/unittest/common/src/window_utils_test.cpp",
201    "events/test/input_event_test.cpp",
202    "events/test/key_event_test.cpp",
203  ]
204
205  configs = [
206    "${mmi_path}:coverage_flags",
207    ":libmmi_test_util",
208  ]
209
210  deps = [
211    "${mmi_path}/frameworks/proxy:libmmi-client",
212    "${mmi_path}/util:libmmi-util",
213  ]
214  external_deps = [
215    "ability_runtime:abilitykit_native",
216    "access_token:libaccesstoken_sdk",
217    "access_token:libnativetoken_shared",
218    "access_token:libtokensetproc_shared",
219    "c_utils:utils",
220    "eventhandler:libeventhandler",
221    "googletest:gmock_main",
222    "googletest:gtest_main",
223    "hilog:libhilog",
224    "ipc:ipc_single",
225    "window_manager:libwm",
226    "window_manager:libwsutils",
227  ]
228}
229
230ohos_unittest("InputHandlerManagerTest") {
231  module_out_path = module_output_path
232
233  include_dirs = []
234
235  configs = [
236    "${mmi_path}:coverage_flags",
237    ":libmmi_client_config",
238    "${mmi_path}/service:libmmi_server_config",
239  ]
240
241  cflags = [
242    "-Dprivate=public",
243    "-Dprotected=public",
244  ]
245
246  sources = [
247    "event_handler/src/anr_handler.cpp",
248    "event_handler/src/input_handler_manager.cpp",
249    "event_handler/test/input_handler_manager_test.cpp",
250    "event_handler/test/scene_board_judgement_test.cpp",
251  ]
252
253  deps = [
254    "${mmi_path}/frameworks/proxy:libmmi-client",
255    "${mmi_path}/service:libmmi-server",
256    "${mmi_path}/service/connect_manager:mmi_connect_manager_proxy",
257    "${mmi_path}/util:libmmi-util",
258  ]
259
260  external_deps = [
261    "call_manager:tel_call_manager_api",
262    "common_event_service:cesfwk_innerkits",
263    "config_policy:configpolicy_util",
264    "data_share:datashare_consumer",
265    "drivers_interface_display:libdisplay_composer_hdi_impl_1.2",
266    "drivers_interface_display:libdisplay_composer_proxy_1.0",
267    "eventhandler:libeventhandler",
268    "faultloggerd:libbacktrace_local",
269    "ffrt:libffrt",
270    "googletest:gtest_main",
271    "graphic_2d:2d_graphics",
272    "graphic_2d:libcomposer",
273    "graphic_2d:librender_service_client",
274    "graphic_2d:window_animation",
275    "hdf_core:libhdi",
276    "hicollie:libhicollie",
277    "hilog:libhilog",
278    "hisysevent:libhisysevent",
279    "image_framework:image_native",
280    "init:libbeget_proxy",
281    "init:libbegetutil",
282    "ipc:ipc_single",
283    "napi:ace_napi",
284    "preferences:native_preferences",
285    "safwk:system_ability_fwk",
286    "samgr:samgr_proxy",
287    "window_manager:libwm_lite",
288    "window_manager:libwsutils",
289  ]
290
291  if (hitrace_enabled) {
292    external_deps += [ "hitrace:hitrace_meter" ]
293  }
294}
295
296ohos_unittest("SwitchEventInputSubscribeManagerTest") {
297  module_out_path = module_output_path
298  include_dirs = [
299    "$root_out_dir/diff_libinput_mmi/export_include",
300    "${mmi_path}/service/filter/include",
301    "${mmi_path}/service/nap_process/include",
302    "${mmi_path}/service/module_loader//include",
303    "${mmi_path}/service/connect_manager/include",
304  ]
305
306  sources = [
307    "event_handler/src/switch_event_input_subscribe_manager.cpp",
308    "event_handler/test/switch_event_input_subscribe_manager_test.cpp",
309  ]
310
311  configs = [
312    "${mmi_path}:coverage_flags",
313    ":libmmi_test_util",
314  ]
315
316  cflags = [
317    "-Dprivate=public",
318    "-Dprotected=public",
319  ]
320
321  deps = [
322    "${mmi_path}/frameworks/proxy:libmmi-client",
323    "${mmi_path}/util:libmmi-util",
324  ]
325  external_deps = [
326    "ability_runtime:abilitykit_native",
327    "access_token:libaccesstoken_sdk",
328    "access_token:libnativetoken_shared",
329    "access_token:libtokensetproc_shared",
330    "c_utils:utils",
331    "eventhandler:libeventhandler",
332    "googletest:gmock_main",
333    "googletest:gtest_main",
334    "hilog:libhilog",
335    "init:libbegetutil",
336    "ipc:ipc_single",
337    "window_manager:libwm",
338    "window_manager:libwsutils",
339  ]
340}
341
342ohos_unittest("InputManagerImplTest") {
343  module_out_path = module_output_path
344  include_dirs = [
345    "${mmi_path}/common/anco/comm/include",
346    "${mmi_path}/service/connect_manager/include",
347    "${mmi_path}/service/filter/include",
348    "${mmi_path}/service/module_loader/include",
349    "${mmi_path}/service/nap_process/include",
350    "${mmi_path}/frameworks/proxy/event_handler/include",
351  ]
352
353  sources = [
354    "${mmi_path}/common/anco/comm/src/anco_channel.cpp",
355    "${mmi_path}/common/anco/comm/src/anco_channel_stub.cpp",
356    "${mmi_path}/frameworks/proxy/events/src/i_anco_consumer.cpp",
357    "${mmi_path}/service/connect_manager/src/input_binder_client_server.cpp",
358    "${mmi_path}/service/connect_manager/src/input_binder_client_stub.cpp",
359    "${mmi_path}/service/connect_manager/src/multimodal_input_connect_death_recipient.cpp",
360    "${mmi_path}/service/connect_manager/src/multimodal_input_connect_manager.cpp",
361    "${mmi_path}/service/filter/src/event_filter_service.cpp",
362    "${mmi_path}/service/filter/src/event_filter_stub.cpp",
363    "event_handler/src/anr_handler.cpp",
364    "event_handler/src/bytrace_adapter.cpp",
365    "event_handler/src/input_handler_manager.cpp",
366    "event_handler/src/input_manager_impl.cpp",
367    "event_handler/src/key_event_input_subscribe_manager.cpp",
368    "event_handler/src/long_press_event_subscribe_manager.cpp",
369    "event_handler/src/multimodal_event_handler.cpp",
370    "event_handler/src/pre_monitor_manager.cpp",
371    "event_handler/src/switch_event_input_subscribe_manager.cpp",
372    "event_handler/src/tablet_event_input_subscribe_manager.cpp",
373    "event_handler/test/input_manager_impl_test.cpp",
374    "event_handler/test/pre_monitor_manager_test.cpp",
375  ]
376
377  configs = [
378    "${mmi_path}:coverage_flags",
379    ":libmmi_test_util",
380  ]
381
382  cflags = [
383    "-Dprivate=public",
384    "-Dprotected=public",
385  ]
386
387  deps = [
388    "${mmi_path}/service:libmmi-server",
389    "${mmi_path}/util:libmmi-util",
390  ]
391
392  external_deps = [
393    "ability_runtime:abilitykit_native",
394    "c_utils:utils",
395    "eventhandler:libeventhandler",
396    "ffrt:libffrt",
397    "googletest:gmock_main",
398    "googletest:gtest_main",
399    "hilog:libhilog",
400    "init:libbegetutil",
401    "ipc:ipc_single",
402    "samgr:samgr_proxy",
403    "window_manager:libwm",
404    "window_manager:libwsutils",
405  ]
406
407  if (hitrace_enabled) {
408    external_deps += [ "hitrace:hitrace_meter" ]
409  }
410}
411
412ohos_unittest("InputManagerTest") {
413  module_out_path = module_output_path
414  include_dirs = [
415    "${mmi_path}/frameworks/proxy/events/test",
416    "${mmi_path}/frameworks/proxy/event_handler/include",
417    "$root_out_dir/diff_libinput_mmi/export_include",
418    "${mmi_path}/service/filter/include",
419  ]
420
421  sources = [
422    "${mmi_path}/test/unittest/common/src/event_util_test.cpp",
423    "${mmi_path}/test/unittest/common/src/system_info.cpp",
424    "${mmi_path}/test/unittest/common/src/window_utils_test.cpp",
425    "events/src/input_manager_util.cpp",
426    "events/test/input_manager_simulate_test.cpp",
427    "events/test/input_manager_test.cpp",
428    "events/test/input_manager_update_display_info_test.cpp",
429    "events/test/virtual_input_device_test.cpp",
430  ]
431
432  configs = [
433    "${mmi_path}:coverage_flags",
434    ":libmmi_test_util",
435  ]
436
437  deps = [
438    "${mmi_path}/frameworks/proxy:libmmi-client",
439    "${mmi_path}/util:libmmi-util",
440  ]
441  external_deps = [
442    "ability_runtime:abilitykit_native",
443    "access_token:libaccesstoken_sdk",
444    "access_token:libnativetoken_shared",
445    "access_token:libtokensetproc_shared",
446    "c_utils:utils",
447    "eventhandler:libeventhandler",
448    "googletest:gmock_main",
449    "googletest:gtest_main",
450    "hilog:libhilog",
451    "image_framework:image_native",
452    "init:libbegetutil",
453    "ipc:ipc_single",
454    "window_manager:libwm",
455    "window_manager:libwsutils",
456  ]
457}
458
459ohos_unittest("InputManagerInjectTest") {
460  module_out_path = module_output_path
461  include_dirs = [
462    "${mmi_path}/frameworks/proxy/events/test",
463    "${mmi_path}/frameworks/proxy/event_handler/include",
464    "$root_out_dir/diff_libinput_mmi/export_include",
465    "${mmi_path}/service/filter/include",
466  ]
467
468  sources = [
469    "${mmi_path}/test/unittest/common/src/event_util_test.cpp",
470    "${mmi_path}/test/unittest/common/src/system_info.cpp",
471    "${mmi_path}/test/unittest/common/src/window_utils_test.cpp",
472    "events/src/input_manager_util.cpp",
473    "events/test/input_manager_inject_test.cpp",
474  ]
475
476  configs = [
477    "${mmi_path}:coverage_flags",
478    ":libmmi_test_util",
479  ]
480
481  deps = [
482    "${mmi_path}/frameworks/proxy:libmmi-client",
483    "${mmi_path}/util:libmmi-util",
484  ]
485  external_deps = [
486    "ability_runtime:abilitykit_native",
487    "access_token:libaccesstoken_sdk",
488    "access_token:libnativetoken_shared",
489    "access_token:libtokensetproc_shared",
490    "c_utils:utils",
491    "eventhandler:libeventhandler",
492    "googletest:gmock_main",
493    "googletest:gtest_main",
494    "hilog:libhilog",
495    "image_framework:image_native",
496    "init:libbegetutil",
497    "ipc:ipc_single",
498    "window_manager:libwm",
499    "window_manager:libwsutils",
500  ]
501}
502
503ohos_unittest("InputManagerManualTest") {
504  module_out_path = module_output_path
505
506  sources = [ "events/test/input_manager_manual_test.cpp" ]
507
508  configs = [
509    "${mmi_path}:coverage_flags",
510    ":libmmi_test_util",
511  ]
512
513  deps = [
514    "${mmi_path}/frameworks/proxy:libmmi-client",
515    "${mmi_path}/util:libmmi-util",
516  ]
517  external_deps = [
518    "access_token:libaccesstoken_sdk",
519    "access_token:libnativetoken_shared",
520    "access_token:libtokensetproc_shared",
521    "c_utils:utils",
522    "eventhandler:libeventhandler",
523    "googletest:gmock_main",
524    "googletest:gtest_main",
525    "hilog:libhilog",
526    "ipc:ipc_single",
527  ]
528}
529
530ohos_unittest("InputManagerFilterManualTest") {
531  module_out_path = module_output_path
532
533  sources = [ "events/test/input_manager_filter_manual_test.cpp" ]
534
535  configs = [
536    "${mmi_path}:coverage_flags",
537    ":libmmi_test_util",
538  ]
539
540  deps = [
541    "${mmi_path}/frameworks/proxy:libmmi-client",
542    "${mmi_path}/util:libmmi-util",
543  ]
544  external_deps = [
545    "access_token:libaccesstoken_sdk",
546    "access_token:libnativetoken_shared",
547    "access_token:libtokensetproc_shared",
548    "c_utils:utils",
549    "eventhandler:libeventhandler",
550    "googletest:gmock_main",
551    "googletest:gtest_main",
552    "hilog:libhilog",
553    "ipc:ipc_single",
554  ]
555}
556
557ohos_unittest("PointerEventTest") {
558  module_out_path = module_output_path
559  include_dirs = [ "$root_out_dir/diff_libinput_mmi/export_include" ]
560
561  sources = [
562    "${mmi_path}/test/unittest/common/src/event_util_test.cpp",
563    "${mmi_path}/test/unittest/common/src/window_utils_test.cpp",
564    "events/test/pointer_event_test.cpp",
565  ]
566
567  configs = [
568    "${mmi_path}:coverage_flags",
569    ":libmmi_test_util",
570  ]
571
572  cflags = [
573    "-Dprivate=public",
574    "-Dprotected=public",
575  ]
576
577  deps = [
578    "${mmi_path}/frameworks/proxy:libmmi-client",
579    "${mmi_path}/util:libmmi-util",
580  ]
581  external_deps = [
582    "ability_runtime:abilitykit_native",
583    "access_token:libaccesstoken_sdk",
584    "access_token:libnativetoken_shared",
585    "access_token:libtokensetproc_shared",
586    "c_utils:utils",
587    "eventhandler:libeventhandler",
588    "googletest:gmock_main",
589    "googletest:gtest_main",
590    "hilog:libhilog",
591    "image_framework:image_native",
592    "ipc:ipc_single",
593    "window_manager:libwm",
594    "window_manager:libwsutils",
595  ]
596}
597