1# Copyright (c) 2022-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/ohos_var.gni")
16import("//build/test.gni")
17import("//foundation/ability/dmsfwk/dmsfwk.gni")
18
19module_output_path = "dmsfwk/distributed_ability_manager_svr_test"
20
21distributed_service = "//foundation/ability/dmsfwk/services"
22
23dtbabilitymgr_configs = [
24  "${distributed_service}/dtbabilitymgr:distributed_ability_manager_config",
25]
26
27config("test_config") {
28  visibility = [ ":*" ]
29  include_dirs = [
30    "//foundation/ability/dmsfwk/services/dtbschedmgr/include",
31    "//foundation/ability/dmsfwk/services/dtbschedmgr/test/unittest",
32    "${dms_path}/common/include",
33    "${dms_path}/interfaces/innerkits/distributed_event/include",
34    "${dms_path}/interfaces/innerkits/tests",
35  ]
36}
37
38dtbabilitymgr_external_deps = [
39  "ability_base:want",
40  "ability_runtime:ability_manager",
41  "access_token:libaccesstoken_sdk",
42  "access_token:libnativetoken_shared",
43  "access_token:libtokensetproc_shared",
44  "bundle_framework:appexecfwk_base",
45  "bundle_framework:appexecfwk_core",
46  "c_utils:utils",
47  "device_auth:deviceauth_sdk",
48  "device_manager:devicemanagersdk",
49  "dmsfwk:common_sdk",
50  "dmsfwk:continuation_manager",
51  "eventhandler:libeventhandler",
52  "ffrt:libffrt",
53  "hilog:libhilog",
54  "init:libbegetutil",
55  "ipc:ipc_core",
56  "kv_store:distributeddata_inner",
57  "safwk:system_ability_fwk",
58  "samgr:samgr_proxy",
59]
60if (os_account_part) {
61  dtbabilitymgr_external_deps += [ "os_account:os_account_innerkits" ]
62}
63
64dtbabilitymgr_public_deps =
65    [ "${distributed_service}/dtbschedmgr:distributedschedsvr" ]
66
67dtbabilitymgr_sources = [
68  "${distributed_service}/dtbabilitymgr/src/continuation_manager/app_connection_stub.cpp",
69  "${distributed_service}/dtbabilitymgr/src/continuation_manager/app_device_callback_stub.cpp",
70  "${distributed_service}/dtbabilitymgr/src/continuation_manager/connect_status_info.cpp",
71  "${distributed_service}/dtbabilitymgr/src/continuation_manager/continuation_extra_params.cpp",
72  "${distributed_service}/dtbabilitymgr/src/continuation_manager/continuation_result.cpp",
73  "${distributed_service}/dtbabilitymgr/src/continuation_manager/device_selection_notifier_proxy.cpp",
74  "${distributed_service}/dtbabilitymgr/src/continuation_manager/device_selection_notifier_stub.cpp",
75  "${distributed_service}/dtbabilitymgr/src/continuation_manager/notifier_death_recipient.cpp",
76  "${distributed_service}/dtbabilitymgr/src/continuation_manager/notifier_info.cpp",
77  "${distributed_service}/dtbabilitymgr/src/distributed_ability_manager_client.cpp",
78  "${distributed_service}/dtbabilitymgr/src/distributed_ability_manager_dumper.cpp",
79  "${distributed_service}/dtbabilitymgr/src/distributed_ability_manager_proxy.cpp",
80  "${distributed_service}/dtbabilitymgr/src/distributed_ability_manager_service.cpp",
81  "${distributed_service}/dtbabilitymgr/src/distributed_ability_manager_stub.cpp",
82]
83
84ohos_unittest("continuationmanagertest") {
85  module_out_path = module_output_path
86  sources = [
87    "${distributed_service}/dtbschedmgr/test/unittest/distributed_sched_test_util.cpp",
88    "unittest/continuation_manager/app_connection_stub_test.cpp",
89    "unittest/continuation_manager/continuation_manager_test.cpp",
90  ]
91  sources += dtbabilitymgr_sources
92  configs = [
93    ":test_config",
94    "//foundation/ability/dmsfwk/services/dtbschedmgr/test/resource:coverage_flags",
95  ]
96  configs += dtbabilitymgr_configs
97  deps =
98      [ "${distributed_service}/dtbabilitymgr:distributed_ability_manager_svr" ]
99  if (is_standard_system) {
100    external_deps = dtbabilitymgr_external_deps
101    public_deps = dtbabilitymgr_public_deps
102  }
103  part_name = "dmsfwk"
104}
105
106ohos_unittest("distributedabilitymanagerservicetest") {
107  cflags = [ "-Dprivate=public" ]
108  module_out_path = module_output_path
109  sources = [
110    "${distributed_service}/dtbschedmgr/test/unittest/distributed_sched_test_util.cpp",
111    "unittest/distributed_ability_manager_dumper_test.cpp",
112    "unittest/distributed_ability_manager_service_test.cpp",
113    "unittest/distributed_ability_manager_stub_test.cpp",
114  ]
115  sources += dtbabilitymgr_sources
116  configs = [
117    ":test_config",
118    "${distributed_service}/dtbschedmgr/test/resource:coverage_flags",
119  ]
120  ldflags = [ "-rdynamic" ]
121  configs += dtbabilitymgr_configs
122  if (is_standard_system) {
123    external_deps = dtbabilitymgr_external_deps
124    public_deps = dtbabilitymgr_public_deps
125  }
126  part_name = "dmsfwk"
127}
128
129group("unittest") {
130  testonly = true
131  deps = [
132    ":continuationmanagertest",
133    ":distributedabilitymanagerservicetest",
134  ]
135}
136