1094332d3Sopenharmony_ci# Copyright (c) 2023 Huawei Device Co., Ltd.
2094332d3Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3094332d3Sopenharmony_ci# you may not use this file except in compliance with the License.
4094332d3Sopenharmony_ci# You may obtain a copy of the License at
5094332d3Sopenharmony_ci#
6094332d3Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7094332d3Sopenharmony_ci#
8094332d3Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9094332d3Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10094332d3Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11094332d3Sopenharmony_ci# See the License for the specific language governing permissions and
12094332d3Sopenharmony_ci# limitations under the License.
13094332d3Sopenharmony_ci
14094332d3Sopenharmony_ciimport("../../../camera.gni")
15094332d3Sopenharmony_ci
16094332d3Sopenharmony_ciif (defined(ohos_lite)) {
17094332d3Sopenharmony_ci  import("//build/lite/config/test.gni")
18094332d3Sopenharmony_ci  import("../../../../../hdf_core/adapter/uhdf/uhdf.gni")
19094332d3Sopenharmony_ci
20094332d3Sopenharmony_ci  config("camhdi_at_test_config") {
21094332d3Sopenharmony_ci    visibility = [ ":*" ]
22094332d3Sopenharmony_ci    cflags_cc = [
23094332d3Sopenharmony_ci      "-DGST_DISABLE_DEPRECATED",
24094332d3Sopenharmony_ci      "-DHAVE_CONFIG_H",
25094332d3Sopenharmony_ci      "-DCOLORSPACE=\"videoconvert\"",
26094332d3Sopenharmony_ci    ]
27094332d3Sopenharmony_ci    if (enable_camera_coverage) {
28094332d3Sopenharmony_ci      cflags_cc += [ "--coverage" ]
29094332d3Sopenharmony_ci      ldflags = [ "--coverage" ]
30094332d3Sopenharmony_ci    }
31094332d3Sopenharmony_ci    cflags_cc += [ "-std=c++17" ]
32094332d3Sopenharmony_ci  }
33094332d3Sopenharmony_ci
34094332d3Sopenharmony_ci  unittest("camera_test_at") {
35094332d3Sopenharmony_ci    output_extension = "bin"
36094332d3Sopenharmony_ci    output_dir = "$root_out_dir/test/unittest/hdf"
37094332d3Sopenharmony_ci    sources = [
38094332d3Sopenharmony_ci      "$camera_path/../../test/common/callback/src/camera_device_callback.cpp",
39094332d3Sopenharmony_ci      "$camera_path/../../test/common/callback/src/camera_host_callback.cpp",
40094332d3Sopenharmony_ci      "$camera_path/../../test/common/callback/src/stream_operator_callback.cpp",
41094332d3Sopenharmony_ci    ]
42094332d3Sopenharmony_ci
43094332d3Sopenharmony_ci    include_dirs = [
44094332d3Sopenharmony_ci      "$camera_path/../../interfaces/include",
45094332d3Sopenharmony_ci      "$camera_path/../../interfaces/hdi_passthrough",
46094332d3Sopenharmony_ci      "$camera_path/../../test/common/callback/include",
47094332d3Sopenharmony_ci      "$camera_path/include",
48094332d3Sopenharmony_ci      "$camera_path/../../hdi_service/v1_0/include",
49094332d3Sopenharmony_ci      "$camera_path/../v4l2/src/stream_operator/stream_tunnel/lite",
50094332d3Sopenharmony_ci      "$camera_path/device_manager/include/",
51094332d3Sopenharmony_ci      "$camera_path/device_manager/include/mpi",
52094332d3Sopenharmony_ci      "$camera_path/utils/event",
53094332d3Sopenharmony_ci      "$camera_path/../../base",
54094332d3Sopenharmony_ci      "$camera_path/../../display/interfaces/include",
55094332d3Sopenharmony_ci
56094332d3Sopenharmony_ci      #producer
57094332d3Sopenharmony_ci      "$camera_path/pipeline_core/utils",
58094332d3Sopenharmony_ci      "$camera_path/pipeline_core/include",
59094332d3Sopenharmony_ci      "$camera_path/pipeline_core/host_stream/include",
60094332d3Sopenharmony_ci      "$camera_path/pipeline_core/nodes/include",
61094332d3Sopenharmony_ci      "$camera_path/pipeline_core/nodes/src/node_base",
62094332d3Sopenharmony_ci      "$camera_path/pipeline_core/nodes/src/dummy_node",
63094332d3Sopenharmony_ci      "$camera_path/pipeline_core/pipeline_impl/src/strategy/config",
64094332d3Sopenharmony_ci      "$camera_path/pipeline_core/pipeline_impl/include",
65094332d3Sopenharmony_ci      "$camera_path/pipeline_core/pipeline_impl/src",
66094332d3Sopenharmony_ci      "$camera_path/pipeline_core/pipeline_impl/src/builder",
67094332d3Sopenharmony_ci      "$camera_path/pipeline_core/pipeline_impl/src/dispatcher",
68094332d3Sopenharmony_ci      "$camera_path/pipeline_core/pipeline_impl/src/parser",
69094332d3Sopenharmony_ci      "$camera_path/pipeline_core/pipeline_impl/src/strategy",
70094332d3Sopenharmony_ci      "$camera_path/pipeline_core/ipp/include",
71094332d3Sopenharmony_ci    ]
72094332d3Sopenharmony_ci
73094332d3Sopenharmony_ci    public_deps = [
74094332d3Sopenharmony_ci      "$camera_path/../../hdi_service/v1_0:camera_host_service_1.0",
75094332d3Sopenharmony_ci      "$hdf_uhdf_path/utils:libhdf_utils",
76094332d3Sopenharmony_ci      "../../../../hdf_core/adapter/uhdf/manager:hdf_core",
77094332d3Sopenharmony_ci    ]
78094332d3Sopenharmony_ci    external_deps = [
79094332d3Sopenharmony_ci      "drivers_interface_camera:libbuffer_producer_sequenceable_1.0",
80094332d3Sopenharmony_ci      "drivers_interface_camera:metadata",
81094332d3Sopenharmony_ci      "graphic_surface:surface",
82094332d3Sopenharmony_ci      "hdf_core:hdf_platform",
83094332d3Sopenharmony_ci      "hdf_core:hdf_posix_osal",
84094332d3Sopenharmony_ci      "hilog_lite:hilog_shared",
85094332d3Sopenharmony_ci    ]
86094332d3Sopenharmony_ci  }
87094332d3Sopenharmony_ci} else {
88094332d3Sopenharmony_ci  import("//build/ohos.gni")
89094332d3Sopenharmony_ci  import("//build/test.gni")
90094332d3Sopenharmony_ci
91094332d3Sopenharmony_ci  module_output_path = "drivers_peripheral_camera/camera"
92094332d3Sopenharmony_ci
93094332d3Sopenharmony_ci  config("camhdi_at_test_config") {
94094332d3Sopenharmony_ci    visibility = [ ":*" ]
95094332d3Sopenharmony_ci    cflags_cc = [
96094332d3Sopenharmony_ci      "-DGST_DISABLE_DEPRECATED",
97094332d3Sopenharmony_ci      "-DHAVE_CONFIG_H",
98094332d3Sopenharmony_ci      "-DCOLORSPACE=\"videoconvert\"",
99094332d3Sopenharmony_ci    ]
100094332d3Sopenharmony_ci    if (enable_camera_coverage) {
101094332d3Sopenharmony_ci      cflags_cc += [ "--coverage" ]
102094332d3Sopenharmony_ci      ldflags = [ "--coverage" ]
103094332d3Sopenharmony_ci    }
104094332d3Sopenharmony_ci  }
105094332d3Sopenharmony_ci
106094332d3Sopenharmony_ci  ohos_unittest("camera_test_at") {
107094332d3Sopenharmony_ci    testonly = true
108094332d3Sopenharmony_ci    module_out_path = module_output_path
109094332d3Sopenharmony_ci    sources = [
110094332d3Sopenharmony_ci      "$camera_common_path/v1_0/src/hdi_common.cpp",
111094332d3Sopenharmony_ci      "$camera_test_path/v1_0/src/camera_3a_uttest.cpp",
112094332d3Sopenharmony_ci      "$camera_test_path/v1_0/src/device_ability_uttest.cpp",
113094332d3Sopenharmony_ci      "$camera_test_path/v1_0/src/hdi_device_uttest.cpp",
114094332d3Sopenharmony_ci      "$camera_test_path/v1_0/src/hdi_host_uttest.cpp",
115094332d3Sopenharmony_ci      "$camera_test_path/v1_0/src/hdi_stream_uttest.cpp",
116094332d3Sopenharmony_ci    ]
117094332d3Sopenharmony_ci
118094332d3Sopenharmony_ci    include_dirs = [
119094332d3Sopenharmony_ci      # common includes
120094332d3Sopenharmony_ci      "$camera_common_path/v1_0/include",
121094332d3Sopenharmony_ci      "$camera_test_path/v1_0/include",
122094332d3Sopenharmony_ci      "$camera_path/../../interfaces/include",
123094332d3Sopenharmony_ci      "$camera_path/include",
124094332d3Sopenharmony_ci    ]
125094332d3Sopenharmony_ci
126094332d3Sopenharmony_ci    deps = []
127094332d3Sopenharmony_ci    defines = [ "CAMERA_UT_TEST" ]
128094332d3Sopenharmony_ci
129094332d3Sopenharmony_ci    if (is_standard_system) {
130094332d3Sopenharmony_ci      external_deps = [
131094332d3Sopenharmony_ci        "c_utils:utils",
132094332d3Sopenharmony_ci        "hdf_core:libhdf_host",
133094332d3Sopenharmony_ci        "hdf_core:libhdf_ipc_adapter",
134094332d3Sopenharmony_ci        "hdf_core:libhdf_utils",
135094332d3Sopenharmony_ci        "hdf_core:libhdi",
136094332d3Sopenharmony_ci        "hilog:libhilog",
137094332d3Sopenharmony_ci        "ipc:ipc_single",
138094332d3Sopenharmony_ci      ]
139094332d3Sopenharmony_ci    } else {
140094332d3Sopenharmony_ci      external_deps = [ "hilog:libhilog" ]
141094332d3Sopenharmony_ci    }
142094332d3Sopenharmony_ci
143094332d3Sopenharmony_ci    external_deps += [
144094332d3Sopenharmony_ci      "drivers_interface_camera:libbuffer_producer_sequenceable_1.0",
145094332d3Sopenharmony_ci      "drivers_interface_camera:libcamera_proxy_1.0",
146094332d3Sopenharmony_ci      "drivers_interface_camera:metadata",
147094332d3Sopenharmony_ci      "googletest:gmock_main",
148094332d3Sopenharmony_ci      "googletest:gtest",
149094332d3Sopenharmony_ci      "googletest:gtest_main",
150094332d3Sopenharmony_ci      "graphic_surface:surface",
151094332d3Sopenharmony_ci      "samgr:samgr_proxy",
152094332d3Sopenharmony_ci    ]
153094332d3Sopenharmony_ci    public_configs = [ ":camhdi_at_test_config" ]
154094332d3Sopenharmony_ci  }
155094332d3Sopenharmony_ci}
156