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("osal_unit_test") {
20fa7767c5Sopenharmony_ci  testonly = true
21fa7767c5Sopenharmony_ci  deps = [ ":osal_inner_unit_test" ]
22fa7767c5Sopenharmony_ci}
23fa7767c5Sopenharmony_ci
24fa7767c5Sopenharmony_ci#################################################################################################################osal
25fa7767c5Sopenharmony_ciosal_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("osal_inner_unit_test") {
48fa7767c5Sopenharmony_ci  module_out_path = module_output_path
49fa7767c5Sopenharmony_ci  include_dirs = [ "./" ]
50fa7767c5Sopenharmony_ci
51fa7767c5Sopenharmony_ci  defines = [
52fa7767c5Sopenharmony_ci    "HST_ANY_WITH_NO_RTTI",
53fa7767c5Sopenharmony_ci    "MEDIA_OHOS",
54fa7767c5Sopenharmony_ci  ]
55fa7767c5Sopenharmony_ci
56fa7767c5Sopenharmony_ci  sources = [
57fa7767c5Sopenharmony_ci    "./dump_buffer_unit_test.cpp",
58fa7767c5Sopenharmony_ci    "./file_system_unit_test.cpp",
59fa7767c5Sopenharmony_ci    "./task_func_unit_test.cpp",
60fa7767c5Sopenharmony_ci    "./task_inner_unit_test.cpp",
61fa7767c5Sopenharmony_ci  ]
62fa7767c5Sopenharmony_ci
63fa7767c5Sopenharmony_ci  cflags = osal_unittest_cflags
64fa7767c5Sopenharmony_ci
65fa7767c5Sopenharmony_ci  public_deps = [
66fa7767c5Sopenharmony_ci    "$histreamer_root_dir/src:media_foundation",
67fa7767c5Sopenharmony_ci    "../common:media_foundation_inner_unit_test",
68fa7767c5Sopenharmony_ci  ]
69fa7767c5Sopenharmony_ci
70fa7767c5Sopenharmony_ci  external_deps = [
71fa7767c5Sopenharmony_ci    "c_utils:utils",
72fa7767c5Sopenharmony_ci    "graphic_surface:surface",
73fa7767c5Sopenharmony_ci    "graphic_surface:sync_fence",
74fa7767c5Sopenharmony_ci    "hilog:libhilog",
75fa7767c5Sopenharmony_ci    "ipc:ipc_core",
76fa7767c5Sopenharmony_ci    "memory_utils:libdmabufheap",
77fa7767c5Sopenharmony_ci  ]
78fa7767c5Sopenharmony_ci}
79