• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2023 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14import("//build/test.gni")
15import("//foundation/multimedia/av_codec/config.gni")
16
17module_output_path = "av_codec/unittest"
18
19demuxer_unittest_cflags = [
20  "-std=c++17",
21  "-fno-rtti",
22  "-fno-exceptions",
23  "-Wall",
24  "-fno-common",
25  "-fstack-protector-strong",
26  "-Wshadow",
27  "-FPIC",
28  "-FS",
29  "-O2",
30  "-D_FORTIFY_SOURCE=2",
31  "-fvisibility=hidden",
32  "-Wformat=2",
33  "-Wdate-time",
34  "-Werror",
35  "-Wextra",
36  "-Wimplicit-fallthrough",
37  "-Wsign-compare",
38  "-Wunused-parameter",
39]
40
41#################################################################################################################
42ohos_unittest("demuxer_capi_unit_test") {
43  module_out_path = module_output_path
44  include_dirs = [
45    "./",
46    "./capi",
47    "$av_codec_root_dir/interfaces/inner_api/native",
48    "$av_codec_root_dir/interfaces/kits/c",
49    "$av_codec_root_dir/frameworks/native/capi/common",
50    "$av_codec_root_dir/test/unittest/format_test",
51    "$av_codec_root_dir/test/unittest/format_test/capi",
52    "$av_codec_root_dir/test/unittest/avsource_test",
53    "$av_codec_root_dir/test/unittest/avsource_test/capi",
54    "$av_codec_root_dir/test/unittest/common/common_mock",
55    "$av_codec_root_dir/test/unittest/common/common_mock/avmemory",
56    "$av_codec_root_dir/test/unittest/common/common_mock/avmemory/capi",
57    "$av_codec_root_dir/test/nativedemo/include",
58    "$av_codec_root_dir/test/nativedemo/avdemuxer/server_demo",
59    "$av_codec_root_dir/services/utils/include",
60  ]
61
62  cflags = demuxer_unittest_cflags
63
64  if (av_codec_support_demuxer) {
65    sources = [
66      "$av_codec_root_dir/test/nativedemo/avdemuxer/server_demo/file_server_demo.cpp",
67      "$av_codec_root_dir/test/unittest/avsource_test/capi/avsource_capi_mock.cpp",
68      "$av_codec_root_dir/test/unittest/avsource_test/capi/avsource_capi_mock_factory.cpp",
69      "./capi/demuxer_capi_mock.cpp",
70      "./capi/demuxer_capi_mock_factory.cpp",
71      "./demuxer_hevc_unit_test.cpp",
72      "./demuxer_unit_test.cpp",
73      "./demuxer_uri_unit_test.cpp",
74    ]
75  }
76
77  if (target_cpu == "arm64") {
78    av_codec_path = "\"/system/lib64\""
79  } else {
80    av_codec_path = "\"/system/lib\""
81  }
82  defines = [ "AV_CODEC_PATH=${av_codec_path}" ]
83  public_deps =
84      [ "$av_codec_root_dir/test/unittest/common:av_codec_capi_unit_test" ]
85  deps = [
86    "$av_codec_root_dir/interfaces/kits/c:capi_packages",
87    "$av_codec_root_dir/services/utils:av_codec_service_utils",
88  ]
89  external_deps = [
90    "av_codec:av_codec_client",
91    "c_utils:utils",
92    "graphic_surface:surface",
93    "hilog:libhilog",
94  ]
95
96  resource_config_file =
97      "$av_codec_root_dir/test/unittest/resources/ohos_test.xml"
98}
99
100#################################################################################################################muxer
101ohos_unittest("demuxer_inner_unit_test") {
102  module_out_path = module_output_path
103  include_dirs = [
104    "./",
105    "./inner",
106    "$av_codec_root_dir/interfaces/inner_api/inner",
107    "$av_codec_root_dir/interfaces/inner_api/native",
108    "$av_codec_root_dir/interfaces/kits/c",
109    "$av_codec_root_dir/test/unittest/format_test",
110    "$av_codec_root_dir/test/unittest/format_test/inner",
111    "$av_codec_root_dir/test/unittest/avsource_test",
112    "$av_codec_root_dir/test/unittest/avsource_test/inner",
113    "$av_codec_root_dir/test/unittest/common/common_mock",
114    "$av_codec_root_dir/test/unittest/common/common_mock/avmemory",
115    "$av_codec_root_dir/test/unittest/common/common_mock/avmemory/inner",
116    "$av_codec_root_dir/test/nativedemo/include",
117    "$av_codec_root_dir/test/nativedemo/avdemuxer/server_demo",
118    "$av_codec_root_dir/services/utils/include",
119  ]
120
121  cflags = demuxer_unittest_cflags
122
123  if (av_codec_support_demuxer) {
124    sources = [
125      "$av_codec_root_dir/test/nativedemo/avdemuxer/server_demo/file_server_demo.cpp",
126      "$av_codec_root_dir/test/unittest/avsource_test/inner/avsource_inner_mock.cpp",
127      "$av_codec_root_dir/test/unittest/avsource_test/inner/avsource_inner_mock_factory.cpp",
128      "./demuxer_hevc_unit_test.cpp",
129      "./demuxer_unit_test.cpp",
130      "./demuxer_uri_unit_test.cpp",
131      "./inner/demuxer_inner_mock.cpp",
132      "./inner/demuxer_inner_mock_factory.cpp",
133    ]
134  }
135
136  if (target_cpu == "arm64") {
137    av_codec_path = "\"/system/lib64\""
138  } else {
139    av_codec_path = "\"/system/lib\""
140  }
141  defines = [ "AV_CODEC_PATH=${av_codec_path}" ]
142  public_deps =
143      [ "$av_codec_root_dir/test/unittest/common:av_codec_inner_unit_test" ]
144  deps = [ "$av_codec_root_dir/services/utils:av_codec_service_utils" ]
145  external_deps = [
146    "av_codec:av_codec_client",
147    "c_utils:utils",
148    "graphic_surface:surface",
149    "hilog:libhilog",
150  ]
151
152  resource_config_file =
153      "$av_codec_root_dir/test/unittest/resources/ohos_test.xml"
154}
155
156#################################################################################################################
157ohos_unittest("demuxer_capi_buffer_unit_test") {
158  module_out_path = module_output_path
159  include_dirs = [
160    "./",
161    "./capi",
162    "$av_codec_root_dir/interfaces/inner_api/native",
163    "$av_codec_root_dir/interfaces/kits/c",
164    "$av_codec_root_dir/frameworks/native/capi/common",
165    "$av_codec_root_dir/test/unittest/format_test",
166    "$av_codec_root_dir/test/unittest/format_test/capi",
167    "$av_codec_root_dir/test/unittest/avsource_test",
168    "$av_codec_root_dir/test/unittest/avsource_test/capi",
169    "$av_codec_root_dir/test/unittest/common/common_mock",
170    "$av_codec_root_dir/test/unittest/common/common_mock/avmemory",
171    "$av_codec_root_dir/test/unittest/common/common_mock/avmemory/capi",
172    "$av_codec_root_dir/test/nativedemo/include",
173    "$av_codec_root_dir/test/nativedemo/avdemuxer/server_demo",
174    "$av_codec_root_dir/services/utils/include",
175  ]
176
177  cflags = demuxer_unittest_cflags
178
179  if (av_codec_support_demuxer) {
180    sources = [
181      "$av_codec_root_dir/test/nativedemo/avdemuxer/server_demo/file_server_demo.cpp",
182      "$av_codec_root_dir/test/unittest/avsource_test/capi/avsource_capi_mock.cpp",
183      "$av_codec_root_dir/test/unittest/avsource_test/capi/avsource_capi_mock_factory.cpp",
184      "./capi/demuxer_capi_buffer_mock.cpp",
185      "./capi/demuxer_capi_mock_factory.cpp",
186      "./demuxer_hevc_unit_test.cpp",
187      "./demuxer_unit_test.cpp",
188      "./demuxer_uri_unit_test.cpp",
189    ]
190  }
191
192  if (target_cpu == "arm64") {
193    av_codec_path = "\"/system/lib64\""
194  } else {
195    av_codec_path = "\"/system/lib\""
196  }
197  defines = [ "AV_CODEC_PATH=${av_codec_path}" ]
198  public_deps =
199      [ "$av_codec_root_dir/test/unittest/common:av_codec_capi_unit_test" ]
200  deps = [
201    "$av_codec_root_dir/interfaces/kits/c:capi_packages",
202    "$av_codec_root_dir/services/utils:av_codec_service_utils",
203  ]
204  external_deps = [
205    "av_codec:av_codec_client",
206    "c_utils:utils",
207    "graphic_surface:surface",
208    "hilog:libhilog",
209  ]
210
211  resource_config_file =
212      "$av_codec_root_dir/test/unittest/resources/ohos_test.xml"
213}
214
215#################################################################################################################muxer
216ohos_unittest("demuxer_inner_buffer_unit_test") {
217  module_out_path = module_output_path
218  include_dirs = [
219    "./",
220    "./inner",
221    "$av_codec_root_dir/interfaces/inner_api/inner",
222    "$av_codec_root_dir/interfaces/inner_api/native",
223    "$av_codec_root_dir/interfaces/kits/c",
224    "$av_codec_root_dir/test/unittest/format_test",
225    "$av_codec_root_dir/test/unittest/format_test/inner",
226    "$av_codec_root_dir/test/unittest/avsource_test",
227    "$av_codec_root_dir/test/unittest/avsource_test/inner",
228    "$av_codec_root_dir/test/unittest/common/common_mock",
229    "$av_codec_root_dir/test/unittest/common/common_mock/avmemory",
230    "$av_codec_root_dir/test/unittest/common/common_mock/avmemory/inner",
231    "$av_codec_root_dir/test/nativedemo/include",
232    "$av_codec_root_dir/test/nativedemo/avdemuxer/server_demo",
233    "$av_codec_root_dir/services/utils/include",
234  ]
235
236  cflags = demuxer_unittest_cflags
237
238  if (av_codec_support_demuxer) {
239    sources = [
240      "$av_codec_root_dir/test/nativedemo/avdemuxer/server_demo/file_server_demo.cpp",
241      "$av_codec_root_dir/test/unittest/avsource_test/inner/avsource_inner_mock.cpp",
242      "$av_codec_root_dir/test/unittest/avsource_test/inner/avsource_inner_mock_factory.cpp",
243      "./demuxer_hevc_unit_test.cpp",
244      "./demuxer_unit_test.cpp",
245      "./demuxer_uri_unit_test.cpp",
246      "./inner/demuxer_inner_buffer_mock.cpp",
247      "./inner/demuxer_inner_mock_factory.cpp",
248    ]
249  }
250
251  if (target_cpu == "arm64") {
252    av_codec_path = "\"/system/lib64\""
253  } else {
254    av_codec_path = "\"/system/lib\""
255  }
256  defines = [ "AV_CODEC_PATH=${av_codec_path}" ]
257  public_deps =
258      [ "$av_codec_root_dir/test/unittest/common:av_codec_inner_unit_test" ]
259  deps = [ "$av_codec_root_dir/services/utils:av_codec_service_utils" ]
260  external_deps = [
261    "av_codec:av_codec_client",
262    "c_utils:utils",
263    "graphic_surface:surface",
264    "hilog:libhilog",
265  ]
266
267  resource_config_file =
268      "$av_codec_root_dir/test/unittest/resources/ohos_test.xml"
269}
270