1# Copyright (c) 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/test.gni")
15import("../../../../device_status.gni")
16
17module_output_path = "${device_status_part_name}/unit_out"
18
19ohos_unittest("MonitorTest") {
20  module_out_path = module_output_path
21
22  include_dirs = [
23    "${device_status_root_path}/intention/services/device_manager/include",
24    "${device_status_root_path}/libs/interface",
25    "${device_status_service_path}/communication/service/include",
26  ]
27
28  sources = [ "src/monitor_test.cpp" ]
29
30  cflags = [
31    "-Dprivate=public",
32    "-Dprotected=public",
33  ]
34
35  deps = [
36    "${device_status_interfaces_path}/innerkits:devicestatus_client",
37    "${device_status_root_path}/intention/prototype:intention_prototype",
38    "${device_status_root_path}/services:devicestatus_static_service",
39    "${device_status_root_path}/utils/ipc:devicestatus_ipc",
40    "${device_status_utils_path}:devicestatus_util",
41  ]
42
43  external_deps = [
44    "access_token:libaccesstoken_sdk",
45    "c_utils:utils",
46    "graphic_2d:librender_service_client",
47    "hilog:libhilog",
48    "input:libmmi-client",
49  ]
50}
51
52ohos_unittest("EnumeratorTest") {
53  sanitize = {
54    cfi = true
55    cfi_cross_dso = true
56    debug = true
57    blocklist = "./ipc_blocklist.txt"
58  }
59
60  module_out_path = module_output_path
61
62  include_dirs = [
63    "${device_status_root_path}/intention/services/device_manager/include",
64    "${device_status_root_path}/libs/interface",
65    "${device_status_service_path}/communication/service/include",
66  ]
67
68  sources = [ "src/enumerator_test.cpp" ]
69
70  cflags = [
71    "-Dprivate=public",
72    "-Dprotected=public",
73  ]
74
75  deps = [
76    "${device_status_interfaces_path}/innerkits:devicestatus_client",
77    "${device_status_root_path}/intention/prototype:intention_prototype",
78    "${device_status_root_path}/services:devicestatus_static_service",
79    "${device_status_root_path}/utils/ipc:devicestatus_ipc",
80    "${device_status_utils_path}:devicestatus_util",
81  ]
82
83  external_deps = [
84    "access_token:libaccesstoken_sdk",
85    "c_utils:utils",
86    "graphic_2d:librender_service_client",
87    "hilog:libhilog",
88    "input:libmmi-client",
89  ]
90}
91
92ohos_unittest("DeviceTest") {
93  sanitize = {
94    cfi = true
95    cfi_cross_dso = true
96    debug = false
97    blocklist = "./ipc_blocklist.txt"
98  }
99
100  module_out_path = module_output_path
101  include_dirs = [
102    "${device_status_root_path}/intention/services/device_manager/include",
103    "${device_status_root_path}/libs/interface",
104    "${device_status_service_path}/communication/service/include",
105  ]
106  sources = [ "src/device_test.cpp" ]
107
108  cflags = [
109    "-Dprivate=public",
110    "-Dprotected=public",
111  ]
112
113  deps = [
114    "${device_status_interfaces_path}/innerkits:devicestatus_client",
115    "${device_status_root_path}/intention/prototype:intention_prototype",
116    "${device_status_root_path}/services:devicestatus_static_service",
117    "${device_status_root_path}/utils/ipc:devicestatus_ipc",
118    "${device_status_utils_path}:devicestatus_util",
119  ]
120
121  external_deps = [
122    "access_token:libaccesstoken_sdk",
123    "c_utils:utils",
124    "graphic_2d:librender_service_client",
125    "hilog:libhilog",
126    "input:libmmi-client",
127  ]
128}
129
130ohos_unittest("IntentionDeviceManagerTest") {
131  sanitize = {
132    cfi = true
133    cfi_cross_dso = true
134    debug = true
135    blocklist = "./ipc_blocklist.txt"
136  }
137
138  module_out_path = module_output_path
139
140  include_dirs = [
141    "include",
142    "${device_status_interfaces_path}/innerkits/interaction/include",
143    "${intention_root_path}/services/device_manager/include",
144    "${device_status_utils_path}",
145    "${device_status_utils_path}/include",
146    "${device_status_root_path}/services/native/include",
147    "${device_status_root_path}/services/delegate_task/include",
148    "${device_status_interfaces_path}/innerkits/include",
149    "${device_status_root_path}/libs/interface",
150    "${device_status_service_path}/communication/service/include",
151    "${device_status_service_path}/communication/base",
152    "${device_status_service_path}/interaction/drag/include",
153    "${intention_root_path}/scheduler/timer_manager/include",
154  ]
155
156  sources = [ "src/device_manager_test.cpp" ]
157
158  cflags = [
159    "-Dprivate=public",
160    "-Dprotected=public",
161  ]
162
163  deps = [
164    "${device_status_root_path}/intention/cooperate/plugin:intention_cooperate",
165    "${device_status_root_path}/intention/prototype:intention_prototype",
166    "${device_status_root_path}/intention/scheduler/timer_manager:intention_timer_manager",
167    "${device_status_root_path}/intention/services/device_manager:intention_device_manager",
168    "${device_status_root_path}/services:devicestatus_service",
169    "${device_status_root_path}/services:devicestatus_static_service",
170    "${device_status_root_path}/services/interaction/drag:interaction_drag",
171    "${device_status_root_path}/utils/common:devicestatus_util",
172    "${device_status_root_path}/utils/ipc:devicestatus_ipc",
173    "//third_party/googletest:gtest_main",
174  ]
175
176  external_deps = [
177    "ability_runtime:app_manager",
178    "access_token:libaccesstoken_sdk",
179    "cJSON:cjson",
180    "c_utils:utils",
181    "graphic_2d:librender_service_base",
182    "graphic_2d:librender_service_client",
183    "graphic_2d:window_animation",
184    "hilog:libhilog",
185    "hisysevent:libhisysevent",
186    "input:libmmi-client",
187    "ipc:ipc_single",
188    "window_manager:libwm",
189  ]
190}
191
192group("unittest") {
193  testonly = true
194  deps = []
195
196  deps += [
197    ":DeviceTest",
198    ":EnumeratorTest",
199    ":IntentionDeviceManagerTest",
200    ":MonitorTest",
201  ]
202}
203