• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2022 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/player_framework/config.gni")
16
17MEDIA_ROOT_DIR = "//foundation/multimedia/player_framework/"
18module_output_path = "multimedia_player_framework/avcodec"
19
20avcodec_unittest_native_include_dirs = [
21  "//graphic/graphic_2d/interfaces/innerkits/surface",
22  "//foundation//window/window_manager/interfaces/innerkits/wm",
23  "$MEDIA_ROOT_DIR/interfaces/inner_api/native",
24  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/native/audiodecoder/",
25  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/native/audioencoder/",
26  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/native/avcodec_info/",
27  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/native/avcodec_list/",
28  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/native/avformat/",
29  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/native/avmemory/",
30  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/native/enum/",
31  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/native/surface/",
32  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/native/videodecoder/",
33  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/native/videoencoder/",
34  "$MEDIA_ROOT_DIR/test/unittest/common/include/",
35]
36
37avcodec_unittest_capi_include_dirs = [
38  "//graphic/graphic_2d/interfaces/kits/surface",
39  "//graphic/graphic_2d/interfaces/inner_api/surface",
40  "//foundation//window/window_manager/interfaces/innerkits/wm",
41  "$MEDIA_ROOT_DIR/interfaces/kits/c",
42  "$MEDIA_ROOT_DIR/interfaces/inner_api/native",
43  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/capi/audiodecoder/",
44  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/capi/audioencoder/",
45  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/capi/avformat/",
46  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/capi/avmemory/",
47  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/capi/surface/",
48  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/capi/videodecoder/",
49  "$MEDIA_ROOT_DIR/test/unittest/avcodec_test/capi/videoencoder/",
50  "$MEDIA_ROOT_DIR/test/unittest/common/include/",
51]
52
53avcodec_unittest_cflags = [
54  "-std=c++17",
55  "-fno-rtti",
56  "-fno-exceptions",
57  "-Wall",
58  "-fno-common",
59  "-fstack-protector-strong",
60  "-Wshadow",
61  "-FPIC",
62  "-FS",
63  "-O2",
64  "-D_FORTIFY_SOURCE=2",
65  "-fvisibility=hidden",
66  "-Wformat=2",
67  "-Wdate-time",
68  "-Werror",
69  "-Wextra",
70  "-Wimplicit-fallthrough",
71  "-Wsign-compare",
72  "-Wunused-parameter",
73]
74
75##################################################################################################################
76ohos_unittest("vcodec_native_unit_test") {
77  module_out_path = module_output_path
78  include_dirs = avcodec_unittest_native_include_dirs
79  include_dirs += [
80    "./",
81    "./vcodec_test",
82  ]
83
84  cflags = avcodec_unittest_cflags
85
86  if (multimedia_player_framework_support_codec) {
87    sources = [
88      "./native/avcodec_info/avcodec_info_native_mock.cpp",
89      "./native/avcodec_list/avcodec_list_native_mock.cpp",
90      "./native/avcodec_mock_factory.cpp",
91      "./native/avformat/avformat_native_mock.cpp",
92      "./native/avmemory/avmemory_native_mock.cpp",
93      "./native/enum/enum_native_mock.cpp",
94      "./native/surface/surface_native_mock.cpp",
95      "./native/videodecoder/videodec_native_mock.cpp",
96      "./native/videoencoder/videoenc_native_mock.cpp",
97      "./vcodec_test/vcodec_unit_test.cpp",
98      "./vcodec_test/vdec_mock.cpp",
99      "./vcodec_test/venc_mock.cpp",
100    ]
101  }
102
103  deps = [
104    "//foundation/graphic/graphic_2d:libsurface",
105    "//foundation/graphic/graphic_2d/frameworks/surface:surface",
106    "//foundation/graphic/graphic_2d/rosen/modules/render_service_client:librender_service_client",
107    "//foundation/multimedia/player_framework/interfaces/inner_api/native:media_client",
108    "//foundation/window/window_manager/wm:libwm",
109  ]
110
111  resource_config_file = "//foundation/multimedia/player_framework/test/unittest/resources/ohos_test.xml"
112}
113
114##################################################################################################################
115ohos_unittest("acodec_native_unit_test") {
116  module_out_path = module_output_path
117  include_dirs = avcodec_unittest_native_include_dirs
118  include_dirs += [
119    "./",
120    "./acodec_test",
121  ]
122
123  cflags = avcodec_unittest_cflags
124
125  if (multimedia_player_framework_support_codec) {
126    sources = [
127      "./acodec_test/acodec_mock.cpp",
128      "./acodec_test/acodec_unit_test.cpp",
129      "./native/audiodecoder/audiodec_native_mock.cpp",
130      "./native/audioencoder/audioenc_native_mock.cpp",
131      "./native/avcodec_info/avcodec_info_native_mock.cpp",
132      "./native/avcodec_list/avcodec_list_native_mock.cpp",
133      "./native/avcodec_mock_factory.cpp",
134      "./native/avformat/avformat_native_mock.cpp",
135      "./native/avmemory/avmemory_native_mock.cpp",
136      "./native/enum/enum_native_mock.cpp",
137      "./native/surface/surface_native_mock.cpp",
138    ]
139  }
140
141  deps = [
142    "//foundation/graphic/graphic_2d:libsurface",
143    "//foundation/graphic/graphic_2d/frameworks/surface:surface",
144    "//foundation/graphic/graphic_2d/rosen/modules/render_service_client:librender_service_client",
145    "//foundation/multimedia/player_framework/interfaces/inner_api/native:media_client",
146    "//foundation/window/window_manager/wm:libwm",
147  ]
148
149  resource_config_file = "//foundation/multimedia/player_framework/test/unittest/resources/ohos_test.xml"
150}
151
152##################################################################################################################
153ohos_unittest("avcodec_list_native_unit_test") {
154  module_out_path = module_output_path
155  include_dirs = avcodec_unittest_native_include_dirs
156  include_dirs += [
157    "./",
158    "./avcodec_list_test",
159  ]
160
161  cflags = avcodec_unittest_cflags
162
163  if (multimedia_player_framework_support_codec) {
164    sources = [
165      "./avcodec_list_test/avcodec_list_unit_test.cpp",
166      "./native/avcodec_info/avcodec_info_native_mock.cpp",
167      "./native/avcodec_list/avcodec_list_native_mock.cpp",
168      "./native/avcodec_mock_factory.cpp",
169      "./native/avformat/avformat_native_mock.cpp",
170      "./native/enum/enum_native_mock.cpp",
171    ]
172  }
173
174  deps = [
175    "//foundation/graphic/graphic_2d/rosen/modules/render_service_client:librender_service_client",
176    "//foundation/multimedia/player_framework/interfaces/inner_api/native:media_client",
177  ]
178
179  resource_config_file = "//foundation/multimedia/player_framework/test/unittest/resources/ohos_test.xml"
180}
181
182##################################################################################################################
183ohos_unittest("format_native_unit_test") {
184  module_out_path = module_output_path
185  include_dirs = avcodec_unittest_native_include_dirs
186  include_dirs += [
187    "./",
188    "./format_test",
189  ]
190  cflags = avcodec_unittest_cflags
191
192  if (multimedia_player_framework_support_codec) {
193    sources = [
194      "./format_test/format_unit_test.cpp",
195      "./native/avcodec_mock_factory.cpp",
196      "./native/avformat/avformat_native_mock.cpp",
197    ]
198  }
199
200  deps = [
201    "//foundation/graphic/graphic_2d/rosen/modules/render_service_client:librender_service_client",
202    "//foundation/multimedia/player_framework/interfaces/inner_api/native:media_client",
203  ]
204}
205
206##################################################################################################################
207ohos_unittest("vcodec_capi_unit_test") {
208  module_out_path = module_output_path
209  include_dirs = avcodec_unittest_capi_include_dirs
210  include_dirs += [
211    "./",
212    "./vcodec_test",
213    "//foundation/graphic/graphic_2d/frameworks/surface/include",
214    "//foundation/graphic/graphic_2d/interfaces/inner_api/surface",
215    "//foundation/graphic/graphic_2d/interfaces/inner_api/common",
216  ]
217
218  cflags = avcodec_unittest_cflags
219
220  if (multimedia_player_framework_support_codec) {
221    sources = [
222      "./capi/avcodec_mock_factory.cpp",
223      "./capi/avformat/avformat_capi_mock.cpp",
224      "./capi/avmemory/avmemory_capi_mock.cpp",
225      "./capi/surface/surface_capi_mock.cpp",
226      "./capi/videodecoder/videodec_capi_mock.cpp",
227      "./capi/videoencoder/videoenc_capi_mock.cpp",
228      "./vcodec_test/vcodec_unit_test.cpp",
229      "./vcodec_test/vdec_mock.cpp",
230      "./vcodec_test/venc_mock.cpp",
231    ]
232  }
233
234  deps = [
235    "//foundation/graphic/graphic_2d:libsurface",
236    "//foundation/graphic/graphic_2d/frameworks/surface:surface",
237    "//foundation/graphic/graphic_2d/rosen/modules/render_service_client:librender_service_client",
238    "//foundation/multimedia/player_framework/interfaces/inner_api/native:media_client",
239    "//foundation/multimedia/player_framework/interfaces/kits/c:native_media_codecbase",
240    "//foundation/multimedia/player_framework/interfaces/kits/c:native_media_core",
241    "//foundation/multimedia/player_framework/interfaces/kits/c:native_media_vdec",
242    "//foundation/multimedia/player_framework/interfaces/kits/c:native_media_venc",
243    "//foundation/window/window_manager/wm:libwm",
244  ]
245
246  resource_config_file = "//foundation/multimedia/player_framework/test/unittest/resources/ohos_test.xml"
247}
248
249##################################################################################################################
250ohos_unittest("acodec_capi_unit_test") {
251  module_out_path = module_output_path
252  include_dirs = avcodec_unittest_capi_include_dirs
253  include_dirs += [
254    "./",
255    "./acodec_test",
256  ]
257
258  cflags = avcodec_unittest_cflags
259
260  if (multimedia_player_framework_support_codec) {
261    sources = [
262      "./acodec_test/acodec_mock.cpp",
263      "./acodec_test/acodec_unit_test.cpp",
264      "./capi/audiodecoder/audiodec_capi_mock.cpp",
265      "./capi/audioencoder/audioenc_capi_mock.cpp",
266      "./capi/avcodec_mock_factory.cpp",
267      "./capi/avformat/avformat_capi_mock.cpp",
268      "./capi/avmemory/avmemory_capi_mock.cpp",
269    ]
270  }
271
272  deps = [
273    "//foundation/graphic/graphic_2d/rosen/modules/render_service_client:librender_service_client",
274    "//foundation/multimedia/player_framework/interfaces/inner_api/native:media_client",
275    "//foundation/multimedia/player_framework/interfaces/kits/c:native_media_adec",
276    "//foundation/multimedia/player_framework/interfaces/kits/c:native_media_aenc",
277    "//foundation/multimedia/player_framework/interfaces/kits/c:native_media_codecbase",
278    "//foundation/multimedia/player_framework/interfaces/kits/c:native_media_core",
279    "//foundation/window/window_manager/wm:libwm",
280  ]
281
282  resource_config_file = "//foundation/multimedia/player_framework/test/unittest/resources/ohos_test.xml"
283}
284
285##################################################################################################################
286ohos_unittest("format_capi_unit_test") {
287  module_out_path = module_output_path
288  include_dirs = avcodec_unittest_capi_include_dirs
289  include_dirs += [
290    "./",
291    "./format_test",
292  ]
293
294  cflags = avcodec_unittest_cflags
295
296  if (multimedia_player_framework_support_codec) {
297    sources = [
298      "./capi/avcodec_mock_factory.cpp",
299      "./capi/avformat/avformat_capi_mock.cpp",
300      "./format_test/format_unit_test.cpp",
301    ]
302  }
303  deps = [
304    "//foundation/multimedia/player_framework/interfaces/inner_api/native:media_client",
305    "//foundation/multimedia/player_framework/interfaces/kits/c:native_media_core",
306    "//foundation/window/window_manager/wm:libwm",
307  ]
308}
309