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("//base/print/print_fwk/print.gni")
15import("//build/test.gni")
16
17module_output_path = "print_fwk/service_test"
18
19ohos_unittest("print_service_test") {
20  module_out_path = module_output_path
21  include_dirs = [
22    "mock",
23    "../fwk_inner_napi_test/mock",
24    "${print_path}/frameworks/innerkitsimpl/print_impl/include",
25    "${print_path}/frameworks/models/print_models/include",
26    "${print_path}/interfaces/kits/napi/print_napi/include",
27    "${print_path}/services/print_service/include",
28    "${print_utils_path}/include",
29    "//third_party/node/src",
30  ]
31
32  sanitize = {
33    cfi = true
34    cfi_cross_dso = true
35    debug = false
36    blocklist = "${print_path}/cfi_blocklist.txt"
37  }
38
39  sources = [
40    "print_bms_death_recipient_test.cpp",
41    "print_cups_attribute_test.cpp",
42    "print_security_guard_info_test.cpp",
43    "print_security_guard_manager_test.cpp",
44    "print_service_converter_test.cpp",
45    "print_service_helper_test.cpp",
46    "print_system_data_test.cpp",
47    "print_user_data_test.cpp",
48  ]
49
50  deps = [
51    "${print_path}/etc/init:printservice.rc",
52    "${print_path}/frameworks/innerkitsimpl/print_impl:print_client",
53    "${print_path}/frameworks/kits/extension:print_extension_framework",
54    "${print_path}/frameworks/kits/extension:print_extension_module",
55    "${print_path}/frameworks/models/print_models:print_models",
56    "${print_path}/interfaces/kits/jsnapi/print_extension:printextensionability_napi",
57    "${print_path}/interfaces/kits/jsnapi/print_extensionctx:printextensioncontext_napi",
58    "${print_path}/interfaces/kits/napi/print_napi:print_napi",
59    "${print_path}/profile:print_sa_profiles",
60    "${print_path}/services/print_service:print_service",
61    "//third_party/googletest:gmock_main",
62    "//third_party/jsoncpp:jsoncpp",
63    "//third_party/zlib:libz",
64  ]
65
66  if (cups_enable) {
67    include_dirs += [ "//third_party/cups/cups-2.4.0" ]
68    cflags_cc = [ "-DCUPS_ENABLE" ]
69    deps += [
70      "//third_party/cups:third_party_cups",
71      "//third_party/cups-filters:third_party_cupsfilters",
72    ]
73  }
74
75  if (ipp_over_usb_enable) {
76    include_dirs += [ "//third_party/cpp-httplib" ]
77    sources += [
78      "print_http_request_process_test.cpp",
79      "print_http_server_manager_test.cpp",
80      "print_ipp_over_usb_manager_test.cpp",
81      "print_usb_manager_test.cpp",
82    ]
83    cflags_cc += [ "-DCPPHTTPLIB_NO_EXCEPTIONS" ]
84    cflags_cc += [ "-DIPPOVERUSB_ENABLE" ]
85  }
86
87  external_deps = [
88    "ability_base:base",
89    "ability_base:want",
90    "ability_base:zuri",
91    "ability_runtime:ability_manager",
92    "ability_runtime:abilitykit_native",
93    "access_token:libaccesstoken_sdk",
94    "access_token:libnativetoken",
95    "access_token:libtoken_setproc",
96    "bundle_framework:appexecfwk_base",
97    "bundle_framework:appexecfwk_core",
98    "c_utils:utils",
99    "drivers_interface_usb:libusb_proxy_1.0",
100    "hilog:libhilog",
101    "ipc:ipc_core",
102    "napi:ace_napi",
103    "safwk:system_ability_fwk",
104    "samgr:samgr_proxy",
105    "usb_manager:usbsrv_client",
106  ]
107}
108
109ohos_unittest("scan_service_test") {
110  module_out_path = module_output_path
111  include_dirs = [
112    "mock",
113    "../fwk_inner_napi_test/mock",
114    "${print_path}/frameworks/innerkitsimpl/scan_impl/include",
115    "${print_path}/interfaces/kits/napi/scan_napi/include",
116    "${print_path}/services/scan_service/include",
117    "${print_utils_path}/include",
118    "//third_party/node/src",
119  ]
120
121  sources = [
122    "scan_callback_proxy_test.cpp",
123    "scan_mdns_service_test.cpp",
124    "scan_service_ability_test.cpp",
125    "scan_service_stub_test.cpp",
126  ]
127
128  deps = [
129    "${print_path}/etc/init:scanservice.rc",
130    "${print_path}/frameworks/innerkitsimpl/scan_impl:scan_client",
131    "${print_path}/interfaces/kits/napi/scan_napi:scan_napi",
132    "${print_path}/profile:scan_sa_profiles",
133    "${print_path}/services/scan_service:scan_service",
134    "//third_party/googletest:gmock_main",
135    "//third_party/jsoncpp:jsoncpp",
136    "//third_party/zlib:libz",
137  ]
138
139  external_deps = [
140    "ability_base:base",
141    "ability_base:want",
142    "ability_base:zuri",
143    "ability_runtime:ability_manager",
144    "ability_runtime:abilitykit_native",
145    "access_token:libaccesstoken_sdk",
146    "bundle_framework:appexecfwk_base",
147    "bundle_framework:appexecfwk_core",
148    "c_utils:utils",
149    "drivers_interface_usb:libusb_proxy_1.0",
150    "hilog:libhilog",
151    "ipc:ipc_core",
152    "napi:ace_napi",
153    "safwk:system_ability_fwk",
154    "samgr:samgr_proxy",
155    "usb_manager:usbsrv_client",
156  ]
157}
158
159group("unittest") {
160  testonly = true
161
162  deps = []
163
164  deps += [ ":print_service_test" ]
165  deps += [ ":scan_service_test" ]
166}
167