1fa7767c5Sopenharmony_ci# Copyright (C) 2024 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("avbuffer_queue_unit_test") {
20fa7767c5Sopenharmony_ci  testonly = true
21fa7767c5Sopenharmony_ci  deps = [ ":avbuffer_queue_inner_unit_test" ]
22fa7767c5Sopenharmony_ci}
23fa7767c5Sopenharmony_ci
24fa7767c5Sopenharmony_ci#################################################################################################################osal
25fa7767c5Sopenharmony_ciavbuffer_queue_unittest_cflags = [
26fa7767c5Sopenharmony_ci  "-std=c++17",
27fa7767c5Sopenharmony_ci  "-fno-rtti",
28fa7767c5Sopenharmony_ci  "-fexceptions",
29fa7767c5Sopenharmony_ci  "-Wall",
30fa7767c5Sopenharmony_ci  "-fno-common",
31fa7767c5Sopenharmony_ci  "-fstack-protector-strong",
32fa7767c5Sopenharmony_ci  "-Wshadow",
33fa7767c5Sopenharmony_ci  "-FPIC",
34fa7767c5Sopenharmony_ci  "-FS",
35fa7767c5Sopenharmony_ci  "-O2",
36fa7767c5Sopenharmony_ci  "-D_FORTIFY_SOURCE=2",
37fa7767c5Sopenharmony_ci  "-fvisibility=hidden",
38fa7767c5Sopenharmony_ci  "-Wformat=2",
39fa7767c5Sopenharmony_ci  "-Wdate-time",
40fa7767c5Sopenharmony_ci  "-Wextra",
41fa7767c5Sopenharmony_ci  "-Wimplicit-fallthrough",
42fa7767c5Sopenharmony_ci  "-Wsign-compare",
43fa7767c5Sopenharmony_ci  "-Dprivate=public",
44fa7767c5Sopenharmony_ci  "-Dprotected=public",
45fa7767c5Sopenharmony_ci]
46fa7767c5Sopenharmony_ci
47fa7767c5Sopenharmony_ciohos_unittest("avbuffer_queue_inner_unit_test") {
48fa7767c5Sopenharmony_ci  module_out_path = module_output_path
49fa7767c5Sopenharmony_ci
50fa7767c5Sopenharmony_ci  sanitize = {
51fa7767c5Sopenharmony_ci    cfi = true
52fa7767c5Sopenharmony_ci    cfi_cross_dso = true
53fa7767c5Sopenharmony_ci    debug = false
54fa7767c5Sopenharmony_ci  }
55fa7767c5Sopenharmony_ci
56fa7767c5Sopenharmony_ci  include_dirs = [
57fa7767c5Sopenharmony_ci    "./",
58fa7767c5Sopenharmony_ci    "../../../src/buffer/avbuffer_queue/include/",
59fa7767c5Sopenharmony_ci    "../../../interface/innerapi/",
60fa7767c5Sopenharmony_ci  ]
61fa7767c5Sopenharmony_ci
62fa7767c5Sopenharmony_ci  sources = [ "./avbuffer_queue_func_unit_test.cpp" ]
63fa7767c5Sopenharmony_ci
64fa7767c5Sopenharmony_ci  cflags = avbuffer_queue_unittest_cflags
65fa7767c5Sopenharmony_ci
66fa7767c5Sopenharmony_ci  deps = [
67fa7767c5Sopenharmony_ci    "$histreamer_root_dir/src:media_foundation",
68fa7767c5Sopenharmony_ci    "../common:media_foundation_inner_unit_test",
69fa7767c5Sopenharmony_ci  ]
70fa7767c5Sopenharmony_ci
71fa7767c5Sopenharmony_ci  external_deps = [
72fa7767c5Sopenharmony_ci    "c_utils:utils",
73fa7767c5Sopenharmony_ci    "graphic_surface:surface",
74fa7767c5Sopenharmony_ci    "graphic_surface:sync_fence",
75fa7767c5Sopenharmony_ci    "hilog:libhilog",
76fa7767c5Sopenharmony_ci    "ipc:ipc_core",
77fa7767c5Sopenharmony_ci    "memory_utils:libdmabufheap",
78fa7767c5Sopenharmony_ci  ]
79fa7767c5Sopenharmony_ci}
80