1fa7767c5Sopenharmony_ci# Copyright (c) 2023 Huawei Device Co., Ltd. 2fa7767c5Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3fa7767c5Sopenharmony_ci# you may not use this file except in compliance with the License. 4fa7767c5Sopenharmony_ci# You may obtain a copy of the License at 5fa7767c5Sopenharmony_ci# 6fa7767c5Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7fa7767c5Sopenharmony_ci# 8fa7767c5Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9fa7767c5Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10fa7767c5Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11fa7767c5Sopenharmony_ci# See the License for the specific language governing permissions and 12fa7767c5Sopenharmony_ci# limitations under the License. 13fa7767c5Sopenharmony_ci 14fa7767c5Sopenharmony_ciimport("//build/test.gni") 15fa7767c5Sopenharmony_ciimport("//foundation/multimedia/media_foundation/config.gni") 16fa7767c5Sopenharmony_ci 17fa7767c5Sopenharmony_cimodule_output_path = "media_foundation/unittest" 18fa7767c5Sopenharmony_ci 19fa7767c5Sopenharmony_cigroup("format_unit_test") { 20fa7767c5Sopenharmony_ci testonly = true 21fa7767c5Sopenharmony_ci deps = [ 22fa7767c5Sopenharmony_ci ":format_capi_unit_test", 23fa7767c5Sopenharmony_ci ":format_inner_unit_test", 24fa7767c5Sopenharmony_ci ":format_unit_channel_layout_test", 25fa7767c5Sopenharmony_ci ] 26fa7767c5Sopenharmony_ci} 27fa7767c5Sopenharmony_ci 28fa7767c5Sopenharmony_ciavcodec_unittest_cflags = [ 29fa7767c5Sopenharmony_ci "-std=c++17", 30fa7767c5Sopenharmony_ci "-frtti", 31fa7767c5Sopenharmony_ci "-fexceptions", 32fa7767c5Sopenharmony_ci "-Wall", 33fa7767c5Sopenharmony_ci "-fno-common", 34fa7767c5Sopenharmony_ci "-fstack-protector-strong", 35fa7767c5Sopenharmony_ci "-Wshadow", 36fa7767c5Sopenharmony_ci "-FPIC", 37fa7767c5Sopenharmony_ci "-FS", 38fa7767c5Sopenharmony_ci "-O2", 39fa7767c5Sopenharmony_ci "-D_FORTIFY_SOURCE=2", 40fa7767c5Sopenharmony_ci "-fvisibility=hidden", 41fa7767c5Sopenharmony_ci "-Wformat=2", 42fa7767c5Sopenharmony_ci "-Wdate-time", 43fa7767c5Sopenharmony_ci "-Werror", 44fa7767c5Sopenharmony_ci "-Wextra", 45fa7767c5Sopenharmony_ci "-Wimplicit-fallthrough", 46fa7767c5Sopenharmony_ci "-Wsign-compare", 47fa7767c5Sopenharmony_ci "-Wunused-parameter", 48fa7767c5Sopenharmony_ci] 49fa7767c5Sopenharmony_ci 50fa7767c5Sopenharmony_ci################################################################################################################## 51fa7767c5Sopenharmony_ciohos_unittest("format_capi_unit_test") { 52fa7767c5Sopenharmony_ci module_out_path = module_output_path 53fa7767c5Sopenharmony_ci include_dirs = [ 54fa7767c5Sopenharmony_ci "./", 55fa7767c5Sopenharmony_ci "./capi", 56fa7767c5Sopenharmony_ci "$histreamer_root_dir/interface/kits/c", 57fa7767c5Sopenharmony_ci ] 58fa7767c5Sopenharmony_ci 59fa7767c5Sopenharmony_ci cflags = avcodec_unittest_cflags 60fa7767c5Sopenharmony_ci 61fa7767c5Sopenharmony_ci sources = [ "./avformat_unit_test.cpp" ] 62fa7767c5Sopenharmony_ci 63fa7767c5Sopenharmony_ci defines = [ 64fa7767c5Sopenharmony_ci "HST_ANY_WITH_NO_RTTI", 65fa7767c5Sopenharmony_ci "MEDIA_OHOS", 66fa7767c5Sopenharmony_ci "AVFORMAT_CAPI_UNIT_TEST", 67fa7767c5Sopenharmony_ci ] 68fa7767c5Sopenharmony_ci 69fa7767c5Sopenharmony_ci public_deps = [ "../common:media_foundation_capi_unit_test" ] 70fa7767c5Sopenharmony_ci} 71fa7767c5Sopenharmony_ci 72fa7767c5Sopenharmony_ci################################################################################################################## 73fa7767c5Sopenharmony_ciohos_unittest("format_inner_unit_test") { 74fa7767c5Sopenharmony_ci module_out_path = module_output_path 75fa7767c5Sopenharmony_ci include_dirs = [ 76fa7767c5Sopenharmony_ci "./", 77fa7767c5Sopenharmony_ci "./inner", 78fa7767c5Sopenharmony_ci "$histreamer_root_dir/interface/inner_api/buffer", 79fa7767c5Sopenharmony_ci ] 80fa7767c5Sopenharmony_ci 81fa7767c5Sopenharmony_ci cflags = avcodec_unittest_cflags 82fa7767c5Sopenharmony_ci 83fa7767c5Sopenharmony_ci sources = [ "./avformat_unit_test.cpp" ] 84fa7767c5Sopenharmony_ci 85fa7767c5Sopenharmony_ci defines = [ 86fa7767c5Sopenharmony_ci "HST_ANY_WITH_NO_RTTI", 87fa7767c5Sopenharmony_ci "MEDIA_OHOS", 88fa7767c5Sopenharmony_ci ] 89fa7767c5Sopenharmony_ci public_deps = [ "../common:media_foundation_inner_unit_test" ] 90fa7767c5Sopenharmony_ci} 91fa7767c5Sopenharmony_ci 92fa7767c5Sopenharmony_ci################################################################################################################## 93fa7767c5Sopenharmony_ciohos_unittest("format_unit_channel_layout_test") { 94fa7767c5Sopenharmony_ci module_out_path = module_output_path 95fa7767c5Sopenharmony_ci include_dirs = [ 96fa7767c5Sopenharmony_ci "./", 97fa7767c5Sopenharmony_ci "./capi", 98fa7767c5Sopenharmony_ci "$histreamer_root_dir/interface/inner_api/buffer", 99fa7767c5Sopenharmony_ci ] 100fa7767c5Sopenharmony_ci 101fa7767c5Sopenharmony_ci cflags = avcodec_unittest_cflags 102fa7767c5Sopenharmony_ci 103fa7767c5Sopenharmony_ci sources = [ "./avformat_unit_channel_layout_test.cpp" ] 104fa7767c5Sopenharmony_ci 105fa7767c5Sopenharmony_ci defines = [ 106fa7767c5Sopenharmony_ci "HST_ANY_WITH_NO_RTTI", 107fa7767c5Sopenharmony_ci "MEDIA_OHOS", 108fa7767c5Sopenharmony_ci ] 109fa7767c5Sopenharmony_ci public_deps = [ "../common:media_foundation_inner_unit_test" ] 110fa7767c5Sopenharmony_ci} 111