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("//foundation/multimedia/ringtone_library/ringtone_library.gni")
16
17group("unittest") {
18  testonly = true
19
20  deps = [ ":ringtone_scanner_unittest" ]
21}
22
23ohos_unittest("ringtone_scanner_unittest") {
24  module_out_path = "ringtone_library/ringtonelibraryextention"
25
26  include_dirs = [
27    "./include",
28    "../ringtone_unittest_utils/include",
29    "${RINGTONE_EXTENSION_PATH}/include",
30    "${RINGTONE_SERVICES_PATH}/utils/include",
31    "${RINGTONE_INTERFACES_PATH}/inner_api/native",
32    "${RINGTONE_SCANNER_PATH}/include",
33    "../get_self_permissions/include",
34  ]
35
36  sources = [
37    "../get_self_permissions/src/get_self_permissions.cpp",
38    "../ringtone_unittest_utils/src/ringtone_unittest_utils.cpp",
39    "./src/ringtone_default_settings_test.cpp",
40    "./src/ringtone_metadata_extractor_test.cpp",
41    "./src/ringtone_scanner_db_test.cpp",
42    "./src/ringtone_scanner_test.cpp",
43    "./src/ringtone_scanner_unit_test.cpp",
44    "./src/ringtone_scanner_utils_test.cpp",
45  ]
46
47  deps = [
48    "${RINGTONE_ROOT_PATH}/services:ringtone_data_extension",
49    "${RINGTONE_ROOT_PATH}/services:ringtone_setting",
50  ]
51
52  external_deps = [
53    "ability_base:zuri",
54    "ability_runtime:ability_context_native",
55    "ability_runtime:ability_manager",
56    "ability_runtime:app_context",
57    "ability_runtime:extensionkit_native",
58    "access_token:libaccesstoken_sdk",
59    "access_token:libnativetoken",
60    "access_token:libtoken_setproc",
61    "c_utils:utils",
62    "data_share:datashare_common",
63    "data_share:datashare_provider",
64    "ipc:ipc_single",
65    "napi:ace_napi",
66    "player_framework:media_client",
67    "relational_store:native_rdb",
68    "relational_store:rdb_data_share_adapter",
69  ]
70
71  sanitize = {
72    cfi = true
73    cfi_cross_dso = true
74    debug = false
75  }
76
77  if (is_standard_system) {
78    external_deps += [ "hilog:libhilog" ]
79  } else {
80    external_deps += [ "hilog:libhilog" ]
81  }
82}
83