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("../../../vdi_base/usb_camera/camera_usb.gni")
15
16import("//build/test.gni")
17
18module_output_path = "drivers_peripheral_camera/camera"
19
20config("camera_ut_test_config") {
21  visibility = [ ":*" ]
22
23  cflags_cc = [ "--coverage" ]
24
25  ldflags = [ "--coverage" ]
26}
27ohos_unittest("camera_usb_test_ut") {
28  testonly = true
29  module_out_path = module_output_path
30  sources = [
31    "$usb_hal_test_path/ut/v4l2/stream_customer.cpp",
32    "$usb_hal_test_path/ut/v4l2/usb_camera_test_mult.cpp",
33    "./test_camera_base.cpp",
34    "./usb_camera_test.cpp",
35  ]
36
37  include_dirs = [
38    # camera common includes
39    "$camera_path_vdi/include",
40    "$camera_path_usb/../../interfaces/include",
41    "$camera_path_usb/../../interfaces/hdi_ipc",
42    "$camera_path_vdi/utils/event",
43    "$camera_path_usb/../../interfaces/hdi_ipc/utils/include",
44    "$camera_path_usb/../../interfaces/hdi_ipc/callback/host/include",
45    "$camera_path_usb/../../interfaces/hdi_ipc/callback/device/include",
46    "$camera_path_usb/../../interfaces/hdi_ipc/callback/operator/include",
47    "$camera_path_vdi_test/common/callback/include",
48    "$camera_path_vdi_test/ut/v4l2",
49
50    # device manager includes
51    "$camera_path_vdi/device_manager/include",
52
53    # buffer manager includes
54    "$camera_path_usb/buffer_manager/include",
55    "$camera_path_usb/buffer_manager/src/buffer_adapter/standard",
56
57    # pipeline core includes
58    "$camera_path_vdi/pipeline_core",
59    "$camera_path_vdi/pipeline_core/host_stream/include",
60    "$camera_path_vdi/pipeline_core/utils",
61    "$camera_path_vdi/pipeline_core/nodes/include",
62    "$camera_path_vdi/pipeline_core/nodes/src/node_base",
63    "$camera_path_vdi/pipeline_core/nodes/src/sink_node",
64    "$camera_path_vdi/pipeline_core/nodes/src/sensor_node",
65    "$camera_path_vdi/pipeline_core/nodes/src/merge_node",
66    "$camera_path_vdi/pipeline_core/nodes/src/dummy_node",
67    "$camera_path_vdi/pipeline_core/pipeline_impl/include",
68    "$camera_path_vdi/pipeline_core/pipeline_impl/src",
69    "$camera_path_vdi/pipeline_core/include",
70    "$camera_path_vdi/pipeline_core/pipeline_impl/src/builder",
71    "$camera_path_vdi/pipeline_core/pipeline_impl/src/dispatcher",
72    "$camera_path_vdi/pipeline_core/pipeline_impl/src/parser",
73    "$camera_path_vdi/pipeline_core/pipeline_impl/src/strategy",
74    "$camera_path_vdi/pipeline_core/pipeline_impl/src/strategy/config",
75    "$camera_path_vdi/pipeline_core/ipp/include",
76
77    # vdi impl includes
78    "camera_path_vdi/../v4l2",
79    "camera_path_vdi/../v4l2/include",
80    "camera_path_vdi/../v4l2/include/camera_host",
81    "camera_path_vdi/../v4l2/include/camera_device",
82    "camera_path_vdi/../v4l2/include/stream_operator",
83    "camera_path_vdi/../v4l2/include/offline_stream_operator",
84    "camera_path_vdi/../v4l2/src/stream_operator/stream_tunnel/standard",
85
86    # metadata manager includes
87    "$camera_path_vdi/metadata_manager/include",
88  ]
89
90  deps = [
91    "$camera_path_usb/buffer_manager:usb_camera_buffer_manager",
92    "$camera_path_usb/device_manager:usb_camera_device_manager",
93    "$camera_path_usb/pipeline_core:usb_camera_pipeline_core",
94    "$camera_path_usb/vdi_impl:camera_daemon_static",
95  ]
96
97  external_deps = [
98    "c_utils:utils",
99    "drivers_interface_camera:libbuffer_producer_sequenceable_1.0",
100    "drivers_interface_camera:libcamera_proxy_1.0",
101    "drivers_interface_camera:libcamera_stub_1.0",
102    "drivers_interface_camera:metadata",
103    "googletest:gmock_main",
104    "googletest:gtest",
105    "googletest:gtest_main",
106    "graphic_surface:surface",
107    "hdf_core:libhdf_utils",
108    "hilog:libhilog",
109    "ipc:ipc_single",
110    "samgr:samgr_proxy",
111  ]
112
113  public_configs = [ ":camera_ut_test_config" ]
114}
115