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/player_framework/config.gni") 16 17module_output_path = "player_framework/player_framework/transcode" 18 19config("transcode_unit_test_config") { 20 visibility = [ ":*" ] 21 22 cflags = [ 23 "-O2", 24 "-fPIC", 25 "-Wall", 26 "-fexceptions", 27 "-fno-rtti", 28 "-Wno-unused-but-set-variable", 29 "-Wno-format", 30 "-Dprivate=public", 31 "-Dprotected=public", 32 ] 33 cflags_cc = cflags 34 include_dirs = [ 35 "./", 36 "$MEDIA_PLAYER_ROOT_DIR/interfaces/inner_api/native", 37 "$MEDIA_PLAYER_ROOT_DIR/services/engine/histreamer/transcoder", 38 "$MEDIA_PLAYER_ROOT_DIR/services/engine/histreamer/utils", 39 "$MEDIA_PLAYER_ROOT_DIR/services/services/engine_intf", 40 "$MEDIA_PLAYER_ROOT_DIR/services/utils/include", 41 ] 42 defines = [] 43 44 if (target_cpu == "arm64" || is_emulator) { 45 dragging_player_path = "\"/system/lib64\"" 46 } else { 47 dragging_player_path = "\"/system/lib\"" 48 } 49 50 defines += [ "DRAGGING_PLAYER_PATH=${dragging_player_path}" ] 51 52 defines += player_framework_defines 53} 54 55ohos_unittest("hitranscode_unit_test") { 56 module_out_path = module_output_path 57 stack_protector_ret = true 58 59 sources = [ 60 "$MEDIA_PLAYER_ROOT_DIR/services/engine/histreamer/transcoder/hitranscoder_callback_looper.cpp", 61 "$MEDIA_PLAYER_ROOT_DIR/services/engine/histreamer/transcoder/hitranscoder_impl.cpp", 62 "$MEDIA_PLAYER_ROOT_DIR/services/utils/media_dfx.cpp", 63 "$MEDIA_PLAYER_ROOT_DIR/services/utils/media_utils.cpp", 64 "hitranscode_unit_test.cpp", 65 "transcoder_callback_unit_test.cpp", 66 ] 67 68 configs = [ 69 ":transcode_unit_test_config", 70 "$MEDIA_PLAYER_ROOT_DIR/services/dfx:media_service_log_dfx_public_config", 71 "$MEDIA_PLAYER_ROOT_DIR/services/utils:media_service_utils_public_config", 72 ] 73 74 sanitize = { 75 integer_overflow = true 76 ubsan = true 77 boundary_sanitize = true 78 cfi = true 79 cfi_cross_dso = true 80 debug = false 81 } 82 83 external_deps = [ 84 "access_token:libaccesstoken_sdk", 85 "access_token:libprivacy_sdk", 86 "audio_framework:audio_client", 87 "audio_framework:audio_renderer", 88 "av_codec:av_codec_client", 89 "av_codec:av_codec_media_engine_filters", 90 "av_codec:av_codec_media_engine_modules", 91 "bundle_framework:appexecfwk_base", 92 "bundle_framework:appexecfwk_core", 93 "c_utils:utils", 94 "googletest:gmock_main", 95 "graphic_surface:surface", 96 "graphic_surface:sync_fence", 97 "hicollie:libhicollie", 98 "hilog:libhilog", 99 "hisysevent:libhisysevent", 100 "hitrace:hitrace_meter", 101 "hitrace:libhitracechain", 102 "init:libbegetutil", 103 "ipc:ipc_single", 104 "libxml2:libxml2", 105 "media_foundation:media_foundation", 106 "os_account:os_account_innerkits", 107 "qos_manager:qos", 108 "safwk:system_ability_fwk", 109 "samgr:samgr_proxy", 110 ] 111 112 if (player_framework_support_drm) { 113 external_deps += [ "drm_framework:drm_framework" ] 114 } 115 116 deps = [ 117 "$MEDIA_PLAYER_ROOT_DIR/services/dfx:media_service_log_dfx", 118 "$MEDIA_PLAYER_ROOT_DIR/services/engine/histreamer/transcoder:media_engine_histreamer_transcoder", 119 "$MEDIA_PLAYER_ROOT_DIR/services/utils:media_service_utils", 120 ] 121 122 deps = [] 123} 124