# Copyright (c) 2023 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import("//build/test.gni") import("//foundation/multimedia/av_codec/config.gni") module_output_path = "av_codec/unittest" avsource_unittest_cflags = [ "-std=c++17", "-fno-rtti", "-fno-exceptions", "-Wall", "-fno-common", "-fstack-protector-strong", "-Wshadow", "-FPIC", "-FS", "-O2", "-D_FORTIFY_SOURCE=2", "-fvisibility=hidden", "-Wformat=2", "-Wdate-time", "-Werror", "-Wextra", "-Wimplicit-fallthrough", "-Wsign-compare", "-Wunused-parameter", ] ################################################################################################################muxer ohos_unittest("avsource_capi_unit_test") { sanitize = av_codec_test_sanitize module_out_path = module_output_path include_dirs = [ "./", "./capi", "$av_codec_root_dir/interfaces/inner_api/native", "$av_codec_root_dir/interfaces/kits/c", "$av_codec_root_dir/test/unittest/format_test", "$av_codec_root_dir/test/unittest/format_test/capi", "$av_codec_root_dir/test/nativedemo/include", "$av_codec_root_dir/test/nativedemo/avdemuxer/server_demo", "//third_party/ffmpeg", ] cflags = avsource_unittest_cflags if (av_codec_support_source) { sources = [ "$av_codec_root_dir/test/nativedemo/avdemuxer/server_demo/file_server_demo.cpp", "./avsource_format_unit_test.cpp", "./avsource_hevc_unit_test.cpp", "./avsource_unit_test.cpp", "./avsource_uri_unit_test.cpp", "./capi/avsource_capi_mock.cpp", "./capi/avsource_capi_mock_factory.cpp", ] } if (target_cpu == "arm64" || is_emulator) { av_codec_path = "\"/system/lib64\"" } else { av_codec_path = "\"/system/lib\"" } defines = [ "AV_CODEC_PATH=${av_codec_path}" ] deps = [ "$av_codec_root_dir/interfaces/kits/c:capi_packages" ] public_deps = [ "$av_codec_root_dir/test/unittest/common:av_codec_capi_unit_test" ] external_deps = [ "av_codec:av_codec_client", "c_utils:utils", "graphic_2d:libgraphic_utils", "graphic_surface:surface", "hilog:libhilog", "media_foundation:media_foundation", "media_foundation:native_media_core", ] resource_config_file = "$av_codec_root_dir/test/unittest/resources/ohos_test.xml" } #################################################################################################################muxer ohos_unittest("avsource_inner_unit_test") { sanitize = av_codec_test_sanitize module_out_path = module_output_path include_dirs = [ "./", "./inner", "$av_codec_root_dir/interfaces/inner_api/native", "$av_codec_root_dir/interfaces/kits/c", "$av_codec_root_dir/test/unittest/format_test", "$av_codec_root_dir/test/unittest/format_test/inner", "$av_codec_root_dir/test/nativedemo/include", "$av_codec_root_dir/test/nativedemo/avdemuxer/server_demo", "//third_party/ffmpeg", ] if (target_cpu == "arm64" || is_emulator) { av_codec_path = "\"/system/lib64\"" } else { av_codec_path = "\"/system/lib\"" } defines = [ "AV_CODEC_PATH=${av_codec_path}", "AVSOURCE_INNER_UNIT_TEST", ] cflags = avsource_unittest_cflags if (av_codec_support_source) { sources = [ "$av_codec_root_dir/test/nativedemo/avdemuxer/server_demo/file_server_demo.cpp", "./avsource_audio_vivid_unit_test.cpp", "./avsource_format_unit_test.cpp", "./avsource_hevc_unit_test.cpp", "./avsource_unit_test.cpp", "./avsource_uri_unit_test.cpp", "./inner/avsource_inner_mock.cpp", "./inner/avsource_inner_mock_factory.cpp", ] } public_deps = [ "$av_codec_root_dir/test/unittest/common:av_codec_inner_unit_test" ] external_deps = [ "av_codec:av_codec_client", "c_utils:utils", "graphic_2d:libgraphic_utils", "graphic_surface:surface", "hilog:libhilog", "media_foundation:media_foundation", ] resource_config_file = "$av_codec_root_dir/test/unittest/resources/ohos_test.xml" }