1da853ecaSopenharmony_ci# Copyright (c) 2023 Huawei Device Co., Ltd.
2da853ecaSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3da853ecaSopenharmony_ci# you may not use this file except in compliance with the License.
4da853ecaSopenharmony_ci# You may obtain a copy of the License at
5da853ecaSopenharmony_ci#
6da853ecaSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7da853ecaSopenharmony_ci#
8da853ecaSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9da853ecaSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10da853ecaSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11da853ecaSopenharmony_ci# See the License for the specific language governing permissions and
12da853ecaSopenharmony_ci# limitations under the License.
13da853ecaSopenharmony_ci
14da853ecaSopenharmony_ci#####################hydra-fuzz###################
15da853ecaSopenharmony_ciimport("//build/config/features.gni")
16da853ecaSopenharmony_ciimport("//build/test.gni")
17da853ecaSopenharmony_cimodule_output_path = "av_codec/av_codec"
18da853ecaSopenharmony_ciMEDIA_ROOT_DIR = "//foundation/multimedia/av_codec/"
19da853ecaSopenharmony_ci
20da853ecaSopenharmony_ci##############################fuzztest##########################################
21da853ecaSopenharmony_ciohos_fuzztest("DemuxerFuzzTest") {
22da853ecaSopenharmony_ci  module_out_path = module_output_path
23da853ecaSopenharmony_ci  fuzz_config_file = "$MEDIA_ROOT_DIR/test/fuzztest/demuxer_fuzzer"
24da853ecaSopenharmony_ci  include_dirs = [ "$MEDIA_ROOT_DIR/interfaces/kits/c" ]
25da853ecaSopenharmony_ci  cflags = [
26da853ecaSopenharmony_ci    "-g",
27da853ecaSopenharmony_ci    "-O0",
28da853ecaSopenharmony_ci    "-Wno-unused-variable",
29da853ecaSopenharmony_ci    "-fno-omit-frame-pointer",
30da853ecaSopenharmony_ci  ]
31da853ecaSopenharmony_ci  sources = [ "demuxer_fuzzer.cpp" ]
32da853ecaSopenharmony_ci  external_deps = [
33da853ecaSopenharmony_ci    "c_utils:utils",
34da853ecaSopenharmony_ci    "hilog:libhilog",
35da853ecaSopenharmony_ci    "ipc:ipc_core",
36da853ecaSopenharmony_ci    "media_foundation:native_media_core",
37da853ecaSopenharmony_ci    "window_manager:libwm",
38da853ecaSopenharmony_ci  ]
39da853ecaSopenharmony_ci  deps = [
40da853ecaSopenharmony_ci    "$MEDIA_ROOT_DIR/interfaces/inner_api/native:av_codec_client",
41da853ecaSopenharmony_ci    "$MEDIA_ROOT_DIR/interfaces/kits/c:native_media_avdemuxer",
42da853ecaSopenharmony_ci    "$MEDIA_ROOT_DIR/interfaces/kits/c:native_media_avsource",
43da853ecaSopenharmony_ci    "$MEDIA_ROOT_DIR/interfaces/kits/c:native_media_codecbase",
44da853ecaSopenharmony_ci  ]
45da853ecaSopenharmony_ci  resource_config_file =
46da853ecaSopenharmony_ci      "$MEDIA_ROOT_DIR/test/moduletest/resources/ohos_test.xml"
47da853ecaSopenharmony_ci}
48da853ecaSopenharmony_ci
49da853ecaSopenharmony_ci###############################################################################
50da853ecaSopenharmony_cigroup("fuzztest") {
51da853ecaSopenharmony_ci  testonly = true
52da853ecaSopenharmony_ci  deps = []
53da853ecaSopenharmony_ci  deps += [
54da853ecaSopenharmony_ci    # deps file
55da853ecaSopenharmony_ci    ":DemuxerFuzzTest",
56da853ecaSopenharmony_ci  ]
57da853ecaSopenharmony_ci}
58da853ecaSopenharmony_ci###############################################################################
59