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
19module_output_path = "multimodalinput/mmi_unit_out"
20mmi_service_path = "${mmi_path}/service"
21
22ohos_prebuilt_etc("mmi_device_config.ini") {
23  source = "mmi_device_config.ini"
24  relative_install_dir = "."
25  subsystem_name = "multimodalinput"
26  part_name = "input"
27}
28
29config("libmmi_server_config") {
30  if (is_ohos && is_clang && (target_cpu == "arm" || target_cpu == "arm64") &&
31      enhanced_opt) {
32    cflags = []
33    if (input_feature_enable_pgo && input_feature_product != "default") {
34      cflags += [
35        "-fprofile-use=" +
36            rebase_path("${input_feature_pgo_path}/libmmi-server.profdata",
37                        root_build_dir),
38        "-Wno-error=backend-plugin",
39        "-Wno-profile-instr-out-of-date",
40        "-Wno-profile-instr-unprofiled",
41      ]
42    }
43    if (input_feature_product == "pc" && target_cpu == "arm64") {
44      cflags += [ "-moutline-atomics" ]
45    }
46  }
47  include_dirs = [
48    "account_manager/include",
49    "app_state_manager/include",
50    "device_config/include",
51    "device_manager/include",
52    "device_scalability/include",
53    "device_state_manager/include",
54    "delegate_task/include",
55    "display_state_manager/include",
56    "event_dispatch/include",
57    "key_event_normalize/include",
58    "event_handler/include",
59    "event_dump/include",
60    "fingersense_wrapper/include",
61    "gesturesense_wrapper/include",
62    "monitor/include",
63    "interceptor/include",
64    "dfx/include",
65    "libinput_adapter/include",
66    "message_handle/include",
67    "module_loader/include",
68    "hardware_cursor_pointer_manager/include",
69    "window_manager/include",
70    "touch_event_normalize/include",
71    "key_command/include",
72    "subscriber/include",
73    "timer_manager/include",
74    "permission_helper/include",
75    "infrared_emitter/include",
76    "${mmi_service_path}/connect_manager/include",
77    "${mmi_service_path}/device_state_manager/include",
78    "${mmi_service_path}/filter/include",
79    "${mmi_service_path}/module_loader/include",
80    "${mmi_service_path}/hardware_cursor_pointer_manager/include",
81    "${mmi_service_path}/nap_process/include",
82    "${mmi_service_path}/event_resample/include",
83    "${mmi_path}/interfaces/native/innerkits/proxy/include",
84    "${mmi_path}/interfaces/native/innerkits/event/include",
85    "mouse_event_normalize/include",
86    "${mmi_path}/interfaces/native/innerkits/common/include",
87    "${mmi_path}/util/common/include",
88    "${mmi_path}/util/socket/include",
89    "${mmi_path}/util/network/include",
90    "${mmi_path}/frameworks/proxy/event_handler/include",
91    "//third_party/cJSON",
92    "${preferences_path}/frameworks/native/include",
93    "${graphics_path}/2d_graphics/include",
94    "${mmi_path}/util/napi/include",
95  ]
96
97  if (input_feature_fingerprint) {
98    include_dirs += [ "fingerprint_event_processor/include" ]
99  }
100
101  if (input_feature_crown) {
102    include_dirs += [ "crown_transform_processor/include" ]
103  }
104
105  if (input_ext_feature_anco) {
106    include_dirs += [
107      "${mmi_ext_path}/anco_uds_manager/include",
108      "${mmi_path}/common/anco/comm/include",
109    ]
110  }
111
112  if (input_ext_feature_anco && input_feature_product == "__other") {
113    include_dirs += [ "infrared_emitter/include" ]
114  }
115
116  if (input_ext_feature_magiccursor) {
117    include_dirs += [
118      "${mmi_ext_path}/magic_cursor/include",
119      "${g2d_ext_path}/sdf/include",
120      "${surface_path}/interfaces/inner_api/surface",
121      "${g2d_path}/rosen/modules/render_service_base/src",
122    ]
123  }
124
125  if (input_feature_combination_key) {
126    defines += [ "OHOS_BUILD_ENABLE_COMBINATION_KEY" ]
127  }
128
129  if (resource_schedule_service_enabled) {
130    defines += [ "OHOS_RSS_CLIENT" ]
131  }
132
133  if (is_emulator) {
134    defines += [ "OHOS_BUILD_EMULATOR" ]
135  }
136}
137
138ohos_rust_shared_ffi("mmi_rust") {
139  sources = [ "rust/src/lib.rs" ]
140  external_deps = [ "hilog:hilog_rust" ]
141  subsystem_name = "multimodalinput"
142  part_name = "input"
143}
144
145ohos_rust_unittest("rust_mmi_test") {
146  module_out_path = module_output_path
147  sources = [ "rust/src/lib.rs" ]
148  deps = [ ":mmi_rust" ]
149  external_deps = [ "hilog:hilog_rust" ]
150  subsystem_name = "multimodalinput"
151  part_name = "input"
152}
153
154ohos_shared_library("libmmi-server") {
155  sources = libmmi_service_sources
156  branch_protector_ret = "pac_ret"
157  sanitize = {
158    cfi = true
159    cfi_cross_dso = true
160    debug = false
161  }
162  sources += [
163    "account_manager/src/account_manager.cpp",
164    "window_manager/src/knuckle_divergent_point.cpp",
165    "window_manager/src/knuckle_drawing_manager.cpp",
166    "window_manager/src/knuckle_dynamic_drawing_manager.cpp",
167    "window_manager/src/knuckle_glow_point.cpp",
168    "window_manager/src/knuckle_glow_trace_system.cpp",
169    "window_manager/src/touch_drawing_manager.cpp",
170  ]
171
172  if (input_feature_keyboard) {
173    sources += [
174      "display_state_manager/src/display_event_monitor.cpp",
175      "key_event_normalize/src/key_event_normalize.cpp",
176      "key_event_normalize/src/key_unicode_transformation.cpp",
177      "subscriber/src/key_gesture_manager.cpp",
178      "subscriber/src/key_subscriber_handler.cpp",
179    ]
180    if (input_feature_combination_key) {
181      sources += [
182        "key_command/src/key_command_handler.cpp",
183        "key_command/src/key_command_handler_util.cpp",
184        "key_command/src/stylus_key_handler.cpp",
185      ]
186    }
187  }
188
189  if (input_feature_switch) {
190    sources += [ "subscriber/src/switch_subscriber_handler.cpp" ]
191  }
192
193  sources += [ "infrared_emitter/src/infrared_emitter_controller.cpp" ]
194
195  if (input_feature_mouse || input_feature_touchscreen) {
196    sources += [ "touch_event_normalize/src/touch_event_normalize.cpp" ]
197    if (input_feature_mouse) {
198      sources += [
199        "mouse_event_normalize/src/mouse_device_state.cpp",
200        "mouse_event_normalize/src/mouse_event_normalize.cpp",
201        "mouse_event_normalize/src/mouse_transform_processor.cpp",
202        "touch_event_normalize/src/gesture_transform_processor.cpp",
203        "touch_event_normalize/src/touchpad_transform_processor.cpp",
204      ]
205      if (input_feature_pointer_drawing) {
206        sources += [ "window_manager/src/pointer_drawing_manager.cpp" ]
207      } else {
208        sources += [ "window_manager/src/i_pointer_drawing_manager.cpp" ]
209      }
210    }
211    if (input_feature_touchscreen) {
212      sources += [
213        "event_resample/src/event_resample.cpp",
214        "touch_event_normalize/src/tablet_tool_tranform_processor.cpp",
215        "touch_event_normalize/src/touch_transform_processor.cpp",
216      ]
217    }
218  }
219  if (input_feature_fingerprint) {
220    sources +=
221        [ "fingerprint_event_processor/src/fingerprint_event_processor.cpp" ]
222  }
223  if (input_feature_crown) {
224    sources += [ "crown_transform_processor/src/crown_transform_processor.cpp" ]
225  }
226  if (input_feature_joystick) {
227    sources += [ "touch_event_normalize/src/joystick_transform_processor.cpp" ]
228  }
229  if (input_feature_monitor) {
230    sources += [ "monitor/src/event_monitor_handler.cpp" ]
231  }
232  if (input_feature_interceptor) {
233    sources += [ "interceptor/src/event_interceptor_handler.cpp" ]
234  }
235
236  configs = [
237    "${mmi_path}:coverage_flags",
238    ":libmmi_server_config",
239  ]
240
241  deps = [
242    ":mmi_device_config.ini",
243    ":mmi_rust",
244    "${mmi_path}/etc/mouse_icon:input_mouse_icon",
245    "${mmi_path}/service/connect_manager:mmi_connect_manager_service",
246    "${mmi_path}/service/filter:mmi_event_filter_proxy",
247    "${mmi_path}/util:libmmi-util",
248    "//third_party/cJSON:cjson",
249  ]
250
251  if (input_ext_feature_anco) {
252    deps += [ "${mmi_path}/common/anco/comm:mmi_anco_channel_proxy" ]
253  }
254
255  external_deps = [
256    "audio_framework:audio_client",
257    "c_utils:utils",
258  ]
259  if (input_feature_pointer_drawing) {
260    external_deps += [ "window_manager:libwm_lite" ]
261  }
262
263  if (input_ext_feature_magiccursor) {
264    external_deps += [ "eventhandler:libeventhandler" ]
265  }
266
267  if (security_component_enable) {
268    external_deps += [ "security_component_manager:libsecurity_component_sdk" ]
269  }
270
271  if (resource_schedule_service_enabled) {
272    external_deps += [ "resource_schedule_service:ressched_client" ]
273  }
274
275  if (call_manager_service_enabled) {
276    external_deps += [ "call_manager:tel_call_manager_api" ]
277  }
278
279  if (screenlock_manager_enabled) {
280    defines += [ "SCREENLOCK_MANAGER_ENABLED" ]
281    external_deps += [ "screenlock_mgr:screenlock_client" ]
282  }
283
284  external_deps += [
285    "ability_base:want",
286    "ability_base:zuri",
287    "ability_runtime:ability_manager",
288    "ability_runtime:abilitykit_native",
289    "ability_runtime:app_manager",
290    "ability_runtime:dataobs_manager",
291    "access_token:libaccesstoken_sdk",
292    "access_token:libtokenid_sdk",
293    "common_event_service:cesfwk_innerkits",
294    "config_policy:configpolicy_util",
295    "data_share:datashare_consumer",
296    "drivers_interface_display:libdisplay_composer_hdi_impl_1.2",
297    "drivers_interface_display:libdisplay_composer_proxy_1.0",
298    "faultloggerd:libbacktrace_local",
299    "faultloggerd:libdfx_dumpcatcher",
300    "faultloggerd:libjson_stack_formatter",
301    "ffrt:libffrt",
302    "graphic_2d:2d_graphics",
303    "graphic_2d:libcomposer",
304    "graphic_2d:librender_service_client",
305    "graphic_2d:window_animation",
306    "hdf_core:libhdi",
307    "hicollie:libhicollie",
308    "hilog:libhilog",
309    "hisysevent:libhisysevent",
310    "hitrace:hitrace_meter",
311    "image_framework:image_native",
312    "init:libbeget_proxy",
313    "init:libbegetutil",
314    "ipc:ipc_single",
315    "libinput:libinput-third-mmi",
316    "preferences:native_preferences",
317    "safwk:system_ability_fwk",
318    "window_manager:libdm_lite",
319    "window_manager:libwm_lite",
320    "window_manager:libwsutils",
321  ]
322
323  if (defined(use_rosen_drawing) && use_rosen_drawing) {
324    defines += [ "USE_ROSEN_DRAWING" ]
325  }
326
327  if (enable_player_framework) {
328    external_deps += [ "player_framework:media_client" ]
329  }
330
331  part_name = "input"
332  subsystem_name = "multimodalinput"
333
334  if (!input_feature_coverage && is_ohos && is_clang &&
335      (target_cpu == "arm" || target_cpu == "arm64") && enhanced_opt) {
336    ldflags = [ "-Wl,-Bsymbolic" ]
337  }
338}
339
340import("//build/test.gni")
341module_output_path = "multimodalinput/mmi_unit_out"
342
343ohos_unittest("event_resample_test") {
344  module_out_path = module_output_path
345  include_dirs = [
346    "${mmi_path}/service/event_resample/include",
347    "${graphics_path}/2d_graphics/include",
348  ]
349
350  sources = [
351    "event_resample/src/event_resample.cpp",
352    "event_resample/test/event_resample_test.cpp",
353  ]
354
355  configs = [ ":libmmi_server_config" ]
356
357  cflags = [
358    "-Dprivate=public",
359    "-Dprotected=public",
360  ]
361
362  deps = [
363    "${mmi_path}/service:libmmi-server",
364    "${mmi_path}/util:libmmi-util",
365    "//third_party/cJSON:cjson",
366    "//third_party/googletest:gmock_main",
367    "//third_party/googletest:gtest_main",
368  ]
369
370  external_deps = [
371    "c_utils:utils",
372    "config_policy:configpolicy_util",
373    "graphic_2d:2d_graphics",
374    "graphic_2d:librender_service_client",
375    "hilog:libhilog",
376    "image_framework:image_native",
377    "init:libbegetutil",
378    "libinput:libinput-third-mmi",
379    "preferences:native_preferences",
380    "window_manager:libwm",
381  ]
382}
383
384ohos_unittest("EventFilterDeathRecipientTest") {
385  module_out_path = module_output_path
386
387  include_dirs = [ "${mmi_path}/service/filter/include" ]
388
389  configs = [ ":libmmi_server_config" ]
390
391  cflags = [ "-DUNIT_TEST" ]
392
393  sources = [
394    "${mmi_path}/service/filter/src/event_filter_death_recipient.cpp",
395    "${mmi_path}/service/filter/test/event_filter_death_recipient_test.cpp",
396  ]
397
398  deps = [
399    "${mmi_path}/service:libmmi-server",
400    "${mmi_path}/util:libmmi-util",
401    "//third_party/cJSON:cjson",
402    "//third_party/googletest:gmock_main",
403    "//third_party/googletest:gtest_main",
404  ]
405
406  external_deps = [
407    "c_utils:utils",
408    "config_policy:configpolicy_util",
409    "data_share:datashare_consumer",
410    "hilog:libhilog",
411    "image_framework:image_native",
412    "init:libbegetutil",
413    "libinput:libinput-third-mmi",
414    "preferences:native_preferences",
415    "window_manager:libwm",
416  ]
417}
418
419ohos_unittest("EventFilterHandlerTest") {
420  module_out_path = module_output_path
421
422  include_dirs = [
423    "${mmi_path}/service/filter/include",
424    "${graphics_path}/2d_graphics/include",
425  ]
426
427  configs = [ ":libmmi_server_config" ]
428
429  cflags = [
430    "-DUNIT_TEST",
431    "-Dprivate=public",
432    "-Dprotected=public",
433  ]
434
435  sources = [
436    "${mmi_path}/service/filter/src/event_filter_handler.cpp",
437    "${mmi_path}/service/filter/test/event_filter_handler_ex_test.cpp",
438    "${mmi_path}/service/filter/test/event_filter_handler_test.cpp",
439    "${mmi_path}/service/filter/test/mock.cpp",
440  ]
441
442  deps = [
443    "${mmi_path}/service:libmmi-server",
444    "${mmi_path}/util:libmmi-util",
445    "//third_party/cJSON:cjson",
446    "//third_party/googletest:gmock_main",
447    "//third_party/googletest:gtest_main",
448  ]
449
450  external_deps = [
451    "c_utils:utils",
452    "config_policy:configpolicy_util",
453    "data_share:datashare_consumer",
454    "graphic_2d:2d_graphics",
455    "graphic_2d:librender_service_client",
456    "hilog:libhilog",
457    "image_framework:image_native",
458    "init:libbegetutil",
459    "ipc:ipc_single",
460    "libinput:libinput-third-mmi",
461    "preferences:native_preferences",
462    "window_manager:libwm",
463  ]
464}
465
466ohos_unittest("ApplicationStateObserverTest") {
467  module_out_path = module_output_path
468
469  include_dirs = [ "${mmi_path}/service/app_state_manager/include" ]
470
471  configs = [ ":libmmi_server_config" ]
472
473  cflags = [
474    "-DUNIT_TEST",
475    "-Dprivate=public",
476    "-Dprotected=public",
477  ]
478
479  sources = [
480    "${mmi_path}/service/app_state_manager/src/app_state_observer.cpp",
481    "${mmi_path}/service/app_state_manager/test/app_state_observer_test.cpp",
482  ]
483
484  deps = [
485    "${mmi_path}/service:libmmi-server",
486    "${mmi_path}/util:libmmi-util",
487    "//third_party/cJSON:cjson",
488    "//third_party/googletest:gmock_main",
489    "//third_party/googletest:gtest_main",
490  ]
491
492  external_deps = [
493    "ability_runtime:ability_manager",
494    "ability_runtime:app_manager",
495    "c_utils:utils",
496    "config_policy:configpolicy_util",
497    "data_share:datashare_consumer",
498    "hilog:libhilog",
499    "image_framework:image_native",
500    "init:libbegetutil",
501    "ipc:ipc_single",
502    "libinput:libinput-third-mmi",
503    "preferences:native_preferences",
504    "safwk:system_ability_fwk",
505    "samgr:samgr_proxy",
506    "window_manager:libwm",
507  ]
508}
509
510ohos_unittest("TimerManagerTest") {
511  module_out_path = module_output_path
512
513  include_dirs = [ "${mmi_path}/service/timer_manager/include" ]
514
515  configs = [
516    "${mmi_path}:coverage_flags",
517    ":libmmi_server_config",
518  ]
519
520  cflags = [
521    "-Dprivate=public",
522    "-Dprotected=public",
523  ]
524
525  sources = [ "timer_manager/test/timer_manager_test.cpp" ]
526
527  deps = [
528    "${mmi_path}/service:libmmi-server",
529    "${mmi_path}/util:libmmi-util",
530    "//third_party/cJSON:cjson",
531    "//third_party/googletest:gmock_main",
532    "//third_party/googletest:gtest_main",
533  ]
534
535  external_deps = [
536    "access_token:libaccesstoken_sdk",
537    "hilog:libhilog",
538    "init:libbegetutil",
539    "libinput:libinput-third-mmi",
540  ]
541}
542
543ohos_unittest("InputDisplayBindHelperTest") {
544  module_out_path = module_output_path
545
546  configs = [
547    "${mmi_path}:coverage_flags",
548    ":libmmi_server_config",
549  ]
550
551  cflags = [
552    "-Dprivate=public",
553    "-Dprotected=public",
554  ]
555
556  sources = [ "window_manager/test/input_display_bind_helper_test.cpp" ]
557
558  deps = [
559    "${mmi_path}/service:libmmi-server",
560    "${mmi_path}/test/facility/mock:mmi_mock_sources",
561    "${mmi_path}/util:libmmi-util",
562    "//third_party/googletest:gmock_main",
563    "//third_party/googletest:gtest_main",
564  ]
565
566  external_deps = [
567    "ability_runtime:dataobs_manager",
568    "c_utils:utils",
569    "graphic_2d:librender_service_client",
570    "hilog:libhilog",
571    "image_framework:image_native",
572    "init:libbegetutil",
573    "libinput:libinput-third-mmi",
574    "window_manager:libwm",
575    "window_manager:libwsutils",
576  ]
577}
578
579ohos_unittest("KnuckleGlowPointTest") {
580  module_out_path = module_output_path
581
582  configs = [
583    "${mmi_path}:coverage_flags",
584    ":libmmi_server_config",
585  ]
586
587  cflags = [
588    "-Dprivate=public",
589    "-Dprotected=public",
590  ]
591
592  branch_protector_ret = "pac_ret"
593  sanitize = {
594    cfi = true
595    cfi_cross_dso = true
596    debug = false
597  }
598
599  sources = [ "window_manager/test/knuckle_glow_point_test.cpp" ]
600
601  deps = [
602    "${mmi_path}/service:libmmi-server",
603    "${mmi_path}/test/facility/mock:mmi_mock_sources",
604    "${mmi_path}/util:libmmi-util",
605    "//third_party/googletest:gmock_main",
606    "//third_party/googletest:gtest_main",
607  ]
608
609  external_deps = [
610    "ability_runtime:dataobs_manager",
611    "c_utils:utils",
612    "drivers_interface_display:libdisplay_composer_hdi_impl_1.2",
613    "drivers_interface_display:libdisplay_composer_proxy_1.0",
614    "graphic_2d:librender_service_client",
615    "hilog:libhilog",
616    "image_framework:image_native",
617    "init:libbegetutil",
618    "libinput:libinput-third-mmi",
619    "window_manager:libwm",
620    "window_manager:libwsutils",
621  ]
622}
623
624ohos_unittest("KnuckleDivergentPointTest") {
625  module_out_path = module_output_path
626
627  configs = [
628    "${mmi_path}:coverage_flags",
629    ":libmmi_server_config",
630  ]
631
632  cflags = [
633    "-Dprivate=public",
634    "-Dprotected=public",
635  ]
636
637  branch_protector_ret = "pac_ret"
638  sanitize = {
639    cfi = true
640    cfi_cross_dso = true
641    debug = false
642    blocklist = "./ipc_blocklist.txt"
643  }
644
645  sources = [ "window_manager/test/knuckle_divergent_point_test.cpp" ]
646
647  deps = [
648    "${mmi_path}/service:libmmi-server",
649    "${mmi_path}/test/facility/mock:mmi_mock_sources",
650    "${mmi_path}/util:libmmi-util",
651    "//third_party/googletest:gmock_main",
652    "//third_party/googletest:gtest_main",
653  ]
654
655  external_deps = [
656    "ability_runtime:dataobs_manager",
657    "c_utils:utils",
658    "drivers_interface_display:libdisplay_composer_hdi_impl_1.2",
659    "drivers_interface_display:libdisplay_composer_proxy_1.0",
660    "graphic_2d:librender_service_client",
661    "hilog:libhilog",
662    "image_framework:image_native",
663    "init:libbegetutil",
664    "libinput:libinput-third-mmi",
665    "window_manager:libwm",
666    "window_manager:libwsutils",
667  ]
668}
669
670ohos_unittest("KnuckleGlowTraceSystemTest") {
671  module_out_path = module_output_path
672
673  configs = [
674    "${mmi_path}:coverage_flags",
675    ":libmmi_server_config",
676  ]
677
678  cflags = [
679    "-Dprivate=public",
680    "-Dprotected=public",
681  ]
682
683  branch_protector_ret = "pac_ret"
684  sanitize = {
685    cfi = true
686    cfi_cross_dso = true
687    debug = false
688  }
689
690  sources = [ "window_manager/test/knuckle_glow_trace_system_test.cpp" ]
691
692  deps = [
693    "${mmi_path}/service:libmmi-server",
694    "${mmi_path}/test/facility/mock:mmi_mock_sources",
695    "${mmi_path}/util:libmmi-util",
696    "//third_party/googletest:gmock_main",
697    "//third_party/googletest:gtest_main",
698  ]
699
700  external_deps = [
701    "ability_runtime:dataobs_manager",
702    "c_utils:utils",
703    "drivers_interface_display:libdisplay_composer_hdi_impl_1.2",
704    "drivers_interface_display:libdisplay_composer_proxy_1.0",
705    "graphic_2d:librender_service_client",
706    "hilog:libhilog",
707    "image_framework:image_native",
708    "init:libbegetutil",
709    "libinput:libinput-third-mmi",
710    "window_manager:libwm",
711    "window_manager:libwsutils",
712  ]
713}
714
715ohos_unittest("PointerDrawingManagerTest") {
716  module_out_path = module_output_path
717
718  configs = [
719    "${mmi_path}:coverage_flags",
720    ":libmmi_server_config",
721  ]
722
723  cflags = [
724    "-Dprivate=public",
725    "-Dprotected=public",
726  ]
727
728  branch_protector_ret = "pac_ret"
729  sanitize = {
730    cfi = true
731    cfi_cross_dso = true
732    debug = false
733    blocklist = "./ipc_blocklist.txt"
734  }
735
736  sources = [ "window_manager/test/pointer_drawing_manager_test.cpp" ]
737
738  deps = [
739    "${mmi_path}/service:libmmi-server",
740    "${mmi_path}/test/facility/mock:mmi_mock_sources",
741    "${mmi_path}/util:libmmi-util",
742    "//third_party/googletest:gmock_main",
743    "//third_party/googletest:gtest_main",
744  ]
745
746  external_deps = [
747    "ability_runtime:dataobs_manager",
748    "c_utils:utils",
749    "drivers_interface_display:libdisplay_composer_hdi_impl_1.2",
750    "drivers_interface_display:libdisplay_composer_proxy_1.0",
751    "graphic_2d:librender_service_client",
752    "hilog:libhilog",
753    "image_framework:image_native",
754    "init:libbegetutil",
755    "libinput:libinput-third-mmi",
756    "window_manager:libwm",
757    "window_manager:libwsutils",
758  ]
759}
760
761ohos_unittest("PointerDrawingManagerExTest") {
762  module_out_path = module_output_path
763
764  configs = [
765    "${mmi_path}:coverage_flags",
766    ":libmmi_server_config",
767  ]
768
769  cflags = [
770    "-Dprivate=public",
771    "-Dprotected=public",
772  ]
773
774  branch_protector_ret = "pac_ret"
775  sanitize = {
776    cfi = true
777    cfi_cross_dso = true
778    debug = false
779    blocklist = "./ipc_blocklist.txt"
780  }
781
782  sources = [ "window_manager/test/pointer_drawing_manager_ex_test.cpp" ]
783
784  deps = [
785    "${mmi_path}/service:libmmi-server",
786    "${mmi_path}/test/facility/mock:mmi_mock_sources",
787    "${mmi_path}/util:libmmi-util",
788    "//third_party/googletest:gmock_main",
789    "//third_party/googletest:gtest_main",
790  ]
791
792  external_deps = [
793    "ability_runtime:dataobs_manager",
794    "c_utils:utils",
795    "drivers_interface_display:libdisplay_composer_hdi_impl_1.2",
796    "drivers_interface_display:libdisplay_composer_proxy_1.0",
797    "graphic_2d:librender_service_client",
798    "hilog:libhilog",
799    "image_framework:image_native",
800    "init:libbegetutil",
801    "libinput:libinput-third-mmi",
802    "window_manager:libwm",
803    "window_manager:libwsutils",
804  ]
805}
806
807ohos_unittest("TouchDrawingManagerAiTest") {
808  module_out_path = module_output_path
809
810  configs = [
811    "${mmi_path}:coverage_flags",
812    ":libmmi_server_config",
813  ]
814
815  cflags = [
816    "-Dprivate=public",
817    "-Dprotected=public",
818  ]
819
820  branch_protector_ret = "pac_ret"
821  sanitize = {
822    cfi = true
823    cfi_cross_dso = true
824    debug = false
825    blocklist = "./ipc_blocklist.txt"
826  }
827
828  sources = [ "window_manager/test/touch_drawing_manager_ai_test.cpp" ]
829
830  deps = [
831    "${mmi_path}/service:libmmi-server",
832    "${mmi_path}/test/facility/mock:mmi_mock_sources",
833    "${mmi_path}/util:libmmi-util",
834    "//third_party/googletest:gmock_main",
835    "//third_party/googletest:gtest_main",
836  ]
837
838  external_deps = [
839    "ability_runtime:dataobs_manager",
840    "c_utils:utils",
841    "drivers_interface_display:libdisplay_composer_hdi_impl_1.2",
842    "drivers_interface_display:libdisplay_composer_proxy_1.0",
843    "graphic_2d:librender_service_client",
844    "hilog:libhilog",
845    "image_framework:image_native",
846    "init:libbegetutil",
847    "libinput:libinput-third-mmi",
848    "window_manager:libdm",
849    "window_manager:libwm",
850    "window_manager:libwsutils",
851  ]
852}
853
854ohos_unittest("TouchDrawingManagerTest") {
855  module_out_path = module_output_path
856
857  configs = [
858    "${mmi_path}:coverage_flags",
859    ":libmmi_server_config",
860  ]
861
862  cflags = [
863    "-Dprivate=public",
864    "-Dprotected=public",
865  ]
866
867  branch_protector_ret = "pac_ret"
868  sanitize = {
869    cfi = true
870    cfi_cross_dso = true
871    debug = false
872    blocklist = "./ipc_blocklist.txt"
873  }
874
875  sources = [ "window_manager/test/touch_drawing_manager_test.cpp" ]
876
877  deps = [
878    "${mmi_path}/service:libmmi-server",
879    "${mmi_path}/test/facility/mock:mmi_mock_sources",
880    "${mmi_path}/util:libmmi-util",
881    "//third_party/googletest:gmock_main",
882    "//third_party/googletest:gtest_main",
883  ]
884
885  external_deps = [
886    "ability_runtime:dataobs_manager",
887    "c_utils:utils",
888    "drivers_interface_display:libdisplay_composer_hdi_impl_1.2",
889    "drivers_interface_display:libdisplay_composer_proxy_1.0",
890    "graphic_2d:librender_service_client",
891    "hilog:libhilog",
892    "image_framework:image_native",
893    "init:libbegetutil",
894    "libinput:libinput-third-mmi",
895    "window_manager:libwm",
896    "window_manager:libwsutils",
897  ]
898}
899
900ohos_unittest("KnuckleDrawingManagerTest") {
901  module_out_path = module_output_path
902
903  configs = [
904    "${mmi_path}:coverage_flags",
905    ":libmmi_server_config",
906  ]
907
908  cflags = [
909    "-Dprivate=public",
910    "-Dprotected=public",
911  ]
912
913  branch_protector_ret = "pac_ret"
914  sanitize = {
915    cfi = true
916    cfi_cross_dso = true
917    debug = false
918    blocklist = "./ipc_blocklist.txt"
919  }
920
921  sources = [ "window_manager/test/knuckle_drawing_manager_test.cpp" ]
922
923  deps = [
924    "${mmi_path}/service:libmmi-server",
925    "${mmi_path}/util:libmmi-util",
926    "//third_party/googletest:gtest_main",
927  ]
928
929  external_deps = [
930    "c_utils:utils",
931    "graphic_2d:librender_service_client",
932    "hilog:libhilog",
933    "image_framework:image_native",
934    "init:libbegetutil",
935    "libinput:libinput-third-mmi",
936    "window_manager:libwm",
937    "window_manager:libwsutils",
938  ]
939}
940
941ohos_unittest("KnuckleDynamicDrawingManagerTest") {
942  module_out_path = module_output_path
943
944  configs = [
945    "${mmi_path}:coverage_flags",
946    ":libmmi_server_config",
947  ]
948
949  cflags = [
950    "-Dprivate=public",
951    "-Dprotected=public",
952  ]
953
954  branch_protector_ret = "pac_ret"
955  sanitize = {
956    cfi = true
957    cfi_cross_dso = true
958    debug = false
959    blocklist = "./ipc_blocklist.txt"
960  }
961
962  sources = [ "window_manager/test/knuckle_dynamic_drawing_manager_test.cpp" ]
963
964  deps = [
965    "${mmi_path}/service:libmmi-server",
966    "${mmi_path}/util:libmmi-util",
967    "//third_party/googletest:gtest_main",
968  ]
969
970  external_deps = [
971    "c_utils:utils",
972    "graphic_2d:librender_service_client",
973    "hilog:libhilog",
974    "image_framework:image_native",
975    "init:libbegetutil",
976    "libinput:libinput-third-mmi",
977    "window_manager:libwm",
978    "window_manager:libwsutils",
979  ]
980}
981
982ohos_unittest("InputWindowsManagerTest") {
983  module_out_path = module_output_path
984
985  configs = [
986    "${mmi_path}:coverage_flags",
987    ":libmmi_server_config",
988  ]
989
990  cflags = [
991    "-Dprivate=public",
992    "-Dprotected=public",
993  ]
994
995  sources = [ "window_manager/test/input_windows_manager_test.cpp" ]
996
997  deps = [
998    "${mmi_path}/service:libmmi-server",
999    "${mmi_path}/util:libmmi-util",
1000  ]
1001
1002  external_deps = [
1003    "ability_runtime:dataobs_manager",
1004    "data_share:datashare_consumer",
1005    "drivers_interface_display:libdisplay_composer_hdi_impl_1.2",
1006    "drivers_interface_display:libdisplay_composer_proxy_1.0",
1007    "graphic_2d:2d_graphics",
1008    "graphic_2d:librender_service_client",
1009    "hilog:libhilog",
1010    "image_framework:image_native",
1011    "init:libbegetutil",
1012    "libinput:libinput-third-mmi",
1013    "window_manager:libwm",
1014    "window_manager:libwsutils",
1015  ]
1016
1017  if (enable_player_framework) {
1018    external_deps += [ "player_framework:media_client" ]
1019  }
1020}
1021
1022ohos_unittest("InputWindowsManagerEXTest") {
1023  module_out_path = module_output_path
1024
1025  include_dirs = [
1026    "window_manager/test",
1027    "${mmi_path}/libudev/include",
1028    "${mmi_path}/test/facility/libinput_interface/include",
1029    "$root_out_dir/diff_libinput_mmi/export_include",
1030  ]
1031
1032  configs = [
1033    "${mmi_path}:coverage_flags",
1034    ":libmmi_server_config",
1035  ]
1036
1037  cflags = [
1038    "-Dprivate=public",
1039    "-Dprotected=public",
1040  ]
1041
1042  sources = [
1043    "window_manager/src/input_windows_manager.cpp",
1044    "window_manager/test/input_windows_manager_ex_test.cpp",
1045    "window_manager/test/mock.cpp",
1046  ]
1047
1048  deps = [
1049    "${mmi_path}/util:libmmi-util",
1050    "//third_party/googletest:gmock_main",
1051  ]
1052
1053  if (defined(use_rosen_drawing) && use_rosen_drawing) {
1054    defines += [ "USE_ROSEN_DRAWING" ]
1055  }
1056
1057  external_deps = [
1058    "ability_base:want",
1059    "ability_base:zuri",
1060    "ability_runtime:ability_connect_callback_stub",
1061    "ability_runtime:ability_manager",
1062    "ability_runtime:abilitykit_native",
1063    "ability_runtime:app_manager",
1064    "ability_runtime:dataobs_manager",
1065    "access_token:libaccesstoken_sdk",
1066    "access_token:libtokenid_sdk",
1067    "common_event_service:cesfwk_innerkits",
1068    "config_policy:configpolicy_util",
1069    "data_share:datashare_consumer",
1070    "drivers_interface_display:libdisplay_composer_hdi_impl_1.2",
1071    "drivers_interface_display:libdisplay_composer_proxy_1.0",
1072    "faultloggerd:libbacktrace_local",
1073    "ffrt:libffrt",
1074    "graphic_2d:2d_graphics",
1075    "graphic_2d:libcomposer",
1076    "graphic_2d:librender_service_client",
1077    "graphic_2d:window_animation",
1078    "hdf_core:libhdi",
1079    "hicollie:libhicollie",
1080    "hilog:libhilog",
1081    "hisysevent:libhisysevent",
1082    "hitrace:hitrace_meter",
1083    "image_framework:image_native",
1084    "init:libbeget_proxy",
1085    "init:libbegetutil",
1086    "ipc:ipc_single",
1087    "napi:ace_napi",
1088    "preferences:native_preferences",
1089    "safwk:system_ability_fwk",
1090    "window_manager:libwm_lite",
1091    "window_manager:libwsutils",
1092  ]
1093
1094  if (call_manager_service_enabled) {
1095    external_deps += [ "call_manager:tel_call_manager_api" ]
1096  }
1097
1098  if (resource_schedule_service_enabled) {
1099    external_deps += [ "resource_schedule_service:ressched_client" ]
1100  }
1101
1102  if (enable_player_framework) {
1103    external_deps += [ "player_framework:media_client" ]
1104  }
1105}
1106
1107ohos_unittest("AccountManagerTest") {
1108  module_out_path = module_output_path
1109
1110  include_dirs = [
1111    "${mmi_path}/service/account_manager/include",
1112    "${mmi_service_path}/device_state_manager/include",
1113  ]
1114
1115  configs = [
1116    "${mmi_path}:coverage_flags",
1117    ":libmmi_server_config",
1118  ]
1119
1120  cflags = [
1121    "-Dprivate=public",
1122    "-Dprotected=public",
1123  ]
1124
1125  sources = [ "account_manager/test/account_manager_test.cpp" ]
1126
1127  deps = [
1128    "${mmi_path}/service:libmmi-server",
1129    "${mmi_path}/util:libmmi-util",
1130  ]
1131
1132  external_deps = [
1133    "ability_runtime:wantagent_innerkits",
1134    "c_utils:utils",
1135    "call_manager:tel_call_manager_api",
1136    "common_event_service:cesfwk_innerkits",
1137    "data_share:datashare_consumer",
1138    "graphic_2d:2d_graphics",
1139    "graphic_2d:librender_service_client",
1140    "hilog:libhilog",
1141    "image_framework:image_native",
1142    "init:libbegetutil",
1143  ]
1144}
1145
1146ohos_unittest("SubscriberTest") {
1147  module_out_path = module_output_path
1148
1149  include_dirs = [
1150    "${mmi_path}/service/subscriber/include",
1151    "${mmi_service_path}/device_state_manager/include",
1152  ]
1153
1154  configs = [
1155    "${mmi_path}:coverage_flags",
1156    ":libmmi_server_config",
1157  ]
1158
1159  cflags = [
1160    "-Dprivate=public",
1161    "-Dprotected=public",
1162  ]
1163
1164  sources = [ "subscriber/test/key_subscriber_handler_test.cpp" ]
1165
1166  deps = [
1167    "${mmi_path}/service:libmmi-server",
1168    "${mmi_path}/util:libmmi-util",
1169  ]
1170
1171  external_deps = [
1172    "ability_base:want",
1173    "ability_runtime:wantagent_innerkits",
1174    "c_utils:utils",
1175    "common_event_service:cesfwk_innerkits",
1176    "data_share:datashare_consumer",
1177    "hilog:libhilog",
1178    "init:libbegetutil",
1179    "libinput:libinput-third-mmi",
1180  ]
1181
1182  if (call_manager_service_enabled) {
1183    external_deps += [ "call_manager:tel_call_manager_api" ]
1184  }
1185
1186  if (enable_player_framework) {
1187    external_deps += [ "player_framework:media_client" ]
1188  }
1189}
1190
1191ohos_unittest("NapProcessTest") {
1192  module_out_path = module_output_path
1193
1194  configs = [
1195    "${mmi_path}:coverage_flags",
1196    ":libmmi_server_config",
1197  ]
1198
1199  cflags = [
1200    "-Dprivate=public",
1201    "-Dprotected=public",
1202  ]
1203
1204  sources = [ "nap_process/test/nap_process_test.cpp" ]
1205
1206  deps = [
1207    "${mmi_path}/service:libmmi-server",
1208    "${mmi_path}/util:libmmi-util",
1209  ]
1210
1211  external_deps = [
1212    "c_utils:utils",
1213    "init:libbegetutil",
1214  ]
1215}
1216
1217ohos_unittest("PermissionHelperTest") {
1218  module_out_path = module_output_path
1219
1220  configs = [
1221    "${mmi_path}:coverage_flags",
1222    ":libmmi_server_config",
1223  ]
1224
1225  cflags = [
1226    "-Dprivate=public",
1227    "-Dprotected=public",
1228  ]
1229
1230  sources = [ "permission_helper/test/permission_helper_test.cpp" ]
1231
1232  deps = [
1233    "${mmi_path}/service:libmmi-server",
1234    "${mmi_path}/util:libmmi-util",
1235  ]
1236
1237  external_deps = [
1238    "ability_runtime:dataobs_manager",
1239    "access_token:libaccesstoken_sdk",
1240    "c_utils:utils",
1241    "hilog:libhilog",
1242    "libinput:libinput-third-mmi",
1243    "security_component_manager:libsecurity_component_sdk",
1244  ]
1245}
1246
1247ohos_unittest("MonitorTest") {
1248  module_out_path = module_output_path
1249
1250  configs = [
1251    "${mmi_path}:coverage_flags",
1252    ":libmmi_server_config",
1253  ]
1254
1255  cflags = [
1256    "-Dprivate=public",
1257    "-Dprotected=public",
1258  ]
1259
1260  sources = [ "monitor/test/event_monitor_handler_test.cpp" ]
1261
1262  deps = [
1263    "${mmi_path}/service:libmmi-server",
1264    "${mmi_path}/util:libmmi-util",
1265  ]
1266
1267  external_deps = [
1268    "c_utils:utils",
1269    "data_share:datashare_consumer",
1270    "graphic_2d:2d_graphics",
1271    "graphic_2d:librender_service_client",
1272    "hilog:libhilog",
1273    "image_framework:image_native",
1274    "init:libbegetutil",
1275    "libinput:libinput-third-mmi",
1276    "window_manager:libwm",
1277  ]
1278
1279  if (enable_player_framework) {
1280    external_deps += [ "player_framework:media_client" ]
1281  }
1282}
1283
1284ohos_unittest("ModuleLoaderTest") {
1285  module_out_path = module_output_path
1286
1287  include_dirs = [
1288    "${mmi_path}/util/common/include",
1289    "//third_party/node/src",
1290  ]
1291
1292  configs = [
1293    "${mmi_path}:coverage_flags",
1294    ":libmmi_server_config",
1295  ]
1296
1297  cflags = [
1298    "-Dprivate=public",
1299    "-Dprotected=public",
1300  ]
1301
1302  sources = [
1303    "module_loader/test/mmi_service_test.cpp",
1304    "module_loader/test/uds_server_test.cpp",
1305    "module_loader/test/watchdog_task_test.cpp",
1306  ]
1307
1308  deps = [
1309    "${mmi_path}/service:libmmi-server",
1310    "${mmi_path}/util:libmmi-util",
1311  ]
1312
1313  external_deps = [
1314    "ability_runtime:app_manager",
1315    "c_utils:utils",
1316    "data_share:datashare_consumer",
1317    "graphic_2d:2d_graphics",
1318    "graphic_2d:librender_service_client",
1319    "hilog:libhilog",
1320    "image_framework:image_native",
1321    "init:libbegetutil",
1322    "libinput:libinput-third-mmi",
1323    "security_component_manager:libsecurity_component_sdk",
1324    "window_manager:libwm",
1325  ]
1326
1327  if (enable_player_framework) {
1328    external_deps += [ "player_framework:media_client" ]
1329  }
1330}
1331
1332ohos_unittest("KeyEventNormalizeTest") {
1333  module_out_path = module_output_path
1334
1335  configs = [
1336    "${mmi_path}:coverage_flags",
1337    ":libmmi_server_config",
1338  ]
1339
1340  cflags = [
1341    "-Dprivate=public",
1342    "-Dprotected=public",
1343  ]
1344
1345  sources = [ "key_event_normalize/test/key_event_normalize_test.cpp" ]
1346
1347  deps = [
1348    "${mmi_path}/service:libmmi-server",
1349    "${mmi_path}/test/facility/libinput_wrapper:libinput_wrapper_sources",
1350    "${mmi_path}/test/facility/virtual_device:virtual_device_sources",
1351    "${mmi_path}/util:libmmi-util",
1352  ]
1353
1354  external_deps = [
1355    "graphic_2d:2d_graphics",
1356    "graphic_2d:librender_service_client",
1357    "hilog:libhilog",
1358    "image_framework:image_native",
1359    "init:libbegetutil",
1360    "libinput:libinput-third-mmi",
1361    "window_manager:libwm",
1362  ]
1363}
1364
1365ohos_unittest("KeyCommandTest") {
1366  module_out_path = module_output_path
1367
1368  include_dirs = [ "${mmi_path}/test/unittest/common/include" ]
1369
1370  configs = [
1371    "${mmi_path}:coverage_flags",
1372    ":libmmi_server_config",
1373  ]
1374
1375  cflags = [
1376    "-Dprivate=public",
1377    "-Dprotected=public",
1378  ]
1379
1380  sources = [
1381    "key_command/test/key_command_handler_test.cpp",
1382    "key_command/test/key_command_handler_util_test.cpp",
1383    "key_command/test/setting_datashare_test.cpp",
1384  ]
1385
1386  deps = [
1387    "${mmi_path}/service:libmmi-server",
1388    "${mmi_path}/util:libmmi-util",
1389  ]
1390
1391  external_deps = [
1392    "ability_runtime:app_manager",
1393    "c_utils:utils",
1394    "config_policy:configpolicy_util",
1395    "data_share:datashare_consumer",
1396    "graphic_2d:2d_graphics",
1397    "graphic_2d:librender_service_client",
1398    "hilog:libhilog",
1399    "image_framework:image_native",
1400    "init:libbegetutil",
1401    "libinput:libinput-third-mmi",
1402    "window_manager:libwm",
1403  ]
1404
1405  if (enable_player_framework) {
1406    external_deps += [ "player_framework:media_client" ]
1407  }
1408}
1409
1410ohos_unittest("StylusKeyTest") {
1411  module_out_path = module_output_path
1412
1413  include_dirs = [ "${mmi_path}/test/unittest/common/include" ]
1414
1415  configs = [
1416    "${mmi_path}:coverage_flags",
1417    ":libmmi_server_config",
1418  ]
1419
1420  cflags = [
1421    "-Dprivate=public",
1422    "-Dprotected=public",
1423  ]
1424
1425  sources = [ "key_command/test/stylus_key_handler_test.cpp" ]
1426
1427  deps = [
1428    "${mmi_path}/service:libmmi-server",
1429    "${mmi_path}/util:libmmi-util",
1430  ]
1431
1432  external_deps = [
1433    "c_utils:utils",
1434    "hilog:libhilog",
1435    "libinput:libinput-third-mmi",
1436  ]
1437}
1438
1439ohos_unittest("InfraredEmitterTest") {
1440  module_out_path = module_output_path
1441
1442  configs = [
1443    "${mmi_path}:coverage_flags",
1444    ":libmmi_server_config",
1445  ]
1446
1447  cflags = [
1448    "-Dprivate=public",
1449    "-Dprotected=public",
1450  ]
1451
1452  sources = [ "infrared_emitter/test/infrared_emitter_controller_test.cpp" ]
1453
1454  deps = [
1455    "${mmi_path}/service:libmmi-server",
1456    "${mmi_path}/util:libmmi-util",
1457  ]
1458
1459  external_deps = [
1460    "hdf_core:libhdi",
1461    "hilog:libhilog",
1462    "init:libbegetutil",
1463  ]
1464}
1465
1466ohos_unittest("InterceptorTest") {
1467  module_out_path = module_output_path
1468
1469  configs = [
1470    "${mmi_path}:coverage_flags",
1471    ":libmmi_server_config",
1472  ]
1473
1474  cflags = [
1475    "-Dprivate=public",
1476    "-Dprotected=public",
1477  ]
1478
1479  sources = [ "interceptor/test/event_interceptor_handler_test.cpp" ]
1480
1481  deps = [
1482    "${mmi_path}/service:libmmi-server",
1483    "${mmi_path}/util:libmmi-util",
1484  ]
1485
1486  external_deps = [
1487    "hilog:libhilog",
1488    "init:libbegetutil",
1489  ]
1490}
1491
1492ohos_unittest("KeyAutoRepeatExTest") {
1493  module_out_path = module_output_path
1494
1495  configs = [
1496    "${mmi_path}:coverage_flags",
1497    ":libmmi_server_config",
1498  ]
1499
1500  cflags = [
1501    "-Dprivate=public",
1502    "-Dprotected=public",
1503  ]
1504
1505  sources = [
1506    "event_handler/test/key_auto_repeat_ex_test.cpp",
1507    "event_handler/test/mock.cpp",
1508  ]
1509
1510  deps = [
1511    "${mmi_path}/service:libmmi-server",
1512    "${mmi_path}/test/facility/mock:mmi_mock_sources",
1513    "${mmi_path}/util:libmmi-util",
1514    "//third_party/googletest:gmock_main",
1515    "//third_party/googletest:gtest_main",
1516  ]
1517
1518  external_deps = [
1519    "c_utils:utils",
1520    "hilog:libhilog",
1521    "init:libbegetutil",
1522    "libinput:libinput-third-mmi",
1523  ]
1524}
1525
1526ohos_unittest("EventHandlerTest") {
1527  module_out_path = module_output_path
1528
1529  configs = [
1530    "${mmi_path}:coverage_flags",
1531    ":libmmi_server_config",
1532  ]
1533
1534  cflags = [
1535    "-Dprivate=public",
1536    "-Dprotected=public",
1537  ]
1538
1539  sources = [
1540    "event_handler/test/anr_manager_test.cpp",
1541    "event_handler/test/event_normalize_handler_test.cpp",
1542    "event_handler/test/input_event_handler_test.cpp",
1543    "event_handler/test/key_auto_repeat_test.cpp",
1544    "event_handler/test/key_event_value_transformation_test.cpp",
1545  ]
1546
1547  deps = [
1548    "${mmi_path}/service:libmmi-server",
1549    "${mmi_path}/test/facility/libinput_wrapper:libinput_wrapper_sources",
1550    "${mmi_path}/test/facility/virtual_device:virtual_device_sources",
1551    "${mmi_path}/util:libmmi-util",
1552  ]
1553
1554  external_deps = [
1555    "c_utils:utils",
1556    "data_share:datashare_consumer",
1557    "graphic_2d:2d_graphics",
1558    "graphic_2d:librender_service_client",
1559    "hilog:libhilog",
1560    "image_framework:image_native",
1561    "init:libbegetutil",
1562    "libinput:libinput-third-mmi",
1563    "window_manager:libwm",
1564  ]
1565
1566  if (enable_player_framework) {
1567    external_deps += [ "player_framework:media_client" ]
1568  }
1569}
1570
1571ohos_unittest("EventHandlerEXTest") {
1572  module_out_path = module_output_path
1573
1574  configs = [
1575    "${mmi_path}:coverage_flags",
1576    ":libmmi_server_config",
1577  ]
1578
1579  cflags = [
1580    "-Dprivate=public",
1581    "-Dprotected=public",
1582  ]
1583
1584  sources = [ "event_handler/test/event_normalize_handler_ex_test.cpp" ]
1585
1586  deps = [
1587    "${mmi_path}/service:libmmi-server",
1588    "${mmi_path}/test/facility/libinput_wrapper:libinput_wrapper_sources",
1589    "${mmi_path}/test/facility/mock:mmi_mock_sources",
1590    "${mmi_path}/test/facility/virtual_device:virtual_device_sources",
1591    "${mmi_path}/util:libmmi-util",
1592    "//third_party/googletest:gmock_main",
1593    "//third_party/googletest:gtest_main",
1594  ]
1595
1596  external_deps = [
1597    "c_utils:utils",
1598    "data_share:datashare_consumer",
1599    "graphic_2d:2d_graphics",
1600    "graphic_2d:librender_service_client",
1601    "hilog:libhilog",
1602    "image_framework:image_native",
1603    "init:libbegetutil",
1604    "libinput:libinput-third-mmi",
1605    "window_manager:libwm",
1606  ]
1607}
1608
1609ohos_unittest("EventDispatchTest") {
1610  module_out_path = module_output_path
1611
1612  configs = [
1613    "${mmi_path}:coverage_flags",
1614    ":libmmi_server_config",
1615  ]
1616
1617  cflags = [
1618    "-Dprivate=public",
1619    "-Dprotected=public",
1620  ]
1621
1622  sources = [ "event_dispatch/test/event_dispatch_test.cpp" ]
1623
1624  deps = [
1625    "${mmi_path}/service:libmmi-server",
1626    "${mmi_path}/util:libmmi-util",
1627  ]
1628
1629  external_deps = [
1630    "ability_runtime:dataobs_manager",
1631    "c_utils:utils",
1632    "data_share:datashare_consumer",
1633    "graphic_2d:librender_service_client",
1634    "hilog:libhilog",
1635    "image_framework:image_native",
1636    "init:libbegetutil",
1637    "libinput:libinput-third-mmi",
1638    "window_manager:libwm",
1639    "window_manager:libwsutils",
1640  ]
1641
1642  if (enable_player_framework) {
1643    external_deps += [ "player_framework:media_client" ]
1644  }
1645}
1646
1647ohos_unittest("LibinputAdapterTest") {
1648  module_out_path = module_output_path
1649
1650  configs = [
1651    "${mmi_path}:coverage_flags",
1652    ":libmmi_server_config",
1653  ]
1654
1655  cflags = [
1656    "-Dprivate=public",
1657    "-Dprotected=public",
1658  ]
1659
1660  sources = [ "libinput_adapter/test/libinput_adapter_test.cpp" ]
1661
1662  deps = [
1663    "${mmi_path}/service:libmmi-server",
1664    "${mmi_path}/util:libmmi-util",
1665  ]
1666
1667  external_deps = [
1668    "hilog:libhilog",
1669    "libinput:libinput-third-mmi",
1670  ]
1671}
1672
1673ohos_unittest("ServerMsgHandlerTest") {
1674  module_out_path = module_output_path
1675
1676  configs = [
1677    "${mmi_path}:coverage_flags",
1678    ":libmmi_server_config",
1679  ]
1680
1681  cflags = [
1682    "-Dprivate=public",
1683    "-Dprotected=public",
1684  ]
1685
1686  sources = [
1687    "message_handle/test/authorize_helper_test.cpp",
1688    "message_handle/test/client_death_handler_test.cpp",
1689    "message_handle/test/inject_notice_manager_test.cpp",
1690    "message_handle/test/server_msg_handler_test.cpp",
1691  ]
1692
1693  deps = [
1694    "${mmi_path}/service:libmmi-server",
1695    "${mmi_path}/util:libmmi-util",
1696  ]
1697
1698  external_deps = [
1699    "ability_runtime:ability_connect_callback_stub",
1700    "ability_runtime:dataobs_manager",
1701    "c_utils:utils",
1702    "data_share:datashare_consumer",
1703    "ffrt:libffrt",
1704    "graphic_2d:librender_service_client",
1705    "hilog:libhilog",
1706    "image_framework:image_native",
1707    "init:libbegetutil",
1708    "ipc:ipc_single",
1709    "libinput:libinput-third-mmi",
1710    "napi:ace_napi",
1711    "security_component_manager:libsecurity_component_sdk",
1712    "window_manager:libwm",
1713  ]
1714
1715  if (enable_player_framework) {
1716    external_deps += [ "player_framework:media_client" ]
1717  }
1718}
1719
1720ohos_unittest("DisplayStateManagerTest") {
1721  module_out_path = module_output_path
1722
1723  configs = [
1724    "${mmi_path}:coverage_flags",
1725    ":libmmi_server_config",
1726  ]
1727
1728  cflags = [
1729    "-Dprivate=public",
1730    "-Dprotected=public",
1731  ]
1732
1733  sources = [
1734    "display_state_manager/test/display_event_monitor_test.cpp",
1735    "display_state_manager/test/mock.cpp",
1736  ]
1737
1738  deps = [
1739    "${mmi_path}/service:libmmi-server",
1740    "${mmi_path}/util:libmmi-util",
1741    "//third_party/googletest:gmock_main",
1742  ]
1743
1744  external_deps = [
1745    "graphic_2d:2d_graphics",
1746    "graphic_2d:librender_service_client",
1747    "hilog:libhilog",
1748    "image_framework:image_native",
1749    "init:libbegetutil",
1750    "libinput:libinput-third-mmi",
1751    "window_manager:libwm",
1752  ]
1753}
1754
1755ohos_unittest("DeviceManagerTest") {
1756  module_out_path = module_output_path
1757
1758  configs = [
1759    "${mmi_path}:coverage_flags",
1760    ":libmmi_server_config",
1761  ]
1762
1763  cflags = [
1764    "-Dprivate=public",
1765    "-Dprotected=public",
1766  ]
1767
1768  sources = [ "device_manager/test/input_device_manager_test.cpp" ]
1769
1770  deps = [
1771    "${mmi_path}/service:libmmi-server",
1772    "${mmi_path}/util:libmmi-util",
1773    "//third_party/googletest:gmock_main",
1774    "//third_party/googletest:gtest_main",
1775  ]
1776
1777  external_deps = [
1778    "hilog:libhilog",
1779    "init:libbegetutil",
1780    "libinput:libinput-third-mmi",
1781  ]
1782}
1783
1784ohos_unittest("DeviceConfigTest") {
1785  module_out_path = module_output_path
1786
1787  configs = [
1788    "${mmi_path}:coverage_flags",
1789    ":libmmi_server_config",
1790  ]
1791
1792  cflags = [
1793    "-Dprivate=public",
1794    "-Dprotected=public",
1795  ]
1796
1797  sources = [ "device_config/test/device_config_file_parser_test.cpp" ]
1798
1799  deps = [
1800    "${mmi_path}/service:libmmi-server",
1801    "${mmi_path}/util:libmmi-util",
1802    "//third_party/googletest:gmock_main",
1803  ]
1804}
1805
1806ohos_unittest("DelegateTaskTest") {
1807  module_out_path = module_output_path
1808  include_dirs = [
1809    "${mmi_path}/util/napi",
1810    "${mmi_path}/util/napi/include",
1811  ]
1812
1813  configs = [
1814    "${mmi_path}:coverage_flags",
1815    ":libmmi_server_config",
1816  ]
1817
1818  cflags = [
1819    "-Dprivate=public",
1820    "-Dprotected=public",
1821  ]
1822
1823  sources = [
1824    "${mmi_path}/util/napi/src/key_event_napi.cpp",
1825    "${mmi_path}/util/napi/src/util_napi_value.cpp",
1826    "delegate_task/test/delegate_interface_test.cpp",
1827    "delegate_task/test/delegate_tasks_test.cpp",
1828  ]
1829
1830  deps = [
1831    "${mmi_path}/service:libmmi-server",
1832    "${mmi_path}/util:libmmi-util",
1833  ]
1834
1835  external_deps = [
1836    "hilog:libhilog",
1837    "init:libbegetutil",
1838    "napi:ace_napi",
1839  ]
1840}
1841
1842ohos_unittest("ConnectManagerTest") {
1843  module_out_path = module_output_path
1844
1845  configs = [
1846    "${mmi_path}:coverage_flags",
1847    ":libmmi_server_config",
1848  ]
1849
1850  cflags = [
1851    "-Dprivate=public",
1852    "-Dprotected=public",
1853  ]
1854
1855  sources = [ "connect_manager/test/multimodal_input_connect_stub_test.cpp" ]
1856
1857  deps = [ "${mmi_path}/service:libmmi-server" ]
1858
1859  external_deps = [
1860    "ability_runtime:app_manager",
1861    "data_share:datashare_consumer",
1862    "graphic_2d:2d_graphics",
1863    "graphic_2d:librender_service_client",
1864    "image_framework:image_native",
1865    "init:libbegetutil",
1866    "ipc:ipc_single",
1867    "libinput:libinput-third-mmi",
1868    "security_component_manager:libsecurity_component_sdk",
1869    "window_manager:libwm",
1870  ]
1871
1872  if (enable_player_framework) {
1873    external_deps += [ "player_framework:media_client" ]
1874  }
1875}
1876
1877ohos_unittest("ConnectManagerProxyEXTest") {
1878  module_out_path = module_output_path
1879
1880  include_dirs = [ "connect_manager/test" ]
1881
1882  configs = [
1883    "${mmi_path}:coverage_flags",
1884    ":libmmi_server_config",
1885  ]
1886
1887  cflags = [
1888    "-Dprivate=public",
1889    "-Dprotected=public",
1890  ]
1891
1892  sources = [
1893    "connect_manager/src/multimodal_input_connect_def_parcel.cpp",
1894    "connect_manager/src/multimodal_input_connect_proxy.cpp",
1895    "connect_manager/test/message_parcel_mock.cpp",
1896    "connect_manager/test/multimodal_input_connect_proxy_ex_test.cpp",
1897  ]
1898
1899  deps = [
1900    "${mmi_path}/util:libmmi-util",
1901    "//third_party/googletest:gmock_main",
1902  ]
1903
1904  external_deps = [
1905    "ability_runtime:app_manager",
1906    "access_token:libaccesstoken_sdk",
1907    "graphic_2d:2d_graphics",
1908    "graphic_2d:librender_service_client",
1909    "hilog:libhilog",
1910    "image_framework:image_native",
1911    "init:libbegetutil",
1912    "ipc:ipc_single",
1913    "libinput:libinput-third-mmi",
1914    "security_component_manager:libsecurity_component_sdk",
1915    "window_manager:libwm",
1916  ]
1917}
1918
1919ohos_unittest("ConnectManagerEXTest") {
1920  module_out_path = module_output_path
1921
1922  include_dirs = [ "connect_manager/test" ]
1923
1924  configs = [
1925    "${mmi_path}:coverage_flags",
1926    ":libmmi_server_config",
1927  ]
1928
1929  cflags = [
1930    "-Dprivate=public",
1931    "-Dprotected=public",
1932  ]
1933
1934  sources = [
1935    "connect_manager/src/multimodal_input_connect_def_parcel.cpp",
1936    "connect_manager/src/multimodal_input_connect_stub.cpp",
1937    "connect_manager/test/message_parcel_mock.cpp",
1938    "connect_manager/test/multimodal_input_connect_stub_ex_test.cpp",
1939  ]
1940
1941  deps = [
1942    "${mmi_path}/util:libmmi-util",
1943    "//third_party/googletest:gmock_main",
1944  ]
1945
1946  external_deps = [
1947    "ability_runtime:app_manager",
1948    "access_token:libaccesstoken_sdk",
1949    "data_share:datashare_consumer",
1950    "graphic_2d:2d_graphics",
1951    "graphic_2d:librender_service_client",
1952    "hilog:libhilog",
1953    "image_framework:image_native",
1954    "init:libbegetutil",
1955    "ipc:ipc_single",
1956    "libinput:libinput-third-mmi",
1957    "security_component_manager:libsecurity_component_sdk",
1958    "window_manager:libwm",
1959  ]
1960
1961  if (enable_player_framework) {
1962    external_deps += [ "player_framework:media_client" ]
1963  }
1964}
1965
1966ohos_unittest("EventDumpTest") {
1967  module_out_path = module_output_path
1968
1969  include_dirs = [ "${mmi_path}/test/unittest/common/include" ]
1970
1971  configs = [
1972    "${mmi_path}:coverage_flags",
1973    ":libmmi_server_config",
1974  ]
1975
1976  cflags = [
1977    "-Dprivate=public",
1978    "-Dprotected=public",
1979  ]
1980
1981  sources = [ "event_dump/test/event_dump_test.cpp" ]
1982
1983  deps = [
1984    "${mmi_path}/service:libmmi-server",
1985    "${mmi_path}/util:libmmi-util",
1986  ]
1987
1988  external_deps = [
1989    "data_share:datashare_consumer",
1990    "graphic_2d:2d_graphics",
1991    "graphic_2d:librender_service_client",
1992    "hilog:libhilog",
1993    "image_framework:image_native",
1994    "init:libbegetutil",
1995    "libinput:libinput-third-mmi",
1996    "window_manager:libwm",
1997  ]
1998
1999  if (enable_player_framework) {
2000    external_deps += [ "player_framework:media_client" ]
2001  }
2002}
2003
2004ohos_unittest("DfxHisysEventTest") {
2005  module_out_path = module_output_path
2006
2007  include_dirs = [ "${mmi_path}/test/unittest/common/include" ]
2008
2009  configs = [
2010    "${mmi_path}:coverage_flags",
2011    ":libmmi_server_config",
2012  ]
2013
2014  cflags = [
2015    "-Dprivate=public",
2016    "-Dprotected=public",
2017  ]
2018
2019  sources = [ "dfx/test/dfx_hisysevent_test.cpp" ]
2020
2021  deps = [
2022    "${mmi_path}/service:libmmi-server",
2023    "${mmi_path}/util:libmmi-util",
2024  ]
2025
2026  external_deps = [
2027    "hilog:libhilog",
2028    "init:libbegetutil",
2029    "libinput:libinput-third-mmi",
2030  ]
2031}
2032
2033group("mmi-service-tests") {
2034  testonly = true
2035  deps = [ "libinput_adapter/test" ]
2036}
2037