1# Copyright (c) 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("//foundation/ability/ability_runtime/ability_runtime.gni")
16module_output_path = "ability_runtime/ability_delegator"
17
18ability_delegator_mock_sources = [
19  "${ability_runtime_path}/tools/aa/src/shell_command_config_loader.cpp",
20  "${ability_runtime_path}/tools/aa/src/shell_command_executor.cpp",
21  "${ability_runtime_path}/tools/aa/src/test_observer.cpp",
22  "${ability_runtime_path}/tools/aa/src/test_observer_stub.cpp",
23  "${ability_runtime_test_path}/mock/frameworks_kits_appkit_native_test/ability_delegator/mock_ability_delegator_stub.cpp",
24  "${ability_runtime_test_path}/mock/frameworks_kits_appkit_native_test/ability_delegator/mock_iability_monitor.cpp",
25  "${ability_runtime_test_path}/mock/frameworks_kits_appkit_native_test/ability_delegator/mock_test_observer_stub.cpp",
26]
27
28###############################################################################
29config("moduletest_include_dir") {
30  visibility = [ ":*" ]
31  include_dirs = [
32    "${ability_runtime_path}/interfaces/kits/native/appkit/ability_delegator/",
33    "${ability_runtime_path}/tools/aa/include",
34    "${ability_runtime_test_path}/mock/frameworks_kits_appkit_native_test/ability_delegator",
35    "${ability_runtime_path}/interfaces/kits/native/appkit/ability_delegator/runner_runtime/",
36    "${ability_runtime_innerkits_path}/ability_manager/include",
37    "//third_party/googletest/googlemock/include",
38    "${ability_runtime_services_path}/abilitymgr/include",
39    "${ability_runtime_path}/interfaces/kits/native/appkit/ability_runtime/context/",
40    "${ability_runtime_path}/interfaces/kits/native/appkit/ability_runtime/app/",
41  ]
42  cflags = []
43  if (target_cpu == "arm") {
44    cflags += [ "-DBINDER_IPC_32BIT" ]
45  }
46}
47
48ohos_moduletest("shell_cmd_result_moduletest") {
49  module_out_path = module_output_path
50  sources = [ "shell_cmd_result_module_test.cpp" ]
51
52  configs = [ ":moduletest_include_dir" ]
53  configs += [ "${ability_runtime_services_path}/common:common_config" ]
54
55  deps = [
56    "${ability_runtime_native_path}/appkit:appkit_delegator",
57    "//third_party/googletest:gmock_main",
58    "//third_party/googletest:gtest_main",
59  ]
60
61  external_deps = [
62    "c_utils:utils",
63    "hilog:libhilog",
64  ]
65}
66
67ohos_moduletest("ability_delegator_args_moduletest") {
68  module_out_path = module_output_path
69  sources = [ "ability_delegator_args_module_test.cpp" ]
70
71  configs = [ ":moduletest_include_dir" ]
72  configs += [ "${ability_runtime_services_path}/common:common_config" ]
73
74  deps = [
75    "${ability_runtime_native_path}/appkit:appkit_delegator",
76    "//third_party/googletest:gmock_main",
77    "//third_party/googletest:gtest_main",
78  ]
79
80  external_deps = [
81    "ability_base:want",
82    "hilog:libhilog",
83  ]
84}
85
86ohos_moduletest("delegator_thread_moduletest") {
87  module_out_path = module_output_path
88
89  sources = [ "delegator_thread_module_test.cpp" ]
90
91  configs = [ ":moduletest_include_dir" ]
92  configs += [ "${ability_runtime_services_path}/common:common_config" ]
93
94  deps = [
95    "${ability_runtime_native_path}/appkit:appkit_delegator",
96    "//third_party/googletest:gmock_main",
97    "//third_party/googletest:gtest_main",
98  ]
99
100  external_deps = [
101    "eventhandler:libeventhandler",
102    "hilog:libhilog",
103    "ipc:ipc_core",
104  ]
105}
106
107ohos_moduletest("ability_delegator_registry_moduletest") {
108  module_out_path = module_output_path
109
110  sources = [ "ability_delegator_registry_module_test.cpp" ]
111  sources += ability_delegator_mock_sources
112
113  configs = [ ":moduletest_include_dir" ]
114  configs += [ "${ability_runtime_services_path}/common:common_config" ]
115
116  deps = [
117    "${ability_runtime_innerkits_path}/app_manager:app_manager",
118    "${ability_runtime_native_path}/ability/native:abilitykit_native",
119    "${ability_runtime_native_path}/appkit:app_context",
120    "${ability_runtime_native_path}/appkit:appkit_delegator",
121    "${ability_runtime_native_path}/appkit:appkit_native",
122    "${ability_runtime_services_path}/abilitymgr:abilityms",
123    "//third_party/googletest:gmock_main",
124    "//third_party/googletest:gtest_main",
125  ]
126
127  external_deps = [
128    "ability_base:want",
129    "ability_runtime:ability_manager",
130    "ability_runtime:runtime",
131    "c_utils:utils",
132    "common_event_service:cesfwk_innerkits",
133    "eventhandler:libeventhandler",
134    "hilog:libhilog",
135    "init:libbegetutil",
136    "ipc:ipc_core",
137    "napi:ace_napi",
138  ]
139}
140
141ohos_moduletest("iability_monitor_moduletest") {
142  module_out_path = module_output_path
143
144  sources = [ "iability_monitor_module_test.cpp" ]
145  sources += ability_delegator_mock_sources
146
147  configs = [ ":moduletest_include_dir" ]
148  configs += [ "${ability_runtime_services_path}/common:common_config" ]
149
150  deps = [
151    "${ability_runtime_native_path}/ability/native:abilitykit_native",
152    "${ability_runtime_native_path}/appkit:appkit_delegator",
153    "${ability_runtime_services_path}/abilitymgr:abilityms",
154    "//third_party/googletest:gmock_main",
155    "//third_party/googletest:gtest_main",
156  ]
157
158  external_deps = [
159    "ability_base:session_info",
160    "ability_base:want",
161    "ability_runtime:ability_manager",
162    "c_utils:utils",
163    "eventhandler:libeventhandler",
164    "hilog:libhilog",
165    "ipc:ipc_core",
166    "napi:ace_napi",
167  ]
168}
169
170ohos_moduletest("ability_delegator_moduletest") {
171  module_out_path = module_output_path
172
173  sources = [ "ability_delegator_module_test.cpp" ]
174  sources += ability_delegator_mock_sources
175
176  configs = [ ":moduletest_include_dir" ]
177  configs += [ "${ability_runtime_services_path}/common:common_config" ]
178
179  deps = [
180    "${ability_runtime_innerkits_path}/app_manager:app_manager",
181    "${ability_runtime_native_path}/appkit:app_context",
182    "${ability_runtime_native_path}/appkit:appkit_delegator",
183    "${ability_runtime_native_path}/appkit:appkit_native",
184    "${ability_runtime_services_path}/abilitymgr:abilityms",
185    "//third_party/googletest:gmock_main",
186    "//third_party/googletest:gtest_main",
187  ]
188
189  external_deps = [
190    "ability_base:want",
191    "ability_runtime:ability_manager",
192    "c_utils:utils",
193    "common_event_service:cesfwk_innerkits",
194    "eventhandler:libeventhandler",
195    "hilog:libhilog",
196    "init:libbegetutil",
197    "ipc:ipc_core",
198  ]
199
200  if (ability_runtime_graphics) {
201    external_deps += [
202      "window_manager:libwsutils",
203      "window_manager:scene_session",
204    ]
205  }
206}
207
208ohos_moduletest("js_test_runner_moduletest") {
209  module_out_path = module_output_path
210
211  sources = [ "js_test_runner_module_test.cpp" ]
212  sources += ability_delegator_mock_sources
213
214  configs = [ ":moduletest_include_dir" ]
215  configs += [ "${ability_runtime_services_path}/common:common_config" ]
216
217  deps = [
218    "${ability_runtime_innerkits_path}/app_manager:app_manager",
219    "${ability_runtime_native_path}/ability/native:abilitykit_native",
220    "${ability_runtime_native_path}/appkit:app_context",
221    "${ability_runtime_native_path}/appkit:appkit_delegator",
222    "${ability_runtime_native_path}/appkit:appkit_native",
223    "${ability_runtime_services_path}/abilitymgr:abilityms",
224    "//third_party/googletest:gmock_main",
225    "//third_party/googletest:gtest_main",
226  ]
227
228  external_deps = [
229    "ability_base:configuration",
230    "ability_base:extractortool",
231    "ability_base:want",
232    "ability_runtime:ability_manager",
233    "ability_runtime:runtime",
234    "bundle_framework:appexecfwk_base",
235    "c_utils:utils",
236    "common_event_service:cesfwk_innerkits",
237    "ets_runtime:libark_jsruntime",
238    "eventhandler:libeventhandler",
239    "hilog:libhilog",
240    "init:libbegetutil",
241    "ipc:ipc_core",
242    "napi:ace_napi",
243  ]
244}
245
246###############################################################################
247
248group("moduletest") {
249  testonly = true
250  deps = []
251
252  deps += [
253    ":ability_delegator_args_moduletest",
254    ":ability_delegator_moduletest",
255    ":ability_delegator_registry_moduletest",
256    ":delegator_thread_moduletest",
257    ":iability_monitor_moduletest",
258    ":js_test_runner_moduletest",
259    ":shell_cmd_result_moduletest",
260  ]
261}
262###############################################################################
263