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/ohos.gni") 15import("//build/test.gni") 16import("../../multimodalinput_mini.gni") 17 18defines = input_default_defines 19 20module_output_path = "multimodalinput/unit_out" 21 22config("libmmi_client_config") { 23 visibility = [ ":*" ] 24 25 include_dirs = [ 26 "${mmi_path}/interfaces/native/innerkits/common/include", 27 "${mmi_path}/util/common/include", 28 "${mmi_path}/interfaces/native/innerkits/event/include", 29 "event_handler/include", 30 "events/include", 31 "module_loader/include", 32 ] 33} 34 35config("libmmi_public_client_config") { 36 include_dirs = [ 37 "${mmi_path}/interfaces/native/innerkits/common/include", 38 "${mmi_path}/interfaces/native/innerkits/event/include", 39 "${mmi_path}/interfaces/native/innerkits/proxy/include", 40 "${mmi_path}/util/common/include", 41 ] 42} 43 44config("libmmi_test_util") { 45 include_dirs = [ 46 "${mmi_path}/frameworks/proxy/event_handler/include", 47 "${mmi_path}/frameworks/proxy/module_loader/include", 48 "${mmi_path}/interfaces/native/innerkits/common/include", 49 "${mmi_path}/interfaces/native/innerkits/proxy/include", 50 "${mmi_path}/test/unittest/common/include", 51 "${mmi_path}/util/network/include", 52 "${mmi_path}/util/socket/include", 53 "//third_party/googletest/googletest/include", 54 ] 55} 56 57ohos_source_set("libmmi-common") { 58 sources = libmmi_common_sources 59 public_configs = [ ":libmmi_client_config" ] 60 visibility = [ "${mmi_path}/*" ] 61 62 external_deps = [ 63 "c_utils:utils", 64 "hilog:libhilog", 65 ] 66 67 part_name = "input" 68 subsystem_name = "multimodalinput" 69} 70 71ohos_shared_library("libmmi-client") { 72 sources = libmmi_client_sources 73 version_script = "${mmi_path}/interfaces/native/innerkits/libmmi-client-map" 74 innerapi_tags = [ "platformsdk" ] 75 76 if (input_feature_interceptor) { 77 sources += [ "event_handler/src/input_interceptor_manager.cpp" ] 78 } 79 80 if (input_feature_monitor) { 81 sources += [ "event_handler/src/input_monitor_manager.cpp" ] 82 } 83 84 if (input_feature_keyboard) { 85 sources += [ "event_handler/src/key_event_input_subscribe_manager.cpp" ] 86 } 87 88 if (input_feature_switch) { 89 sources += [ "event_handler/src/switch_event_input_subscribe_manager.cpp" ] 90 } 91 92 configs = [ 93 "${mmi_path}:coverage_flags", 94 ":libmmi_client_config", 95 "${mmi_path}/util:libmmi_util_public_config", 96 "${mmi_path}/service/filter:mmi_event_filter_config", 97 "${mmi_path}/service/connect_manager:mmi_connect_manager_config", 98 ] 99 100 public_configs = [ ":libmmi_public_client_config" ] 101 102 deps = [ 103 ":libmmi-common", 104 "${mmi_path}/service/connect_manager:mmi_connect_manager_proxy", 105 "${mmi_path}/service/filter:mmi_event_filter_service", 106 "${mmi_path}/util:libmmi-util", 107 ] 108 109 part_name = "input" 110 subsystem_name = "multimodalinput" 111 external_deps = [ 112 "c_utils:utils", 113 "eventhandler:libeventhandler", 114 "hilog:libhilog", 115 "hitrace:hitrace_meter", 116 "ipc:ipc_single", 117 ] 118} 119 120ohos_unittest("ut-mmi-proxy-out") { 121 module_out_path = module_output_path 122 include_dirs = [ "$root_out_dir/diff_libinput_mmi/export_include" ] 123 124 sources = [ "module_loader/test/mmi_client_test.cpp" ] 125 126 configs = [ 127 "${mmi_path}:coverage_flags", 128 ":libmmi_test_util", 129 ] 130 131 deps = [ 132 "${mmi_path}/frameworks/proxy:libmmi-client", 133 "${mmi_path}/util:libmmi-util", 134 "//third_party/googletest:gmock_main", 135 "//third_party/googletest:gtest_main", 136 ] 137 external_deps = [ 138 "c_utils:utils", 139 "eventhandler:libeventhandler", 140 "hilog:libhilog", 141 "ipc:ipc_single", 142 ] 143} 144 145ohos_unittest("KeyEventTest") { 146 module_out_path = module_output_path 147 include_dirs = [ "$root_out_dir/diff_libinput_mmi/export_include" ] 148 149 sources = [ 150 "${mmi_path}/test/unittest/common/src/event_util_test.cpp", 151 "${mmi_path}/test/unittest/common/src/window_utils_test.cpp", 152 "events/test/key_event_test.cpp", 153 ] 154 155 configs = [ 156 "${mmi_path}:coverage_flags", 157 ":libmmi_test_util", 158 ] 159 160 deps = [ 161 "${mmi_path}/frameworks/proxy:libmmi-client", 162 "${mmi_path}/util:libmmi-util", 163 "//third_party/googletest:gmock_main", 164 "//third_party/googletest:gtest_main", 165 ] 166 external_deps = [ 167 "ability_runtime:abilitykit_native", 168 "access_token:libaccesstoken_sdk", 169 "access_token:libnativetoken", 170 "access_token:libtoken_setproc", 171 "c_utils:utils", 172 "hilog:libhilog", 173 "ipc:ipc_single", 174 "window_manager:libwm", 175 "window_manager:libwsutils", 176 ] 177} 178 179ohos_unittest("InputManagerTest") { 180 module_out_path = module_output_path 181 include_dirs = [ 182 "${mmi_path}/frameworks/proxy/events/test", 183 "${mmi_path}/frameworks/proxy/event_handler/include", 184 "$root_out_dir/diff_libinput_mmi/export_include", 185 "${mmi_path}/service/filter/include", 186 ] 187 188 sources = [ 189 "${mmi_path}/test/unittest/common/src/event_util_test.cpp", 190 "${mmi_path}/test/unittest/common/src/system_info.cpp", 191 "${mmi_path}/test/unittest/common/src/window_utils_test.cpp", 192 "events/src/input_manager_util.cpp", 193 "events/test/input_manager_pointer_test.cpp", 194 "events/test/input_manager_simulate_test.cpp", 195 "events/test/input_manager_test.cpp", 196 ] 197 198 configs = [ 199 "${mmi_path}:coverage_flags", 200 ":libmmi_test_util", 201 ] 202 203 deps = [ 204 "${mmi_path}/frameworks/proxy:libmmi-client", 205 "${mmi_path}/util:libmmi-util", 206 "//third_party/googletest:gmock_main", 207 "//third_party/googletest:gtest_main", 208 ] 209 external_deps = [ 210 "ability_runtime:abilitykit_native", 211 "access_token:libaccesstoken_sdk", 212 "access_token:libnativetoken", 213 "access_token:libtoken_setproc", 214 "c_utils:utils", 215 "eventhandler:libeventhandler", 216 "hilog:libhilog", 217 "image_framework:image_native", 218 "ipc:ipc_single", 219 "window_manager:libwm", 220 "window_manager:libwsutils", 221 ] 222} 223 224ohos_unittest("InputManagerManualTest") { 225 module_out_path = module_output_path 226 227 sources = [ "events/test/input_manager_manual_test.cpp" ] 228 229 configs = [ 230 "${mmi_path}:coverage_flags", 231 ":libmmi_test_util", 232 ] 233 234 deps = [ 235 "${mmi_path}/frameworks/proxy:libmmi-client", 236 "${mmi_path}/util:libmmi-util", 237 "//third_party/googletest:gmock_main", 238 "//third_party/googletest:gtest_main", 239 ] 240 external_deps = [ 241 "access_token:libaccesstoken_sdk", 242 "access_token:libnativetoken", 243 "access_token:libtoken_setproc", 244 "c_utils:utils", 245 "hilog:libhilog", 246 "ipc:ipc_single", 247 ] 248} 249 250ohos_unittest("InputManagerFilterManualTest") { 251 module_out_path = module_output_path 252 253 sources = [ "events/test/input_manager_filter_manual_test.cpp" ] 254 255 configs = [ 256 "${mmi_path}:coverage_flags", 257 ":libmmi_test_util", 258 ] 259 260 deps = [ 261 "${mmi_path}/frameworks/proxy:libmmi-client", 262 "${mmi_path}/util:libmmi-util", 263 "//third_party/googletest:gmock_main", 264 "//third_party/googletest:gtest_main", 265 ] 266 external_deps = [ 267 "access_token:libaccesstoken_sdk", 268 "access_token:libnativetoken", 269 "access_token:libtoken_setproc", 270 "c_utils:utils", 271 "hilog:libhilog", 272 "ipc:ipc_single", 273 ] 274} 275 276ohos_unittest("PointerEventTest") { 277 module_out_path = module_output_path 278 include_dirs = [ "$root_out_dir/diff_libinput_mmi/export_include" ] 279 280 sources = [ 281 "${mmi_path}/test/unittest/common/src/event_util_test.cpp", 282 "${mmi_path}/test/unittest/common/src/window_utils_test.cpp", 283 "events/test/pointer_event_test.cpp", 284 ] 285 286 configs = [ 287 "${mmi_path}:coverage_flags", 288 ":libmmi_test_util", 289 ] 290 291 deps = [ 292 "${mmi_path}/frameworks/proxy:libmmi-client", 293 "${mmi_path}/util:libmmi-util", 294 "//third_party/googletest:gmock_main", 295 "//third_party/googletest:gtest_main", 296 ] 297 external_deps = [ 298 "ability_runtime:abilitykit_native", 299 "access_token:libaccesstoken_sdk", 300 "access_token:libnativetoken", 301 "access_token:libtoken_setproc", 302 "c_utils:utils", 303 "eventhandler:libeventhandler", 304 "hilog:libhilog", 305 "ipc:ipc_single", 306 "window_manager:libwm", 307 "window_manager:libwsutils", 308 ] 309} 310