1da853ecaSopenharmony_ci# Copyright (C) 2024 Huawei Device Co., Ltd. 2da853ecaSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3da853ecaSopenharmony_ci# you may not use this file except in compliance with the License. 4da853ecaSopenharmony_ci# You may obtain a copy of the License at 5da853ecaSopenharmony_ci# 6da853ecaSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7da853ecaSopenharmony_ci# 8da853ecaSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9da853ecaSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10da853ecaSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11da853ecaSopenharmony_ci# See the License for the specific language governing permissions and 12da853ecaSopenharmony_ci# limitations under the License. 13da853ecaSopenharmony_ciimport("//build/test.gni") 14da853ecaSopenharmony_ciimport("//foundation/multimedia/av_codec/config.gni") 15da853ecaSopenharmony_ci 16da853ecaSopenharmony_cimodule_output_path = "av_codec/unittest" 17da853ecaSopenharmony_ci 18da853ecaSopenharmony_ciav_codec_unittest_include_dirs = [ 19da853ecaSopenharmony_ci "$av_codec_root_dir/interfaces/inner_api/native", 20da853ecaSopenharmony_ci "$av_codec_root_dir/interfaces/interfaces/inner_api/native", 21da853ecaSopenharmony_ci] 22da853ecaSopenharmony_ci 23da853ecaSopenharmony_ciav_codec_unittest_cflags = [ 24da853ecaSopenharmony_ci "-std=c++17", 25da853ecaSopenharmony_ci "-fno-rtti", 26da853ecaSopenharmony_ci "-fno-exceptions", 27da853ecaSopenharmony_ci "-Wall", 28da853ecaSopenharmony_ci "-fno-common", 29da853ecaSopenharmony_ci "-fstack-protector-strong", 30da853ecaSopenharmony_ci "-Wshadow", 31da853ecaSopenharmony_ci "-FPIC", 32da853ecaSopenharmony_ci "-FS", 33da853ecaSopenharmony_ci "-O2", 34da853ecaSopenharmony_ci "-D_FORTIFY_SOURCE=2", 35da853ecaSopenharmony_ci "-fvisibility=hidden", 36da853ecaSopenharmony_ci "-Wformat=2", 37da853ecaSopenharmony_ci "-Wdate-time", 38da853ecaSopenharmony_ci "-Werror", 39da853ecaSopenharmony_ci "-Wextra", 40da853ecaSopenharmony_ci "-Wimplicit-fallthrough", 41da853ecaSopenharmony_ci "-Wsign-compare", 42da853ecaSopenharmony_ci "-Wunused-parameter", 43da853ecaSopenharmony_ci] 44da853ecaSopenharmony_ci 45da853ecaSopenharmony_ci################################################################################################################## 46da853ecaSopenharmony_ciohos_unittest("audio_vivid_capi_unit_test") { 47da853ecaSopenharmony_ci sanitize = av_codec_test_sanitize 48da853ecaSopenharmony_ci module_out_path = module_output_path 49da853ecaSopenharmony_ci include_dirs = av_codec_unittest_include_dirs 50da853ecaSopenharmony_ci include_dirs += [ 51da853ecaSopenharmony_ci "./", 52da853ecaSopenharmony_ci "//third_party/ffmpeg", 53da853ecaSopenharmony_ci "$av_codec_root_dir/interfaces/kits/c", 54da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/common/include", 55da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/base/include", 56da853ecaSopenharmony_ci "$av_codec_root_dir/services/utils/include", 57da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/codec/include/audio", 58da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/factory", 59da853ecaSopenharmony_ci ] 60da853ecaSopenharmony_ci 61da853ecaSopenharmony_ci cflags = av_codec_unittest_cflags 62da853ecaSopenharmony_ci 63da853ecaSopenharmony_ci cflags_cc = cflags 64da853ecaSopenharmony_ci 65da853ecaSopenharmony_ci public_configs = [] 66da853ecaSopenharmony_ci 67da853ecaSopenharmony_ci if (av_codec_support_test) { 68da853ecaSopenharmony_ci sources = [ "./audio_decoder_capi_avbuffer_vivid_unit_test.cpp" ] 69da853ecaSopenharmony_ci } 70da853ecaSopenharmony_ci 71da853ecaSopenharmony_ci deps = [ 72da853ecaSopenharmony_ci "$av_codec_root_dir/interfaces/inner_api/native:av_codec_client", 73da853ecaSopenharmony_ci "$av_codec_root_dir/interfaces/kits/c:capi_packages", 74da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/codec/audio:av_codec_audio_ffmpeg_codec", 75da853ecaSopenharmony_ci "$av_codec_root_dir/services/services:av_codec_service", 76da853ecaSopenharmony_ci "$av_codec_root_dir/services/utils:av_codec_service_utils", 77da853ecaSopenharmony_ci ] 78da853ecaSopenharmony_ci 79da853ecaSopenharmony_ci external_deps = [ 80da853ecaSopenharmony_ci "graphic_surface:surface", 81da853ecaSopenharmony_ci "media_foundation:native_media_core", 82da853ecaSopenharmony_ci ] 83da853ecaSopenharmony_ci 84da853ecaSopenharmony_ci resource_config_file = 85da853ecaSopenharmony_ci "$av_codec_root_dir/test/unittest/resources/ohos_test.xml" 86da853ecaSopenharmony_ci} 87da853ecaSopenharmony_ci 88da853ecaSopenharmony_ci################################################################################################################## 89da853ecaSopenharmony_ciohos_unittest("audio_vivid_inner_unit_test") { 90da853ecaSopenharmony_ci sanitize = av_codec_test_sanitize 91da853ecaSopenharmony_ci module_out_path = module_output_path 92da853ecaSopenharmony_ci include_dirs = av_codec_unittest_include_dirs 93da853ecaSopenharmony_ci include_dirs += [ 94da853ecaSopenharmony_ci "./", 95da853ecaSopenharmony_ci "//third_party/ffmpeg", 96da853ecaSopenharmony_ci "$av_codec_root_dir/interfaces/kits/c", 97da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/common/include", 98da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/base/include", 99da853ecaSopenharmony_ci "$av_codec_root_dir/services/utils/include", 100da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/codec/include/audio", 101da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/factory", 102da853ecaSopenharmony_ci ] 103da853ecaSopenharmony_ci 104da853ecaSopenharmony_ci cflags = av_codec_unittest_cflags 105da853ecaSopenharmony_ci 106da853ecaSopenharmony_ci cflags_cc = cflags 107da853ecaSopenharmony_ci 108da853ecaSopenharmony_ci public_configs = [] 109da853ecaSopenharmony_ci 110da853ecaSopenharmony_ci if (av_codec_support_test) { 111da853ecaSopenharmony_ci sources = [ "./audio_decoder_avbuffer_vivid_inner_unit_test.cpp" ] 112da853ecaSopenharmony_ci } 113da853ecaSopenharmony_ci 114da853ecaSopenharmony_ci deps = [ 115da853ecaSopenharmony_ci "$av_codec_root_dir/interfaces/inner_api/native:av_codec_client", 116da853ecaSopenharmony_ci "$av_codec_root_dir/interfaces/kits/c:capi_packages", 117da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/codec/audio:av_codec_audio_ffmpeg_codec", 118da853ecaSopenharmony_ci "$av_codec_root_dir/services/services:av_codec_service", 119da853ecaSopenharmony_ci "$av_codec_root_dir/services/utils:av_codec_service_utils", 120da853ecaSopenharmony_ci ] 121da853ecaSopenharmony_ci 122da853ecaSopenharmony_ci external_deps = [ 123da853ecaSopenharmony_ci "graphic_surface:surface", 124da853ecaSopenharmony_ci "media_foundation:native_media_core", 125da853ecaSopenharmony_ci ] 126da853ecaSopenharmony_ci 127da853ecaSopenharmony_ci resource_config_file = 128da853ecaSopenharmony_ci "$av_codec_root_dir/test/unittest/resources/ohos_test.xml" 129da853ecaSopenharmony_ci} 130da853ecaSopenharmony_ci 131da853ecaSopenharmony_ci################################################################################################################## 132da853ecaSopenharmony_ciohos_unittest("audio_vivid_ability_unit_test") { 133da853ecaSopenharmony_ci sanitize = av_codec_test_sanitize 134da853ecaSopenharmony_ci module_out_path = module_output_path 135da853ecaSopenharmony_ci include_dirs = av_codec_unittest_include_dirs 136da853ecaSopenharmony_ci include_dirs += [ 137da853ecaSopenharmony_ci "./", 138da853ecaSopenharmony_ci "//third_party/ffmpeg", 139da853ecaSopenharmony_ci "$av_codec_root_dir/interfaces/kits/c", 140da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/common/include", 141da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/base/include", 142da853ecaSopenharmony_ci "$av_codec_root_dir/services/utils/include", 143da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/codec/include/audio", 144da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/factory", 145da853ecaSopenharmony_ci ] 146da853ecaSopenharmony_ci 147da853ecaSopenharmony_ci cflags = av_codec_unittest_cflags 148da853ecaSopenharmony_ci 149da853ecaSopenharmony_ci cflags_cc = cflags 150da853ecaSopenharmony_ci 151da853ecaSopenharmony_ci public_configs = [] 152da853ecaSopenharmony_ci 153da853ecaSopenharmony_ci if (av_codec_support_test) { 154da853ecaSopenharmony_ci sources = [ "./audio_decoder_avbuffer_vivid_unit_test.cpp" ] 155da853ecaSopenharmony_ci } 156da853ecaSopenharmony_ci 157da853ecaSopenharmony_ci deps = [ 158da853ecaSopenharmony_ci "$av_codec_root_dir/interfaces/inner_api/native:av_codec_client", 159da853ecaSopenharmony_ci "$av_codec_root_dir/interfaces/kits/c:capi_packages", 160da853ecaSopenharmony_ci "$av_codec_root_dir/services/engine/codec/audio:av_codec_audio_ffmpeg_codec", 161da853ecaSopenharmony_ci "$av_codec_root_dir/services/services:av_codec_service", 162da853ecaSopenharmony_ci "$av_codec_root_dir/services/utils:av_codec_service_utils", 163da853ecaSopenharmony_ci ] 164da853ecaSopenharmony_ci 165da853ecaSopenharmony_ci external_deps = [ 166da853ecaSopenharmony_ci "graphic_surface:surface", 167da853ecaSopenharmony_ci "media_foundation:native_media_core", 168da853ecaSopenharmony_ci ] 169da853ecaSopenharmony_ci 170da853ecaSopenharmony_ci resource_config_file = 171da853ecaSopenharmony_ci "$av_codec_root_dir/test/unittest/resources/ohos_test.xml" 172da853ecaSopenharmony_ci} 173