15c735df2Sopenharmony_ci# Copyright (C) 2022 Huawei Device Co., Ltd.
25c735df2Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
35c735df2Sopenharmony_ci# you may not use this file except in compliance with the License.
45c735df2Sopenharmony_ci# You may obtain a copy of the License at
55c735df2Sopenharmony_ci#
65c735df2Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
75c735df2Sopenharmony_ci#
85c735df2Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
95c735df2Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
105c735df2Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
115c735df2Sopenharmony_ci# See the License for the specific language governing permissions and
125c735df2Sopenharmony_ci# limitations under the License.
135c735df2Sopenharmony_ci
145c735df2Sopenharmony_ciimport("//base/location/config.gni")
155c735df2Sopenharmony_ciimport("//build/test.gni")
165c735df2Sopenharmony_ci
175c735df2Sopenharmony_cimodule_output_path = "location/service"
185c735df2Sopenharmony_ciif (location_feature_with_geocode) {
195c735df2Sopenharmony_ci  ohos_unittest("GeocodeServiceAbilityTest") {
205c735df2Sopenharmony_ci    module_out_path = module_output_path
215c735df2Sopenharmony_ci    sources = [ "$LOCATION_ROOT_DIR/test/location_geocode/source/geo_convert_service_test.cpp" ]
225c735df2Sopenharmony_ci
235c735df2Sopenharmony_ci    include_dirs = [
245c735df2Sopenharmony_ci      "$LOCATION_ROOT_DIR/interfaces/inner_api/include",
255c735df2Sopenharmony_ci      "$LOCATION_ROOT_DIR/test/location_geocode/include",
265c735df2Sopenharmony_ci      "$LOCATION_ROOT_DIR/test/location_geocode/mock/include",
275c735df2Sopenharmony_ci      "$LOCATION_GEOCONVERT_ROOT/include",
285c735df2Sopenharmony_ci      "$LOCATION_LOCATOR_ROOT/include",
295c735df2Sopenharmony_ci    ]
305c735df2Sopenharmony_ci
315c735df2Sopenharmony_ci    deps = [
325c735df2Sopenharmony_ci      "$ARKUI_ROOT_DIR/napi:ace_napi",
335c735df2Sopenharmony_ci      "$GOOGLE_TEST_DIR:gmock_main",
345c735df2Sopenharmony_ci      "$GOOGLE_TEST_DIR:gtest_main",
355c735df2Sopenharmony_ci      "$IPC_ROOT_DIR/interfaces/innerkits/ipc_core:ipc_core",
365c735df2Sopenharmony_ci      "$LOCATION_GEOCONVERT_ROOT:lbsservice_geocode_static",
375c735df2Sopenharmony_ci      "$LOCATION_LOCATOR_ROOT:lbsservice_locator_static",
385c735df2Sopenharmony_ci      "$LOCATION_ROOT_DIR/frameworks/js/napi:geolocation_static",
395c735df2Sopenharmony_ci      "$LOCATION_ROOT_DIR/frameworks/location_common/common:lbsservice_common_static",
405c735df2Sopenharmony_ci      "$SAMGR_ROOT_DIR/safwk/interfaces/innerkits/safwk:system_ability_fwk",
415c735df2Sopenharmony_ci      "$SAMGR_ROOT_DIR/samgr/interfaces/innerkits/samgr_proxy:samgr_proxy",
425c735df2Sopenharmony_ci      "$START_UP_ROOT_DIR/init/interfaces/innerkits:libbegetutil",
435c735df2Sopenharmony_ci    ]
445c735df2Sopenharmony_ci
455c735df2Sopenharmony_ci    sanitize = {
465c735df2Sopenharmony_ci      cfi = true
475c735df2Sopenharmony_ci      cfi_cross_dso = true
485c735df2Sopenharmony_ci      debug = false
495c735df2Sopenharmony_ci      blocklist = "./../../cfi_blocklist.txt"
505c735df2Sopenharmony_ci    }
515c735df2Sopenharmony_ci    branch_protector_ret = "pac_ret"
525c735df2Sopenharmony_ci
535c735df2Sopenharmony_ci    external_deps = [
545c735df2Sopenharmony_ci      "access_token:libaccesstoken_sdk",
555c735df2Sopenharmony_ci      "access_token:libnativetoken",
565c735df2Sopenharmony_ci      "access_token:libtoken_setproc",
575c735df2Sopenharmony_ci      "c_utils:utils",
585c735df2Sopenharmony_ci      "common_event_service:cesfwk_innerkits",
595c735df2Sopenharmony_ci      "ffrt:libffrt",
605c735df2Sopenharmony_ci      "hilog:libhilog",
615c735df2Sopenharmony_ci      "hisysevent:libhisysevent",
625c735df2Sopenharmony_ci      "init:libbegetutil",
635c735df2Sopenharmony_ci      "ipc:ipc_core",
645c735df2Sopenharmony_ci      "safwk:system_ability_fwk",
655c735df2Sopenharmony_ci      "samgr:samgr_proxy",
665c735df2Sopenharmony_ci    ]
675c735df2Sopenharmony_ci
685c735df2Sopenharmony_ci    defines = []
695c735df2Sopenharmony_ci    if (location_feature_with_geocode) {
705c735df2Sopenharmony_ci      defines += [ "FEATURE_GEOCODE_SUPPORT" ]
715c735df2Sopenharmony_ci    }
725c735df2Sopenharmony_ci
735c735df2Sopenharmony_ci    module_out_path = module_output_path
745c735df2Sopenharmony_ci  }
755c735df2Sopenharmony_ci} else {
765c735df2Sopenharmony_ci  ohos_unittest("GeocodeServiceAbilityTest") {
775c735df2Sopenharmony_ci    module_out_path = module_output_path
785c735df2Sopenharmony_ci  }
795c735df2Sopenharmony_ci}
805c735df2Sopenharmony_ci
815c735df2Sopenharmony_cigroup("unittest") {
825c735df2Sopenharmony_ci  testonly = true
835c735df2Sopenharmony_ci  deps = []
845c735df2Sopenharmony_ci  deps += [ ":GeocodeServiceAbilityTest" ]
855c735df2Sopenharmony_ci}
86