1# Copyright (c) 2021-2022 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("../../../windowmanager_aafwk.gni")
16module_out_path = "window_manager/wm"
17
18group("unittest") {
19  testonly = true
20
21  deps = [
22    ":wm_extension_window_impl_test",
23    ":wm_gtx_input_event_sender_test",
24    ":wm_input_transfer_station_test",
25    ":wm_pattern_detach_callback_proxy_test",
26    ":wm_pattern_detach_callback_test",
27    ":wm_picture_in_picture_controller_test",
28    ":wm_picture_in_picture_manager_test",
29    ":wm_picture_in_picture_option_test",
30    ":wm_root_scene_test",
31    ":wm_screen_scene_test",
32    ":wm_vsync_station_test",
33    ":wm_window_adapter_lite_test",
34    ":wm_window_adapter_test",
35    ":wm_window_agent_test",
36    ":wm_window_display_change_adapter_test",
37    ":wm_window_effect_test",
38    ":wm_window_extension_session_impl_test",
39    ":wm_window_frame_trace_impl_test",
40    ":wm_window_impl_listener_test",
41    ":wm_window_impl_test",
42    ":wm_window_impl_test2",
43    ":wm_window_impl_test3",
44    ":wm_window_impl_test5",
45    ":wm_window_input_channel_test",
46    ":wm_window_manager_agent_proxy_test",
47    ":wm_window_manager_stub_proxy_test",
48    ":wm_window_manager_test",
49    ":wm_window_option_test",
50    ":wm_window_scene_effect_test",
51    ":wm_window_scene_session_impl_test3",
52    ":wm_window_scene_session_impl_test4",
53    ":wm_window_scene_test",
54    ":wm_window_session_impl_test4",
55  ]
56  if (!window_manager_use_sceneboard) {
57    deps += [ ":wm_window_proxy_test" ]
58  }
59  if (window_manager_use_sceneboard) {
60    deps += [
61      ":wm_window_manager_lite_test",
62      ":wm_window_scene_session_impl_test",
63      ":wm_window_scene_session_impl_test2",
64      ":wm_window_session_impl_test",
65      ":wm_window_session_impl_two_test",
66      ":wm_window_stub_test",
67      ":wm_window_test",
68    ]
69  }
70}
71
72ohos_unittest("wm_window_manager_test") {
73  module_out_path = module_out_path
74
75  include_dirs = [ "${window_base_path}/wm/src" ]
76  sources = [ "window_manager_test.cpp" ]
77
78  deps = [
79    ":wm_unittest_common",
80    "${window_base_path}/window_scene/interfaces/innerkits:libwsutils",
81  ]
82
83  external_deps = [
84    "c_utils:utils",
85    "ffrt:libffrt",
86    "hilog:libhilog",
87  ]
88}
89
90ohos_unittest("wm_window_display_change_adapter_test") {
91  module_out_path = module_out_path
92
93  include_dirs = [ "${window_base_path}/wm/src" ]
94  sources = [ "window_display_change_adapter_test.cpp" ]
95
96  deps = [
97    ":wm_unittest_common",
98    "${window_base_path}/window_scene/interfaces/innerkits:libwsutils",
99  ]
100
101  external_deps = [
102    "c_utils:utils",
103    "hilog:libhilog",
104  ]
105}
106
107ohos_unittest("wm_window_manager_lite_test") {
108  module_out_path = module_out_path
109
110  include_dirs = [ "${window_base_path}/wm/src" ]
111  sources = [ "window_manager_lite_test.cpp" ]
112  deps = [
113    ":wm_unittest_common",
114    "${window_base_path}/wm:libwm_lite",
115  ]
116  external_deps = [
117    "c_utils:utils",
118    "hilog:libhilog",
119  ]
120}
121
122ohos_unittest("wm_window_impl_test") {
123  module_out_path = module_out_path
124
125  sources = [ "window_impl_test.cpp" ]
126
127  deps = [ ":wm_unittest_common" ]
128
129  include_dirs =
130      [ "${accessibility_path}/interfaces/innerkits/common/include/" ]
131
132  external_deps = [
133    "accessibility:accessibility_common",
134    "c_utils:utils",
135    "common_event_service:cesfwk_innerkits",
136    "hilog:libhilog",
137  ]
138}
139
140ohos_unittest("wm_window_impl_test2") {
141  module_out_path = module_out_path
142
143  sources = [ "window_impl_test2.cpp" ]
144
145  deps = [ ":wm_unittest_common" ]
146
147  include_dirs =
148      [ "${accessibility_path}/interfaces/innerkits/common/include/" ]
149
150  external_deps = [
151    "accessibility:accessibility_common",
152    "c_utils:utils",
153    "common_event_service:cesfwk_innerkits",
154    "hilog:libhilog",
155  ]
156}
157
158ohos_unittest("wm_window_impl_test3") {
159  module_out_path = module_out_path
160
161  sources = [ "window_impl_test3.cpp" ]
162
163  deps = [ ":wm_unittest_common" ]
164
165  include_dirs =
166      [ "${accessibility_path}/interfaces/innerkits/common/include/" ]
167
168  external_deps = [
169    "accessibility:accessibility_common",
170    "c_utils:utils",
171    "common_event_service:cesfwk_innerkits",
172    "hilog:libhilog",
173  ]
174}
175
176ohos_unittest("wm_window_impl_test5") {
177  module_out_path = module_out_path
178
179  sources = [ "window_impl_test5.cpp" ]
180
181  deps = [ ":wm_unittest_common" ]
182
183  include_dirs =
184      [ "${accessibility_path}/interfaces/innerkits/common/include/" ]
185
186  external_deps = [
187    "accessibility:accessibility_common",
188    "c_utils:utils",
189    "common_event_service:cesfwk_innerkits",
190    "hilog:libhilog",
191  ]
192}
193
194ohos_unittest("wm_window_scene_effect_test") {
195  module_out_path = module_out_path
196
197  sources = [ "window_scene_effect_test.cpp" ]
198
199  deps = [ ":wm_unittest_common" ]
200
201  external_deps = [
202    "c_utils:utils",
203    "hilog:libhilog",
204  ]
205}
206
207ohos_unittest("wm_vsync_station_test") {
208  module_out_path = module_out_path
209
210  sources = [ "vsync_station_test.cpp" ]
211
212  deps = [ ":wm_unittest_common" ]
213
214  external_deps = [
215    "c_utils:utils",
216    "hilog:libhilog",
217  ]
218}
219
220ohos_unittest("wm_window_session_impl_test") {
221  module_out_path = module_out_path
222
223  sources = [ "window_session_impl_test.cpp" ]
224
225  deps = [ ":wm_unittest_common" ]
226
227  external_deps = [
228    "c_utils:utils",
229    "hilog:libhilog",
230    "init:libbegetutil",
231  ]
232}
233
234ohos_unittest("wm_window_session_impl_two_test") {
235  module_out_path = module_out_path
236
237  sources = [ "window_session_impl_two_test.cpp" ]
238
239  deps = [ ":wm_unittest_common" ]
240
241  external_deps = [
242    "c_utils:utils",
243    "hilog:libhilog",
244    "init:libbegetutil",
245  ]
246}
247
248ohos_unittest("wm_window_session_impl_test4") {
249  module_out_path = module_out_path
250
251  sources = [ "window_session_impl_test4.cpp" ]
252
253  deps = [ ":wm_unittest_common" ]
254
255  external_deps = [
256    "c_utils:utils",
257    "hilog:libhilog",
258    "init:libbegetutil",
259  ]
260}
261
262ohos_unittest("wm_window_effect_test") {
263  module_out_path = module_out_path
264
265  sources = [ "window_effect_test.cpp" ]
266
267  deps = [ ":wm_unittest_common" ]
268
269  external_deps = [
270    "c_utils:utils",
271    "hilog:libhilog",
272  ]
273}
274
275ohos_unittest("wm_gtx_input_event_sender_test") {
276  module_out_path = module_out_path
277
278  sources = [ "gtx_input_event_sender_test.cpp" ]
279
280  deps = [ ":wm_unittest_common" ]
281
282  external_deps = [
283    "c_utils:utils",
284    "hilog:libhilog",
285  ]
286}
287
288ohos_unittest("wm_input_transfer_station_test") {
289  module_out_path = module_out_path
290
291  sources = [ "input_transfer_station_test.cpp" ]
292
293  deps = [ ":wm_unittest_common" ]
294
295  external_deps = [
296    "c_utils:utils",
297    "hilog:libhilog",
298  ]
299}
300
301ohos_unittest("wm_window_input_channel_test") {
302  module_out_path = module_out_path
303
304  sources = [ "window_input_channel_test.cpp" ]
305
306  deps = [ ":wm_unittest_common" ]
307
308  external_deps = [
309    "c_utils:utils",
310    "hilog:libhilog",
311  ]
312}
313
314ohos_unittest("wm_window_option_test") {
315  module_out_path = module_out_path
316
317  sources = [ "window_option_test.cpp" ]
318
319  deps = [ ":wm_unittest_common" ]
320
321  external_deps = [
322    "c_utils:utils",
323    "hilog:libhilog",
324  ]
325}
326
327ohos_unittest("wm_window_scene_test") {
328  module_out_path = module_out_path
329
330  sources = [ "window_scene_test.cpp" ]
331
332  deps = [ ":wm_unittest_common" ]
333
334  external_deps = [
335    "c_utils:utils",
336    "common_event_service:cesfwk_innerkits",
337    "hilog:libhilog",
338  ]
339}
340
341ohos_unittest("wm_window_test") {
342  module_out_path = module_out_path
343
344  sources = [ "window_test.cpp" ]
345
346  deps = [
347    ":wm_unittest_common",
348    "${window_base_path}/window_scene/interfaces/innerkits:libwsutils",
349  ]
350
351  external_deps = [
352    "c_utils:utils",
353    "common_event_service:cesfwk_innerkits",
354    "hilog:libhilog",
355  ]
356}
357
358ohos_unittest("wm_window_impl_listener_test") {
359  module_out_path = module_out_path
360
361  sources = [ "window_impl_listener_test.cpp" ]
362
363  deps = [ ":wm_unittest_common" ]
364
365  external_deps = [
366    "accessibility:accessibility_common",
367    "c_utils:utils",
368    "hilog:libhilog",
369  ]
370}
371
372ohos_unittest("wm_window_proxy_test") {
373  module_out_path = module_out_path
374
375  sources = [ "window_proxy_test.cpp" ]
376
377  deps = [ ":wm_unittest_common" ]
378
379  external_deps = [
380    "c_utils:utils",
381    "hilog:libhilog",
382  ]
383}
384
385ohos_unittest("wm_window_stub_test") {
386  module_out_path = module_out_path
387
388  sources = [ "window_stub_test.cpp" ]
389
390  deps = [ ":wm_unittest_common" ]
391
392  external_deps = [
393    "c_utils:utils",
394    "hilog:libhilog",
395  ]
396}
397
398ohos_unittest("wm_window_scene_session_impl_test") {
399  module_out_path = module_out_path
400
401  sources = [ "window_scene_session_impl_test.cpp" ]
402
403  deps = [ ":wm_unittest_common" ]
404
405  external_deps = [
406    "c_utils:utils",
407    "hilog:libhilog",
408    "init:libbegetutil",
409  ]
410}
411
412ohos_unittest("wm_window_scene_session_impl_test2") {
413  module_out_path = module_out_path
414
415  sources = [ "window_scene_session_impl_test2.cpp" ]
416
417  deps = [ ":wm_unittest_common" ]
418
419  external_deps = [
420    "c_utils:utils",
421    "hilog:libhilog",
422    "init:libbegetutil",
423  ]
424}
425
426ohos_unittest("wm_window_scene_session_impl_test3") {
427  module_out_path = module_out_path
428
429  sources = [ "window_scene_session_impl_test3.cpp" ]
430
431  deps = [ ":wm_unittest_common" ]
432
433  external_deps = [
434    "c_utils:utils",
435    "hilog:libhilog",
436    "init:libbegetutil",
437  ]
438}
439
440ohos_unittest("wm_window_scene_session_impl_test4") {
441  module_out_path = module_out_path
442
443  sources = [ "window_scene_session_impl_test4.cpp" ]
444
445  deps = [ ":wm_unittest_common" ]
446
447  external_deps = [
448    "c_utils:utils",
449    "hilog:libhilog",
450    "init:libbegetutil",
451  ]
452}
453
454ohos_unittest("wm_window_manager_stub_proxy_test") {
455  module_out_path = module_out_path
456
457  sources = [ "window_manager_agent_stub_test.cpp" ]
458
459  deps = [ ":wm_unittest_common" ]
460
461  external_deps = [
462    "c_utils:utils",
463    "hilog:libhilog",
464  ]
465}
466
467ohos_unittest("wm_window_frame_trace_impl_test") {
468  module_out_path = module_out_path
469  defines = [ "FRAME_TRACE_ENABLE" ]
470  sources = [ "window_frame_trace_impl_test.cpp" ]
471
472  deps = [ ":wm_unittest_common" ]
473
474  external_deps = [
475    "c_utils:utils",
476    "hilog:libhilog",
477  ]
478}
479
480ohos_unittest("wm_window_agent_test") {
481  module_out_path = module_out_path
482  defines = [ "FRAME_TRACE_ENABLE" ]
483  sources = [ "window_agent_test.cpp" ]
484
485  deps = [ ":wm_unittest_common" ]
486
487  external_deps = [
488    "c_utils:utils",
489    "hilog:libhilog",
490  ]
491}
492
493ohos_unittest("wm_window_extension_session_impl_test") {
494  module_out_path = module_out_path
495
496  sources = [ "window_extension_session_impl_test.cpp" ]
497
498  deps = [ ":wm_unittest_common" ]
499
500  external_deps = [
501    "ability_runtime:app_context",
502    "c_utils:utils",
503    "eventhandler:libeventhandler",
504    "hilog:libhilog",
505  ]
506}
507
508ohos_unittest("wm_root_scene_test") {
509  module_out_path = module_out_path
510
511  sources = [ "root_scene_test.cpp" ]
512
513  deps = [ ":wm_unittest_common" ]
514
515  external_deps = [
516    "c_utils:utils",
517    "hilog:libhilog",
518  ]
519}
520
521ohos_unittest("wm_screen_scene_test") {
522  module_out_path = module_out_path
523
524  sources = [ "screen_scene_test.cpp" ]
525
526  deps = [ ":wm_unittest_common" ]
527
528  external_deps = [
529    "c_utils:utils",
530    "hilog:libhilog",
531  ]
532}
533
534ohos_unittest("wm_picture_in_picture_controller_test") {
535  module_out_path = module_out_path
536
537  sources = [ "picture_in_picture_controller_test.cpp" ]
538
539  deps = [ ":wm_unittest_common" ]
540
541  external_deps = [
542    "ace_engine:ace_xcomponent_controller",
543    "c_utils:utils",
544    "hilog:libhilog",
545  ]
546}
547
548ohos_unittest("wm_picture_in_picture_manager_test") {
549  module_out_path = module_out_path
550
551  sources = [ "picture_in_picture_manager_test.cpp" ]
552
553  deps = [
554    ":wm_unittest_common",
555    "${window_base_path}/window_scene/interfaces/innerkits:libwsutils",
556  ]
557
558  external_deps = [
559    "ace_engine:ace_xcomponent_controller",
560    "c_utils:utils",
561    "hilog:libhilog",
562  ]
563}
564
565ohos_unittest("wm_picture_in_picture_option_test") {
566  module_out_path = module_out_path
567
568  sources = [ "picture_in_picture_option_test.cpp" ]
569
570  deps = [ ":wm_unittest_common" ]
571
572  external_deps = [
573    "ace_engine:ace_xcomponent_controller",
574    "c_utils:utils",
575    "hilog:libhilog",
576  ]
577}
578
579ohos_unittest("wm_extension_window_impl_test") {
580  module_out_path = module_out_path
581
582  sources = [ "extension_window_impl_test.cpp" ]
583
584  deps = [ ":wm_unittest_common" ]
585
586  external_deps = [ "c_utils:utils" ]
587}
588
589ohos_unittest("wm_window_manager_agent_proxy_test") {
590  module_out_path = module_out_path
591
592  sources = [ "window_manager_agent_proxy_test.cpp" ]
593
594  deps = [ ":wm_unittest_common" ]
595
596  external_deps = [ "c_utils:utils" ]
597}
598
599ohos_unittest("wm_window_adapter_test") {
600  module_out_path = module_out_path
601
602  sources = [ "window_adapter_test.cpp" ]
603
604  deps = [
605    ":wm_unittest_common",
606    "${window_base_path}/window_scene/interfaces/innerkits:libwsutils",
607  ]
608
609  external_deps = [ "c_utils:utils" ]
610}
611
612ohos_unittest("wm_pattern_detach_callback_test") {
613  module_out_path = module_out_path
614
615  sources = [ "pattern_detach_callback_test.cpp" ]
616
617  deps = [ ":wm_unittest_common" ]
618
619  external_deps = [ "c_utils:utils" ]
620}
621
622ohos_unittest("wm_pattern_detach_callback_proxy_test") {
623  module_out_path = module_out_path
624
625  sources = [ "pattern_detach_callback_proxy_test.cpp" ]
626
627  deps = [ ":wm_unittest_common" ]
628
629  external_deps = [ "c_utils:utils" ]
630}
631
632ohos_unittest("wm_window_adapter_lite_test") {
633  module_out_path = module_out_path
634
635  sources = [ "window_adapter_lite_test.cpp" ]
636
637  deps = [ ":wm_unittest_common" ]
638
639  external_deps = [
640    "c_utils:utils",
641    "hilog:libhilog",
642  ]
643}
644
645ohos_unittest("ws_window_prepare_terminate_test") {
646  module_out_path = module_out_path
647
648  sources = [ "window_prepare_terminate_test.cpp" ]
649
650  deps = [ ":wm_unittest_common" ]
651
652  external_deps = [
653    "c_utils:utils",
654    "hilog:libhilog",
655  ]
656}
657
658## Build wm_unittest_common.a {{{
659config("wm_unittest_common_public_config") {
660  include_dirs = [
661    "${window_base_path}/test/common/mock",
662    "${window_base_path}/dm/include",
663    "${window_base_path}/dmserver/include",
664    "${window_base_path}/wm/include",
665    "${window_base_path}/wm/include/zidl",
666    "${window_base_path}/wm/test/mock",
667    "${window_base_path}/wmserver/include",
668    "${window_base_path}/wmserver/include/window_snapshot",
669    "${window_base_path}/interfaces/innerkits/wm",
670    "${window_base_path}/utils/include",
671    "${window_base_path}/window_scene",
672    "${window_base_path}/window_scene/test/mock",
673    "${window_base_path}/window_scene/session/host/include/zidl",
674    "//commonlibrary/c_utils/base/include",
675    "//foundation/communication/ipc/interfaces/innerkits/ipc_core/include",
676    "//base/hiviewdfx/hilog/interfaces/native/innerkits/include",
677    "//third_party/googletest/googlemock/include",
678
679    # for abilityContext
680    "${ability_runtime_path}/interfaces/kits/native/ability/ability_runtime",
681    "${ability_runtime_path}/interfaces/kits/native/appkit/ability_runtime/context",
682    "//base/global/resource_management/interfaces/inner_api/include",
683    "//third_party/node/deps/icu-small/source/common",
684    "${ability_runtime_inner_api_path}/ability_manager/include",
685    "//foundation/ability/ability_base/interfaces/kits/native/configuration/include/",
686
687    # abilityContext end
688    "${accessibility_path}/interfaces/innerkits/common/include/",
689  ]
690}
691
692ohos_static_library("wm_unittest_common") {
693  visibility = [ ":*" ]
694  testonly = true
695
696  public_configs = [
697    ":wm_unittest_common_public_config",
698    "${window_base_path}/resources/config/build:coverage_flags",
699    "${window_base_path}/resources/config/build:testcase_flags",
700  ]
701
702  public_deps = [
703    # need delete it for abilitycontext
704    "${ability_runtime_inner_api_path}/ability_manager:ability_manager",
705    "${window_base_path}/dm:libdm",
706    "${window_base_path}/dmserver:libdms",
707    "${window_base_path}/utils:libwmutil",
708    "${window_base_path}/utils:libwmutil_base",
709    "${window_base_path}/window_scene/common:window_scene_common",
710    "${window_base_path}/window_scene/session:scene_session",
711    "${window_base_path}/window_scene/session_manager:scene_session_manager",
712    "${window_base_path}/wm:libwm",
713    "${window_base_path}/wm:libwm_lite",
714    "${window_base_path}/wmserver:libwms",
715    "//commonlibrary/c_utils/base:utils",
716    "//foundation/arkui/ace_engine/interfaces/inner_api/ace:ace_uicontent",
717    "//foundation/arkui/napi:ace_napi",
718    "//foundation/graphic/graphic_2d/rosen/modules/animation/window_animation:window_animation",
719    "//foundation/graphic/graphic_2d/rosen/modules/render_service_client:librender_service_client",
720    "//foundation/multimodalinput/input/frameworks/proxy:libmmi-client",
721    "//foundation/systemabilitymgr/safwk/interfaces/innerkits/safwk:system_ability_fwk",
722    "//third_party/googletest:gmock",
723    "//third_party/googletest:gtest_main",
724  ]
725
726  external_deps = [
727    "ability_base:configuration",
728    "ability_base:want",
729    "ability_runtime:ability_context_native",
730    "accessibility:accessibility_common",
731    "bundle_framework:appexecfwk_base",
732    "image_framework:image_native",
733    "ipc:ipc_single",
734    "power_manager:powermgr_client",
735  ]
736
737  part_name = "window_manager"
738  subsystem_name = "window"
739}
740## Build wm_unittest_common.a }}}
741