xref: /aosp_15_r20/external/webrtc/test/BUILD.gn (revision d9f758449e529ab9291ac668be2861e7a55c2422)
1*d9f75844SAndroid Build Coastguard Worker# Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
2*d9f75844SAndroid Build Coastguard Worker#
3*d9f75844SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license
4*d9f75844SAndroid Build Coastguard Worker# that can be found in the LICENSE file in the root of the source
5*d9f75844SAndroid Build Coastguard Worker# tree. An additional intellectual property rights grant can be found
6*d9f75844SAndroid Build Coastguard Worker# in the file PATENTS.  All contributing project authors may
7*d9f75844SAndroid Build Coastguard Worker# be found in the AUTHORS file in the root of the source tree.
8*d9f75844SAndroid Build Coastguard Worker
9*d9f75844SAndroid Build Coastguard Workerimport("//build/config/ui.gni")
10*d9f75844SAndroid Build Coastguard Workerimport("//third_party/google_benchmark/buildconfig.gni")
11*d9f75844SAndroid Build Coastguard Workerimport("../webrtc.gni")
12*d9f75844SAndroid Build Coastguard Workerif (is_android) {
13*d9f75844SAndroid Build Coastguard Worker  import("//build/config/android/rules.gni")
14*d9f75844SAndroid Build Coastguard Worker}
15*d9f75844SAndroid Build Coastguard Worker
16*d9f75844SAndroid Build Coastguard Workerif (!build_with_chromium) {
17*d9f75844SAndroid Build Coastguard Worker  group("test") {
18*d9f75844SAndroid Build Coastguard Worker    testonly = true
19*d9f75844SAndroid Build Coastguard Worker
20*d9f75844SAndroid Build Coastguard Worker    deps = [
21*d9f75844SAndroid Build Coastguard Worker      ":copy_to_file_audio_capturer",
22*d9f75844SAndroid Build Coastguard Worker      ":rtp_test_utils",
23*d9f75844SAndroid Build Coastguard Worker      ":test_common",
24*d9f75844SAndroid Build Coastguard Worker      ":test_renderer",
25*d9f75844SAndroid Build Coastguard Worker      ":test_support",
26*d9f75844SAndroid Build Coastguard Worker      ":video_test_common",
27*d9f75844SAndroid Build Coastguard Worker    ]
28*d9f75844SAndroid Build Coastguard Worker
29*d9f75844SAndroid Build Coastguard Worker    if (rtc_include_tests) {
30*d9f75844SAndroid Build Coastguard Worker      deps += [
31*d9f75844SAndroid Build Coastguard Worker        ":test_main",
32*d9f75844SAndroid Build Coastguard Worker        ":test_support_unittests",
33*d9f75844SAndroid Build Coastguard Worker        "pc/e2e",
34*d9f75844SAndroid Build Coastguard Worker      ]
35*d9f75844SAndroid Build Coastguard Worker    }
36*d9f75844SAndroid Build Coastguard Worker  }
37*d9f75844SAndroid Build Coastguard Worker}
38*d9f75844SAndroid Build Coastguard Worker
39*d9f75844SAndroid Build Coastguard Workerrtc_library("frame_generator_impl") {
40*d9f75844SAndroid Build Coastguard Worker  visibility = [
41*d9f75844SAndroid Build Coastguard Worker    ":*",
42*d9f75844SAndroid Build Coastguard Worker    "../api:create_frame_generator",
43*d9f75844SAndroid Build Coastguard Worker  ]
44*d9f75844SAndroid Build Coastguard Worker  testonly = true
45*d9f75844SAndroid Build Coastguard Worker  sources = [
46*d9f75844SAndroid Build Coastguard Worker    "frame_generator.cc",
47*d9f75844SAndroid Build Coastguard Worker    "frame_generator.h",
48*d9f75844SAndroid Build Coastguard Worker    "testsupport/ivf_video_frame_generator.cc",
49*d9f75844SAndroid Build Coastguard Worker    "testsupport/ivf_video_frame_generator.h",
50*d9f75844SAndroid Build Coastguard Worker  ]
51*d9f75844SAndroid Build Coastguard Worker  deps = [
52*d9f75844SAndroid Build Coastguard Worker    ":frame_utils",
53*d9f75844SAndroid Build Coastguard Worker    "../api:frame_generator_api",
54*d9f75844SAndroid Build Coastguard Worker    "../api:scoped_refptr",
55*d9f75844SAndroid Build Coastguard Worker    "../api:sequence_checker",
56*d9f75844SAndroid Build Coastguard Worker    "../api/video:encoded_image",
57*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_frame",
58*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_frame_i010",
59*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_rtp_headers",
60*d9f75844SAndroid Build Coastguard Worker    "../api/video_codecs:video_codecs_api",
61*d9f75844SAndroid Build Coastguard Worker    "../common_video",
62*d9f75844SAndroid Build Coastguard Worker    "../media:rtc_media_base",
63*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:video_codec_interface",
64*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:video_coding_utility",
65*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:webrtc_h264",
66*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:webrtc_vp8",
67*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:webrtc_vp9",
68*d9f75844SAndroid Build Coastguard Worker    "../rtc_base",
69*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
70*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:criticalsection",
71*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:logging",
72*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:random",
73*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:rtc_event",
74*d9f75844SAndroid Build Coastguard Worker    "../rtc_base/synchronization:mutex",
75*d9f75844SAndroid Build Coastguard Worker    "../rtc_base/system:file_wrapper",
76*d9f75844SAndroid Build Coastguard Worker    "../system_wrappers",
77*d9f75844SAndroid Build Coastguard Worker  ]
78*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
79*d9f75844SAndroid Build Coastguard Worker}
80*d9f75844SAndroid Build Coastguard Worker
81*d9f75844SAndroid Build Coastguard Workerrtc_library("frame_utils") {
82*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
83*d9f75844SAndroid Build Coastguard Worker  testonly = true
84*d9f75844SAndroid Build Coastguard Worker  sources = [
85*d9f75844SAndroid Build Coastguard Worker    "frame_utils.cc",
86*d9f75844SAndroid Build Coastguard Worker    "frame_utils.h",
87*d9f75844SAndroid Build Coastguard Worker  ]
88*d9f75844SAndroid Build Coastguard Worker  deps = [
89*d9f75844SAndroid Build Coastguard Worker    "../api:scoped_refptr",
90*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_frame",
91*d9f75844SAndroid Build Coastguard Worker  ]
92*d9f75844SAndroid Build Coastguard Worker}
93*d9f75844SAndroid Build Coastguard Worker
94*d9f75844SAndroid Build Coastguard Workerrtc_library("video_test_common") {
95*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
96*d9f75844SAndroid Build Coastguard Worker  testonly = true
97*d9f75844SAndroid Build Coastguard Worker  sources = [
98*d9f75844SAndroid Build Coastguard Worker    "fake_texture_frame.cc",
99*d9f75844SAndroid Build Coastguard Worker    "fake_texture_frame.h",
100*d9f75844SAndroid Build Coastguard Worker    "fake_videorenderer.h",
101*d9f75844SAndroid Build Coastguard Worker    "frame_forwarder.cc",
102*d9f75844SAndroid Build Coastguard Worker    "frame_forwarder.h",
103*d9f75844SAndroid Build Coastguard Worker    "frame_generator_capturer.cc",
104*d9f75844SAndroid Build Coastguard Worker    "frame_generator_capturer.h",
105*d9f75844SAndroid Build Coastguard Worker    "mappable_native_buffer.cc",
106*d9f75844SAndroid Build Coastguard Worker    "mappable_native_buffer.h",
107*d9f75844SAndroid Build Coastguard Worker    "test_video_capturer.cc",
108*d9f75844SAndroid Build Coastguard Worker    "test_video_capturer.h",
109*d9f75844SAndroid Build Coastguard Worker    "video_codec_settings.h",
110*d9f75844SAndroid Build Coastguard Worker    "video_decoder_proxy_factory.h",
111*d9f75844SAndroid Build Coastguard Worker    "video_encoder_nullable_proxy_factory.h",
112*d9f75844SAndroid Build Coastguard Worker    "video_encoder_proxy_factory.h",
113*d9f75844SAndroid Build Coastguard Worker  ]
114*d9f75844SAndroid Build Coastguard Worker
115*d9f75844SAndroid Build Coastguard Worker  deps = [
116*d9f75844SAndroid Build Coastguard Worker    ":fileutils",
117*d9f75844SAndroid Build Coastguard Worker    ":frame_utils",
118*d9f75844SAndroid Build Coastguard Worker    ":scoped_key_value_config",
119*d9f75844SAndroid Build Coastguard Worker    "../api:array_view",
120*d9f75844SAndroid Build Coastguard Worker    "../api:create_frame_generator",
121*d9f75844SAndroid Build Coastguard Worker    "../api:frame_generator_api",
122*d9f75844SAndroid Build Coastguard Worker    "../api:scoped_refptr",
123*d9f75844SAndroid Build Coastguard Worker    "../api/task_queue",
124*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_frame",
125*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_rtp_headers",
126*d9f75844SAndroid Build Coastguard Worker    "../api/video_codecs:video_codecs_api",
127*d9f75844SAndroid Build Coastguard Worker    "../common_video",
128*d9f75844SAndroid Build Coastguard Worker    "../media:rtc_media_base",
129*d9f75844SAndroid Build Coastguard Worker    "../rtc_base",
130*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
131*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:criticalsection",
132*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:logging",
133*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:refcount",
134*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:rtc_task_queue",
135*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:timeutils",
136*d9f75844SAndroid Build Coastguard Worker    "../rtc_base/synchronization:mutex",
137*d9f75844SAndroid Build Coastguard Worker    "../rtc_base/task_utils:repeating_task",
138*d9f75844SAndroid Build Coastguard Worker    "../system_wrappers",
139*d9f75844SAndroid Build Coastguard Worker  ]
140*d9f75844SAndroid Build Coastguard Worker  absl_deps = [
141*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/algorithm:container",
142*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/strings",
143*d9f75844SAndroid Build Coastguard Worker  ]
144*d9f75844SAndroid Build Coastguard Worker}
145*d9f75844SAndroid Build Coastguard Worker
146*d9f75844SAndroid Build Coastguard Workerrtc_library("audio_test_common") {
147*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
148*d9f75844SAndroid Build Coastguard Worker  testonly = true
149*d9f75844SAndroid Build Coastguard Worker  sources = [
150*d9f75844SAndroid Build Coastguard Worker    "audio_decoder_proxy_factory.h",
151*d9f75844SAndroid Build Coastguard Worker    "function_audio_decoder_factory.h",
152*d9f75844SAndroid Build Coastguard Worker  ]
153*d9f75844SAndroid Build Coastguard Worker  deps = [
154*d9f75844SAndroid Build Coastguard Worker    "../api/audio_codecs:audio_codecs_api",
155*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
156*d9f75844SAndroid Build Coastguard Worker  ]
157*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/memory" ]
158*d9f75844SAndroid Build Coastguard Worker}
159*d9f75844SAndroid Build Coastguard Worker
160*d9f75844SAndroid Build Coastguard Workerif (!build_with_chromium) {
161*d9f75844SAndroid Build Coastguard Worker  if (is_mac || is_ios) {
162*d9f75844SAndroid Build Coastguard Worker    rtc_library("video_test_mac") {
163*d9f75844SAndroid Build Coastguard Worker      testonly = true
164*d9f75844SAndroid Build Coastguard Worker      sources = [
165*d9f75844SAndroid Build Coastguard Worker        "mac_capturer.h",
166*d9f75844SAndroid Build Coastguard Worker        "mac_capturer.mm",
167*d9f75844SAndroid Build Coastguard Worker      ]
168*d9f75844SAndroid Build Coastguard Worker      deps = [
169*d9f75844SAndroid Build Coastguard Worker        ":video_test_common",
170*d9f75844SAndroid Build Coastguard Worker        "../api:libjingle_peerconnection_api",
171*d9f75844SAndroid Build Coastguard Worker        "../api:media_stream_interface",
172*d9f75844SAndroid Build Coastguard Worker        "../api:scoped_refptr",
173*d9f75844SAndroid Build Coastguard Worker        "../modules/video_capture:video_capture_module",
174*d9f75844SAndroid Build Coastguard Worker        "../rtc_base",
175*d9f75844SAndroid Build Coastguard Worker        "../rtc_base:threading",
176*d9f75844SAndroid Build Coastguard Worker        "../sdk:base_objc",
177*d9f75844SAndroid Build Coastguard Worker        "../sdk:native_api",
178*d9f75844SAndroid Build Coastguard Worker        "../sdk:native_video",
179*d9f75844SAndroid Build Coastguard Worker        "../sdk:videocapture_objc",
180*d9f75844SAndroid Build Coastguard Worker      ]
181*d9f75844SAndroid Build Coastguard Worker    }
182*d9f75844SAndroid Build Coastguard Worker  }
183*d9f75844SAndroid Build Coastguard Worker
184*d9f75844SAndroid Build Coastguard Worker  rtc_library("platform_video_capturer") {
185*d9f75844SAndroid Build Coastguard Worker    testonly = true
186*d9f75844SAndroid Build Coastguard Worker    sources = [
187*d9f75844SAndroid Build Coastguard Worker      "platform_video_capturer.cc",
188*d9f75844SAndroid Build Coastguard Worker      "platform_video_capturer.h",
189*d9f75844SAndroid Build Coastguard Worker    ]
190*d9f75844SAndroid Build Coastguard Worker    deps = [ ":video_test_common" ]
191*d9f75844SAndroid Build Coastguard Worker    absl_deps = [ "//third_party/abseil-cpp/absl/memory" ]
192*d9f75844SAndroid Build Coastguard Worker    if (is_mac || is_ios) {
193*d9f75844SAndroid Build Coastguard Worker      deps += [ ":video_test_mac" ]
194*d9f75844SAndroid Build Coastguard Worker    } else {
195*d9f75844SAndroid Build Coastguard Worker      sources += [
196*d9f75844SAndroid Build Coastguard Worker        "vcm_capturer.cc",
197*d9f75844SAndroid Build Coastguard Worker        "vcm_capturer.h",
198*d9f75844SAndroid Build Coastguard Worker      ]
199*d9f75844SAndroid Build Coastguard Worker      deps += [
200*d9f75844SAndroid Build Coastguard Worker        ":scoped_key_value_config",
201*d9f75844SAndroid Build Coastguard Worker        "../api:scoped_refptr",
202*d9f75844SAndroid Build Coastguard Worker        "../modules/video_capture:video_capture_module",
203*d9f75844SAndroid Build Coastguard Worker        "../rtc_base:checks",
204*d9f75844SAndroid Build Coastguard Worker        "../rtc_base:logging",
205*d9f75844SAndroid Build Coastguard Worker      ]
206*d9f75844SAndroid Build Coastguard Worker    }
207*d9f75844SAndroid Build Coastguard Worker  }
208*d9f75844SAndroid Build Coastguard Worker}
209*d9f75844SAndroid Build Coastguard Worker
210*d9f75844SAndroid Build Coastguard Workerrtc_library("rtp_test_utils") {
211*d9f75844SAndroid Build Coastguard Worker  testonly = true
212*d9f75844SAndroid Build Coastguard Worker  sources = [
213*d9f75844SAndroid Build Coastguard Worker    "rtcp_packet_parser.cc",
214*d9f75844SAndroid Build Coastguard Worker    "rtcp_packet_parser.h",
215*d9f75844SAndroid Build Coastguard Worker    "rtp_file_reader.cc",
216*d9f75844SAndroid Build Coastguard Worker    "rtp_file_reader.h",
217*d9f75844SAndroid Build Coastguard Worker    "rtp_file_writer.cc",
218*d9f75844SAndroid Build Coastguard Worker    "rtp_file_writer.h",
219*d9f75844SAndroid Build Coastguard Worker  ]
220*d9f75844SAndroid Build Coastguard Worker
221*d9f75844SAndroid Build Coastguard Worker  deps = [
222*d9f75844SAndroid Build Coastguard Worker    "../api:array_view",
223*d9f75844SAndroid Build Coastguard Worker    "../api:rtp_parameters",
224*d9f75844SAndroid Build Coastguard Worker    "../modules/rtp_rtcp",
225*d9f75844SAndroid Build Coastguard Worker    "../modules/rtp_rtcp:rtp_rtcp_format",
226*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
227*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:criticalsection",
228*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:logging",
229*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:macromagic",
230*d9f75844SAndroid Build Coastguard Worker    "../rtc_base/synchronization:mutex",
231*d9f75844SAndroid Build Coastguard Worker    "../rtc_base/system:arch",
232*d9f75844SAndroid Build Coastguard Worker  ]
233*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
234*d9f75844SAndroid Build Coastguard Worker}
235*d9f75844SAndroid Build Coastguard Worker
236*d9f75844SAndroid Build Coastguard Workerrtc_library("field_trial") {
237*d9f75844SAndroid Build Coastguard Worker  testonly = true
238*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
239*d9f75844SAndroid Build Coastguard Worker  sources = [
240*d9f75844SAndroid Build Coastguard Worker    "field_trial.cc",
241*d9f75844SAndroid Build Coastguard Worker    "field_trial.h",
242*d9f75844SAndroid Build Coastguard Worker  ]
243*d9f75844SAndroid Build Coastguard Worker
244*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
245*d9f75844SAndroid Build Coastguard Worker  deps = [
246*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
247*d9f75844SAndroid Build Coastguard Worker    "../system_wrappers:field_trial",
248*d9f75844SAndroid Build Coastguard Worker  ]
249*d9f75844SAndroid Build Coastguard Worker}
250*d9f75844SAndroid Build Coastguard Worker
251*d9f75844SAndroid Build Coastguard Workerrtc_library("explicit_key_value_config") {
252*d9f75844SAndroid Build Coastguard Worker  sources = [
253*d9f75844SAndroid Build Coastguard Worker    "explicit_key_value_config.cc",
254*d9f75844SAndroid Build Coastguard Worker    "explicit_key_value_config.h",
255*d9f75844SAndroid Build Coastguard Worker  ]
256*d9f75844SAndroid Build Coastguard Worker
257*d9f75844SAndroid Build Coastguard Worker  deps = [
258*d9f75844SAndroid Build Coastguard Worker    "../api:field_trials_registry",
259*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
260*d9f75844SAndroid Build Coastguard Worker  ]
261*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/strings:strings" ]
262*d9f75844SAndroid Build Coastguard Worker}
263*d9f75844SAndroid Build Coastguard Worker
264*d9f75844SAndroid Build Coastguard Workerrtc_library("scoped_key_value_config") {
265*d9f75844SAndroid Build Coastguard Worker  testonly = true
266*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
267*d9f75844SAndroid Build Coastguard Worker  sources = [
268*d9f75844SAndroid Build Coastguard Worker    "scoped_key_value_config.cc",
269*d9f75844SAndroid Build Coastguard Worker    "scoped_key_value_config.h",
270*d9f75844SAndroid Build Coastguard Worker  ]
271*d9f75844SAndroid Build Coastguard Worker
272*d9f75844SAndroid Build Coastguard Worker  deps = [
273*d9f75844SAndroid Build Coastguard Worker    ":field_trial",
274*d9f75844SAndroid Build Coastguard Worker    "../api:field_trials_registry",
275*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
276*d9f75844SAndroid Build Coastguard Worker    "../system_wrappers:field_trial",
277*d9f75844SAndroid Build Coastguard Worker  ]
278*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/strings:strings" ]
279*d9f75844SAndroid Build Coastguard Worker}
280*d9f75844SAndroid Build Coastguard Worker
281*d9f75844SAndroid Build Coastguard Workerrtc_library("perf_test") {
282*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
283*d9f75844SAndroid Build Coastguard Worker  testonly = true
284*d9f75844SAndroid Build Coastguard Worker  sources = [
285*d9f75844SAndroid Build Coastguard Worker    "testsupport/perf_test.cc",
286*d9f75844SAndroid Build Coastguard Worker    "testsupport/perf_test.h",
287*d9f75844SAndroid Build Coastguard Worker    "testsupport/perf_test_histogram_writer.h",
288*d9f75844SAndroid Build Coastguard Worker    "testsupport/perf_test_result_writer.h",
289*d9f75844SAndroid Build Coastguard Worker  ]
290*d9f75844SAndroid Build Coastguard Worker  deps = [
291*d9f75844SAndroid Build Coastguard Worker    "../api:array_view",
292*d9f75844SAndroid Build Coastguard Worker    "../api/numerics",
293*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
294*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:criticalsection",
295*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:logging",
296*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:rtc_numerics",
297*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:stringutils",
298*d9f75844SAndroid Build Coastguard Worker    "../rtc_base/synchronization:mutex",
299*d9f75844SAndroid Build Coastguard Worker    "../test:fileutils",
300*d9f75844SAndroid Build Coastguard Worker  ]
301*d9f75844SAndroid Build Coastguard Worker  absl_deps = [
302*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/strings",
303*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/types:optional",
304*d9f75844SAndroid Build Coastguard Worker  ]
305*d9f75844SAndroid Build Coastguard Worker  if (rtc_enable_protobuf) {
306*d9f75844SAndroid Build Coastguard Worker    sources += [ "testsupport/perf_test_histogram_writer.cc" ]
307*d9f75844SAndroid Build Coastguard Worker    deps += [
308*d9f75844SAndroid Build Coastguard Worker      "//third_party/catapult/tracing/tracing:histogram",
309*d9f75844SAndroid Build Coastguard Worker      "//third_party/catapult/tracing/tracing:reserved_infos",
310*d9f75844SAndroid Build Coastguard Worker    ]
311*d9f75844SAndroid Build Coastguard Worker  } else {
312*d9f75844SAndroid Build Coastguard Worker    sources += [ "testsupport/perf_test_histogram_writer_no_protobuf.cc" ]
313*d9f75844SAndroid Build Coastguard Worker  }
314*d9f75844SAndroid Build Coastguard Worker}
315*d9f75844SAndroid Build Coastguard Worker
316*d9f75844SAndroid Build Coastguard Workerif (is_ios) {
317*d9f75844SAndroid Build Coastguard Worker  rtc_library("test_support_objc") {
318*d9f75844SAndroid Build Coastguard Worker    testonly = true
319*d9f75844SAndroid Build Coastguard Worker    visibility = [
320*d9f75844SAndroid Build Coastguard Worker      ":google_test_runner_objc",
321*d9f75844SAndroid Build Coastguard Worker      ":test_support",
322*d9f75844SAndroid Build Coastguard Worker    ]
323*d9f75844SAndroid Build Coastguard Worker    sources = [
324*d9f75844SAndroid Build Coastguard Worker      "ios/coverage_util_ios.h",
325*d9f75844SAndroid Build Coastguard Worker      "ios/coverage_util_ios.mm",
326*d9f75844SAndroid Build Coastguard Worker      "ios/google_test_runner_delegate.h",
327*d9f75844SAndroid Build Coastguard Worker      "ios/test_support.h",
328*d9f75844SAndroid Build Coastguard Worker      "ios/test_support.mm",
329*d9f75844SAndroid Build Coastguard Worker    ]
330*d9f75844SAndroid Build Coastguard Worker    deps = [
331*d9f75844SAndroid Build Coastguard Worker      ":perf_test",
332*d9f75844SAndroid Build Coastguard Worker      "../api/test/metrics:chrome_perf_dashboard_metrics_exporter",
333*d9f75844SAndroid Build Coastguard Worker      "../api/test/metrics:global_metrics_logger_and_exporter",
334*d9f75844SAndroid Build Coastguard Worker      "../api/test/metrics:metrics_exporter",
335*d9f75844SAndroid Build Coastguard Worker      "../api/test/metrics:metrics_set_proto_file_exporter",
336*d9f75844SAndroid Build Coastguard Worker      "../api/test/metrics:print_result_proxy_metrics_exporter",
337*d9f75844SAndroid Build Coastguard Worker      "../api/test/metrics:stdout_metrics_exporter",
338*d9f75844SAndroid Build Coastguard Worker      "../sdk:helpers_objc",
339*d9f75844SAndroid Build Coastguard Worker    ]
340*d9f75844SAndroid Build Coastguard Worker    absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
341*d9f75844SAndroid Build Coastguard Worker    configs += [ ":test_support_objc_config" ]
342*d9f75844SAndroid Build Coastguard Worker  }
343*d9f75844SAndroid Build Coastguard Worker
344*d9f75844SAndroid Build Coastguard Worker  rtc_library("google_test_runner_objc") {
345*d9f75844SAndroid Build Coastguard Worker    testonly = true
346*d9f75844SAndroid Build Coastguard Worker    visibility = [ "*" ]
347*d9f75844SAndroid Build Coastguard Worker    sources = [ "ios/google_test_runner.mm" ]
348*d9f75844SAndroid Build Coastguard Worker    deps = [ ":test_support_objc" ]
349*d9f75844SAndroid Build Coastguard Worker    configs += [ "//build/config/ios:xctest_config" ]
350*d9f75844SAndroid Build Coastguard Worker    frameworks = [ "UIKit.framework" ]
351*d9f75844SAndroid Build Coastguard Worker  }
352*d9f75844SAndroid Build Coastguard Worker
353*d9f75844SAndroid Build Coastguard Worker  config("test_support_objc_config") {
354*d9f75844SAndroid Build Coastguard Worker    defines = []
355*d9f75844SAndroid Build Coastguard Worker
356*d9f75844SAndroid Build Coastguard Worker    if (use_clang_coverage) {
357*d9f75844SAndroid Build Coastguard Worker      defines += [ "WEBRTC_IOS_ENABLE_COVERAGE" ]
358*d9f75844SAndroid Build Coastguard Worker    }
359*d9f75844SAndroid Build Coastguard Worker  }
360*d9f75844SAndroid Build Coastguard Worker}
361*d9f75844SAndroid Build Coastguard Worker
362*d9f75844SAndroid Build Coastguard Workerconfig("suppress_warning_4373") {
363*d9f75844SAndroid Build Coastguard Worker  if (is_win) {
364*d9f75844SAndroid Build Coastguard Worker    cflags = [
365*d9f75844SAndroid Build Coastguard Worker      # MSVC has a bug which generates this warning when using mocks; see the
366*d9f75844SAndroid Build Coastguard Worker      # section on warning 4373 in he googlemock FAQ. This warning isn't the
367*d9f75844SAndroid Build Coastguard Worker      # least relevant for us, anyway.
368*d9f75844SAndroid Build Coastguard Worker      "/wd4373",
369*d9f75844SAndroid Build Coastguard Worker    ]
370*d9f75844SAndroid Build Coastguard Worker  }
371*d9f75844SAndroid Build Coastguard Worker}
372*d9f75844SAndroid Build Coastguard Worker
373*d9f75844SAndroid Build Coastguard Workerconfig("test_main_direct_config") {
374*d9f75844SAndroid Build Coastguard Worker  visibility = [ ":*" ]
375*d9f75844SAndroid Build Coastguard Worker  defines = [ "WEBRTC_UNIT_TEST" ]
376*d9f75844SAndroid Build Coastguard Worker}
377*d9f75844SAndroid Build Coastguard Workerrtc_source_set("test_support") {
378*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
379*d9f75844SAndroid Build Coastguard Worker  testonly = true
380*d9f75844SAndroid Build Coastguard Worker
381*d9f75844SAndroid Build Coastguard Worker  all_dependent_configs = [
382*d9f75844SAndroid Build Coastguard Worker    ":suppress_warning_4373",
383*d9f75844SAndroid Build Coastguard Worker    "//third_party/googletest:gmock_config",
384*d9f75844SAndroid Build Coastguard Worker    "//third_party/googletest:gtest_config",
385*d9f75844SAndroid Build Coastguard Worker  ]
386*d9f75844SAndroid Build Coastguard Worker
387*d9f75844SAndroid Build Coastguard Worker  sources = [
388*d9f75844SAndroid Build Coastguard Worker    "gmock.h",
389*d9f75844SAndroid Build Coastguard Worker    "gtest.h",
390*d9f75844SAndroid Build Coastguard Worker  ]
391*d9f75844SAndroid Build Coastguard Worker
392*d9f75844SAndroid Build Coastguard Worker  public_deps = []  # no-presubmit-check TODO(webrtc:8603)
393*d9f75844SAndroid Build Coastguard Worker  if (is_ios) {
394*d9f75844SAndroid Build Coastguard Worker    public_deps +=  # no-presubmit-check TODO(webrtc:8603)
395*d9f75844SAndroid Build Coastguard Worker        [ ":test_support_objc" ]
396*d9f75844SAndroid Build Coastguard Worker  }
397*d9f75844SAndroid Build Coastguard Worker
398*d9f75844SAndroid Build Coastguard Worker  public_configs = [ ":test_main_direct_config" ]
399*d9f75844SAndroid Build Coastguard Worker  deps = [
400*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:ignore_wundef",
401*d9f75844SAndroid Build Coastguard Worker    "//testing/gmock",
402*d9f75844SAndroid Build Coastguard Worker    "//testing/gtest",
403*d9f75844SAndroid Build Coastguard Worker  ]
404*d9f75844SAndroid Build Coastguard Worker}
405*d9f75844SAndroid Build Coastguard Worker
406*d9f75844SAndroid Build Coastguard Workerrtc_library("fixed_fps_video_frame_writer_adapter") {
407*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
408*d9f75844SAndroid Build Coastguard Worker  testonly = true
409*d9f75844SAndroid Build Coastguard Worker  sources = [
410*d9f75844SAndroid Build Coastguard Worker    "testsupport/fixed_fps_video_frame_writer_adapter.cc",
411*d9f75844SAndroid Build Coastguard Worker    "testsupport/fixed_fps_video_frame_writer_adapter.h",
412*d9f75844SAndroid Build Coastguard Worker  ]
413*d9f75844SAndroid Build Coastguard Worker  deps = [
414*d9f75844SAndroid Build Coastguard Worker    ":video_test_support",
415*d9f75844SAndroid Build Coastguard Worker    "../api/test/video:video_frame_writer",
416*d9f75844SAndroid Build Coastguard Worker    "../api/units:time_delta",
417*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_frame",
418*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
419*d9f75844SAndroid Build Coastguard Worker    "../system_wrappers",
420*d9f75844SAndroid Build Coastguard Worker  ]
421*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
422*d9f75844SAndroid Build Coastguard Worker}
423*d9f75844SAndroid Build Coastguard Worker
424*d9f75844SAndroid Build Coastguard Workerrtc_library("video_test_support") {
425*d9f75844SAndroid Build Coastguard Worker  testonly = true
426*d9f75844SAndroid Build Coastguard Worker
427*d9f75844SAndroid Build Coastguard Worker  sources = [
428*d9f75844SAndroid Build Coastguard Worker    "testsupport/frame_reader.h",
429*d9f75844SAndroid Build Coastguard Worker    "testsupport/frame_writer.h",
430*d9f75844SAndroid Build Coastguard Worker    "testsupport/mock/mock_frame_reader.h",
431*d9f75844SAndroid Build Coastguard Worker    "testsupport/video_frame_writer.cc",
432*d9f75844SAndroid Build Coastguard Worker    "testsupport/video_frame_writer.h",
433*d9f75844SAndroid Build Coastguard Worker    "testsupport/y4m_frame_reader.cc",
434*d9f75844SAndroid Build Coastguard Worker    "testsupport/y4m_frame_writer.cc",
435*d9f75844SAndroid Build Coastguard Worker    "testsupport/yuv_frame_reader.cc",
436*d9f75844SAndroid Build Coastguard Worker    "testsupport/yuv_frame_writer.cc",
437*d9f75844SAndroid Build Coastguard Worker  ]
438*d9f75844SAndroid Build Coastguard Worker
439*d9f75844SAndroid Build Coastguard Worker  deps = [
440*d9f75844SAndroid Build Coastguard Worker    ":fileutils",
441*d9f75844SAndroid Build Coastguard Worker    ":frame_utils",
442*d9f75844SAndroid Build Coastguard Worker    ":test_support",
443*d9f75844SAndroid Build Coastguard Worker    ":video_test_common",
444*d9f75844SAndroid Build Coastguard Worker    "../api:scoped_refptr",
445*d9f75844SAndroid Build Coastguard Worker    "../api:sequence_checker",
446*d9f75844SAndroid Build Coastguard Worker    "../api/test/video:video_frame_writer",
447*d9f75844SAndroid Build Coastguard Worker    "../api/video:encoded_image",
448*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_frame",
449*d9f75844SAndroid Build Coastguard Worker    "../api/video_codecs:video_codecs_api",
450*d9f75844SAndroid Build Coastguard Worker    "../common_video",
451*d9f75844SAndroid Build Coastguard Worker    "../media:rtc_media_base",
452*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:video_codec_interface",
453*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:video_coding_utility",
454*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:webrtc_h264",
455*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:webrtc_vp8",
456*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:webrtc_vp9",
457*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:buffer",
458*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
459*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:criticalsection",
460*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:logging",
461*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:rtc_event",
462*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:stringutils",
463*d9f75844SAndroid Build Coastguard Worker    "../rtc_base/system:file_wrapper",
464*d9f75844SAndroid Build Coastguard Worker  ]
465*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
466*d9f75844SAndroid Build Coastguard Worker
467*d9f75844SAndroid Build Coastguard Worker  if (!is_ios) {
468*d9f75844SAndroid Build Coastguard Worker    deps += [ "//third_party:jpeg" ]
469*d9f75844SAndroid Build Coastguard Worker    sources += [ "testsupport/jpeg_frame_writer.cc" ]
470*d9f75844SAndroid Build Coastguard Worker  } else {
471*d9f75844SAndroid Build Coastguard Worker    sources += [ "testsupport/jpeg_frame_writer_ios.cc" ]
472*d9f75844SAndroid Build Coastguard Worker  }
473*d9f75844SAndroid Build Coastguard Worker}
474*d9f75844SAndroid Build Coastguard Worker
475*d9f75844SAndroid Build Coastguard Workerif (rtc_include_tests && enable_google_benchmarks) {
476*d9f75844SAndroid Build Coastguard Worker  rtc_library("benchmark_main") {
477*d9f75844SAndroid Build Coastguard Worker    testonly = true
478*d9f75844SAndroid Build Coastguard Worker    sources = [ "benchmark_main.cc" ]
479*d9f75844SAndroid Build Coastguard Worker
480*d9f75844SAndroid Build Coastguard Worker    deps = [ "//third_party/google_benchmark" ]
481*d9f75844SAndroid Build Coastguard Worker  }
482*d9f75844SAndroid Build Coastguard Worker}
483*d9f75844SAndroid Build Coastguard Worker
484*d9f75844SAndroid Build Coastguard Workerif (rtc_include_tests && !build_with_chromium) {
485*d9f75844SAndroid Build Coastguard Worker  rtc_library("resources_dir_flag") {
486*d9f75844SAndroid Build Coastguard Worker    testonly = true
487*d9f75844SAndroid Build Coastguard Worker    visibility = [ "*" ]
488*d9f75844SAndroid Build Coastguard Worker    sources = [
489*d9f75844SAndroid Build Coastguard Worker      "testsupport/resources_dir_flag.cc",
490*d9f75844SAndroid Build Coastguard Worker      "testsupport/resources_dir_flag.h",
491*d9f75844SAndroid Build Coastguard Worker    ]
492*d9f75844SAndroid Build Coastguard Worker    absl_deps = [ "//third_party/abseil-cpp/absl/flags:flag" ]
493*d9f75844SAndroid Build Coastguard Worker  }
494*d9f75844SAndroid Build Coastguard Worker
495*d9f75844SAndroid Build Coastguard Worker  rtc_library("test_flags") {
496*d9f75844SAndroid Build Coastguard Worker    visibility = [ "*" ]
497*d9f75844SAndroid Build Coastguard Worker    testonly = true
498*d9f75844SAndroid Build Coastguard Worker    sources = [
499*d9f75844SAndroid Build Coastguard Worker      "test_flags.cc",
500*d9f75844SAndroid Build Coastguard Worker      "test_flags.h",
501*d9f75844SAndroid Build Coastguard Worker    ]
502*d9f75844SAndroid Build Coastguard Worker    absl_deps = [ "//third_party/abseil-cpp/absl/flags:flag" ]
503*d9f75844SAndroid Build Coastguard Worker  }
504*d9f75844SAndroid Build Coastguard Worker
505*d9f75844SAndroid Build Coastguard Worker  rtc_library("test_main_lib") {
506*d9f75844SAndroid Build Coastguard Worker    visibility = [ "*" ]
507*d9f75844SAndroid Build Coastguard Worker    testonly = true
508*d9f75844SAndroid Build Coastguard Worker    sources = [
509*d9f75844SAndroid Build Coastguard Worker      "test_main_lib.cc",
510*d9f75844SAndroid Build Coastguard Worker      "test_main_lib.h",
511*d9f75844SAndroid Build Coastguard Worker    ]
512*d9f75844SAndroid Build Coastguard Worker
513*d9f75844SAndroid Build Coastguard Worker    deps = [
514*d9f75844SAndroid Build Coastguard Worker      ":field_trial",
515*d9f75844SAndroid Build Coastguard Worker      ":perf_test",
516*d9f75844SAndroid Build Coastguard Worker      ":resources_dir_flag",
517*d9f75844SAndroid Build Coastguard Worker      ":test_flags",
518*d9f75844SAndroid Build Coastguard Worker      ":test_support",
519*d9f75844SAndroid Build Coastguard Worker      "../api/test/metrics:chrome_perf_dashboard_metrics_exporter",
520*d9f75844SAndroid Build Coastguard Worker      "../api/test/metrics:global_metrics_logger_and_exporter",
521*d9f75844SAndroid Build Coastguard Worker      "../api/test/metrics:metrics_exporter",
522*d9f75844SAndroid Build Coastguard Worker      "../api/test/metrics:metrics_set_proto_file_exporter",
523*d9f75844SAndroid Build Coastguard Worker      "../api/test/metrics:print_result_proxy_metrics_exporter",
524*d9f75844SAndroid Build Coastguard Worker      "../api/test/metrics:stdout_metrics_exporter",
525*d9f75844SAndroid Build Coastguard Worker      "../rtc_base",
526*d9f75844SAndroid Build Coastguard Worker      "../rtc_base:checks",
527*d9f75844SAndroid Build Coastguard Worker      "../rtc_base:event_tracer",
528*d9f75844SAndroid Build Coastguard Worker      "../rtc_base:logging",
529*d9f75844SAndroid Build Coastguard Worker      "../rtc_base:threading",
530*d9f75844SAndroid Build Coastguard Worker      "../system_wrappers:field_trial",
531*d9f75844SAndroid Build Coastguard Worker      "../system_wrappers:metrics",
532*d9f75844SAndroid Build Coastguard Worker    ]
533*d9f75844SAndroid Build Coastguard Worker    absl_deps = [
534*d9f75844SAndroid Build Coastguard Worker      "//third_party/abseil-cpp/absl/flags:flag",
535*d9f75844SAndroid Build Coastguard Worker      "//third_party/abseil-cpp/absl/memory",
536*d9f75844SAndroid Build Coastguard Worker      "//third_party/abseil-cpp/absl/strings:strings",
537*d9f75844SAndroid Build Coastguard Worker      "//third_party/abseil-cpp/absl/types:optional",
538*d9f75844SAndroid Build Coastguard Worker    ]
539*d9f75844SAndroid Build Coastguard Worker  }
540*d9f75844SAndroid Build Coastguard Worker
541*d9f75844SAndroid Build Coastguard Worker  rtc_library("test_main") {
542*d9f75844SAndroid Build Coastguard Worker    visibility = [ "*" ]
543*d9f75844SAndroid Build Coastguard Worker    testonly = true
544*d9f75844SAndroid Build Coastguard Worker    sources = [ "test_main.cc" ]
545*d9f75844SAndroid Build Coastguard Worker
546*d9f75844SAndroid Build Coastguard Worker    deps = [
547*d9f75844SAndroid Build Coastguard Worker      ":test_main_lib",
548*d9f75844SAndroid Build Coastguard Worker      ":test_support",
549*d9f75844SAndroid Build Coastguard Worker    ]
550*d9f75844SAndroid Build Coastguard Worker
551*d9f75844SAndroid Build Coastguard Worker    absl_deps = [
552*d9f75844SAndroid Build Coastguard Worker      "//third_party/abseil-cpp/absl/debugging:failure_signal_handler",
553*d9f75844SAndroid Build Coastguard Worker      "//third_party/abseil-cpp/absl/debugging:symbolize",
554*d9f75844SAndroid Build Coastguard Worker      "//third_party/abseil-cpp/absl/flags:parse",
555*d9f75844SAndroid Build Coastguard Worker    ]
556*d9f75844SAndroid Build Coastguard Worker  }
557*d9f75844SAndroid Build Coastguard Worker
558*d9f75844SAndroid Build Coastguard Worker  rtc_library("test_support_test_artifacts") {
559*d9f75844SAndroid Build Coastguard Worker    testonly = true
560*d9f75844SAndroid Build Coastguard Worker    sources = [
561*d9f75844SAndroid Build Coastguard Worker      "testsupport/test_artifacts.cc",
562*d9f75844SAndroid Build Coastguard Worker      "testsupport/test_artifacts.h",
563*d9f75844SAndroid Build Coastguard Worker    ]
564*d9f75844SAndroid Build Coastguard Worker    deps = [
565*d9f75844SAndroid Build Coastguard Worker      ":fileutils",
566*d9f75844SAndroid Build Coastguard Worker      "../rtc_base:logging",
567*d9f75844SAndroid Build Coastguard Worker      "../rtc_base/system:file_wrapper",
568*d9f75844SAndroid Build Coastguard Worker    ]
569*d9f75844SAndroid Build Coastguard Worker    absl_deps = [
570*d9f75844SAndroid Build Coastguard Worker      "//third_party/abseil-cpp/absl/flags:flag",
571*d9f75844SAndroid Build Coastguard Worker      "//third_party/abseil-cpp/absl/flags:parse",
572*d9f75844SAndroid Build Coastguard Worker    ]
573*d9f75844SAndroid Build Coastguard Worker  }
574*d9f75844SAndroid Build Coastguard Worker
575*d9f75844SAndroid Build Coastguard Worker  test_support_unittests_resources = [
576*d9f75844SAndroid Build Coastguard Worker    "../resources/foreman_cif_short.yuv",
577*d9f75844SAndroid Build Coastguard Worker    "../resources/video_coding/frame-ethernet-ii.pcap",
578*d9f75844SAndroid Build Coastguard Worker    "../resources/video_coding/frame-loopback.pcap",
579*d9f75844SAndroid Build Coastguard Worker    "../resources/video_coding/pltype103.rtp",
580*d9f75844SAndroid Build Coastguard Worker    "../resources/video_coding/pltype103_header_only.rtp",
581*d9f75844SAndroid Build Coastguard Worker    "../resources/video_coding/ssrcs-2.pcap",
582*d9f75844SAndroid Build Coastguard Worker    "../resources/video_coding/ssrcs-3.pcap",
583*d9f75844SAndroid Build Coastguard Worker  ]
584*d9f75844SAndroid Build Coastguard Worker
585*d9f75844SAndroid Build Coastguard Worker  if (is_ios) {
586*d9f75844SAndroid Build Coastguard Worker    bundle_data("test_support_unittests_bundle_data") {
587*d9f75844SAndroid Build Coastguard Worker      testonly = true
588*d9f75844SAndroid Build Coastguard Worker      sources = test_support_unittests_resources
589*d9f75844SAndroid Build Coastguard Worker      outputs = [ "{{bundle_resources_dir}}/{{source_file_part}}" ]
590*d9f75844SAndroid Build Coastguard Worker    }
591*d9f75844SAndroid Build Coastguard Worker  }
592*d9f75844SAndroid Build Coastguard Worker
593*d9f75844SAndroid Build Coastguard Worker  rtc_library("fixed_fps_video_frame_writer_adapter_test") {
594*d9f75844SAndroid Build Coastguard Worker    testonly = true
595*d9f75844SAndroid Build Coastguard Worker    sources = [ "testsupport/fixed_fps_video_frame_writer_adapter_test.cc" ]
596*d9f75844SAndroid Build Coastguard Worker    deps = [
597*d9f75844SAndroid Build Coastguard Worker      ":fixed_fps_video_frame_writer_adapter",
598*d9f75844SAndroid Build Coastguard Worker      ":test_support",
599*d9f75844SAndroid Build Coastguard Worker      ":video_test_support",
600*d9f75844SAndroid Build Coastguard Worker      "../api/units:time_delta",
601*d9f75844SAndroid Build Coastguard Worker      "../api/units:timestamp",
602*d9f75844SAndroid Build Coastguard Worker      "../api/video:video_frame",
603*d9f75844SAndroid Build Coastguard Worker      "../rtc_base/synchronization:mutex",
604*d9f75844SAndroid Build Coastguard Worker      "time_controller",
605*d9f75844SAndroid Build Coastguard Worker    ]
606*d9f75844SAndroid Build Coastguard Worker    absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
607*d9f75844SAndroid Build Coastguard Worker  }
608*d9f75844SAndroid Build Coastguard Worker
609*d9f75844SAndroid Build Coastguard Worker  rtc_test("test_support_unittests") {
610*d9f75844SAndroid Build Coastguard Worker    deps = [
611*d9f75844SAndroid Build Coastguard Worker      ":call_config_utils",
612*d9f75844SAndroid Build Coastguard Worker      ":copy_to_file_audio_capturer_unittest",
613*d9f75844SAndroid Build Coastguard Worker      ":direct_transport",
614*d9f75844SAndroid Build Coastguard Worker      ":fake_video_codecs",
615*d9f75844SAndroid Build Coastguard Worker      ":fileutils",
616*d9f75844SAndroid Build Coastguard Worker      ":fileutils_unittests",
617*d9f75844SAndroid Build Coastguard Worker      ":fixed_fps_video_frame_writer_adapter_test",
618*d9f75844SAndroid Build Coastguard Worker      ":frame_generator_impl",
619*d9f75844SAndroid Build Coastguard Worker      ":perf_test",
620*d9f75844SAndroid Build Coastguard Worker      ":rtc_expect_death",
621*d9f75844SAndroid Build Coastguard Worker      ":rtp_test_utils",
622*d9f75844SAndroid Build Coastguard Worker      ":run_loop",
623*d9f75844SAndroid Build Coastguard Worker      ":scoped_key_value_config",
624*d9f75844SAndroid Build Coastguard Worker      ":test_main",
625*d9f75844SAndroid Build Coastguard Worker      ":test_support",
626*d9f75844SAndroid Build Coastguard Worker      ":test_support_test_artifacts",
627*d9f75844SAndroid Build Coastguard Worker      ":video_test_common",
628*d9f75844SAndroid Build Coastguard Worker      ":video_test_support",
629*d9f75844SAndroid Build Coastguard Worker      "../api:array_view",
630*d9f75844SAndroid Build Coastguard Worker      "../api:create_frame_generator",
631*d9f75844SAndroid Build Coastguard Worker      "../api:create_simulcast_test_fixture_api",
632*d9f75844SAndroid Build Coastguard Worker      "../api:frame_generator_api",
633*d9f75844SAndroid Build Coastguard Worker      "../api:scoped_refptr",
634*d9f75844SAndroid Build Coastguard Worker      "../api:simulcast_test_fixture_api",
635*d9f75844SAndroid Build Coastguard Worker      "../api/task_queue:task_queue_test",
636*d9f75844SAndroid Build Coastguard Worker      "../api/test/video:function_video_factory",
637*d9f75844SAndroid Build Coastguard Worker      "../api/test/video:video_frame_writer",
638*d9f75844SAndroid Build Coastguard Worker      "../api/units:time_delta",
639*d9f75844SAndroid Build Coastguard Worker      "../api/video:encoded_image",
640*d9f75844SAndroid Build Coastguard Worker      "../api/video:video_frame",
641*d9f75844SAndroid Build Coastguard Worker      "../api/video_codecs:video_codecs_api",
642*d9f75844SAndroid Build Coastguard Worker      "../call:video_stream_api",
643*d9f75844SAndroid Build Coastguard Worker      "../common_video",
644*d9f75844SAndroid Build Coastguard Worker      "../media:rtc_media_base",
645*d9f75844SAndroid Build Coastguard Worker      "../modules/rtp_rtcp:rtp_rtcp_format",
646*d9f75844SAndroid Build Coastguard Worker      "../modules/video_coding:simulcast_test_fixture_impl",
647*d9f75844SAndroid Build Coastguard Worker      "../modules/video_coding:video_codec_interface",
648*d9f75844SAndroid Build Coastguard Worker      "../modules/video_coding:video_coding_utility",
649*d9f75844SAndroid Build Coastguard Worker      "../modules/video_coding:webrtc_h264",
650*d9f75844SAndroid Build Coastguard Worker      "../modules/video_coding:webrtc_vp8",
651*d9f75844SAndroid Build Coastguard Worker      "../modules/video_coding:webrtc_vp9",
652*d9f75844SAndroid Build Coastguard Worker      "../rtc_base:criticalsection",
653*d9f75844SAndroid Build Coastguard Worker      "../rtc_base:rtc_event",
654*d9f75844SAndroid Build Coastguard Worker      "../rtc_base:rtc_task_queue",
655*d9f75844SAndroid Build Coastguard Worker      "../rtc_base/synchronization:mutex",
656*d9f75844SAndroid Build Coastguard Worker      "../rtc_base/system:file_wrapper",
657*d9f75844SAndroid Build Coastguard Worker      "pc/e2e:e2e_unittests",
658*d9f75844SAndroid Build Coastguard Worker      "pc/e2e/analyzer/video:video_analyzer_unittests",
659*d9f75844SAndroid Build Coastguard Worker      "peer_scenario/tests",
660*d9f75844SAndroid Build Coastguard Worker      "scenario:scenario_unittests",
661*d9f75844SAndroid Build Coastguard Worker      "time_controller:time_controller",
662*d9f75844SAndroid Build Coastguard Worker      "time_controller:time_controller_unittests",
663*d9f75844SAndroid Build Coastguard Worker    ]
664*d9f75844SAndroid Build Coastguard Worker    absl_deps = [
665*d9f75844SAndroid Build Coastguard Worker      "//third_party/abseil-cpp/absl/flags:flag",
666*d9f75844SAndroid Build Coastguard Worker      "//third_party/abseil-cpp/absl/strings",
667*d9f75844SAndroid Build Coastguard Worker      "//third_party/abseil-cpp/absl/types:optional",
668*d9f75844SAndroid Build Coastguard Worker    ]
669*d9f75844SAndroid Build Coastguard Worker    sources = [
670*d9f75844SAndroid Build Coastguard Worker      "call_config_utils_unittest.cc",
671*d9f75844SAndroid Build Coastguard Worker      "direct_transport_unittest.cc",
672*d9f75844SAndroid Build Coastguard Worker      "fake_vp8_encoder_unittest.cc",
673*d9f75844SAndroid Build Coastguard Worker      "frame_generator_capturer_unittest.cc",
674*d9f75844SAndroid Build Coastguard Worker      "frame_generator_unittest.cc",
675*d9f75844SAndroid Build Coastguard Worker      "rtp_file_reader_unittest.cc",
676*d9f75844SAndroid Build Coastguard Worker      "rtp_file_writer_unittest.cc",
677*d9f75844SAndroid Build Coastguard Worker      "run_loop_unittest.cc",
678*d9f75844SAndroid Build Coastguard Worker      "testsupport/ivf_video_frame_generator_unittest.cc",
679*d9f75844SAndroid Build Coastguard Worker      "testsupport/perf_test_unittest.cc",
680*d9f75844SAndroid Build Coastguard Worker      "testsupport/test_artifacts_unittest.cc",
681*d9f75844SAndroid Build Coastguard Worker      "testsupport/video_frame_writer_unittest.cc",
682*d9f75844SAndroid Build Coastguard Worker      "testsupport/y4m_frame_reader_unittest.cc",
683*d9f75844SAndroid Build Coastguard Worker      "testsupport/y4m_frame_writer_unittest.cc",
684*d9f75844SAndroid Build Coastguard Worker      "testsupport/yuv_frame_reader_unittest.cc",
685*d9f75844SAndroid Build Coastguard Worker      "testsupport/yuv_frame_writer_unittest.cc",
686*d9f75844SAndroid Build Coastguard Worker    ]
687*d9f75844SAndroid Build Coastguard Worker
688*d9f75844SAndroid Build Coastguard Worker    if (rtc_enable_protobuf) {
689*d9f75844SAndroid Build Coastguard Worker      sources += [ "testsupport/perf_test_histogram_writer_unittest.cc" ]
690*d9f75844SAndroid Build Coastguard Worker      deps += [ "//third_party/catapult/tracing/tracing:histogram" ]
691*d9f75844SAndroid Build Coastguard Worker    }
692*d9f75844SAndroid Build Coastguard Worker
693*d9f75844SAndroid Build Coastguard Worker    data = test_support_unittests_resources
694*d9f75844SAndroid Build Coastguard Worker    if (is_android) {
695*d9f75844SAndroid Build Coastguard Worker      deps += [ "//testing/android/native_test:native_test_support" ]
696*d9f75844SAndroid Build Coastguard Worker      shard_timeout = 900
697*d9f75844SAndroid Build Coastguard Worker    }
698*d9f75844SAndroid Build Coastguard Worker
699*d9f75844SAndroid Build Coastguard Worker    if (is_ios) {
700*d9f75844SAndroid Build Coastguard Worker      deps += [ ":test_support_unittests_bundle_data" ]
701*d9f75844SAndroid Build Coastguard Worker    }
702*d9f75844SAndroid Build Coastguard Worker
703*d9f75844SAndroid Build Coastguard Worker    if (!is_android) {
704*d9f75844SAndroid Build Coastguard Worker      # This is needed in order to avoid:
705*d9f75844SAndroid Build Coastguard Worker      # undefined symbol: webrtc::videocapturemodule::VideoCaptureImpl::Create
706*d9f75844SAndroid Build Coastguard Worker      deps += [ "../modules/video_capture:video_capture_internal_impl" ]
707*d9f75844SAndroid Build Coastguard Worker    }
708*d9f75844SAndroid Build Coastguard Worker  }
709*d9f75844SAndroid Build Coastguard Worker}
710*d9f75844SAndroid Build Coastguard Worker
711*d9f75844SAndroid Build Coastguard Workerif (is_ios) {
712*d9f75844SAndroid Build Coastguard Worker  rtc_library("fileutils_ios_objc") {
713*d9f75844SAndroid Build Coastguard Worker    visibility = [
714*d9f75844SAndroid Build Coastguard Worker      ":fileutils",
715*d9f75844SAndroid Build Coastguard Worker      ":fileutils_override_impl",
716*d9f75844SAndroid Build Coastguard Worker    ]
717*d9f75844SAndroid Build Coastguard Worker    sources = [
718*d9f75844SAndroid Build Coastguard Worker      "testsupport/ios_file_utils.h",
719*d9f75844SAndroid Build Coastguard Worker      "testsupport/ios_file_utils.mm",
720*d9f75844SAndroid Build Coastguard Worker    ]
721*d9f75844SAndroid Build Coastguard Worker    deps = [
722*d9f75844SAndroid Build Coastguard Worker      "../rtc_base:checks",
723*d9f75844SAndroid Build Coastguard Worker      "../sdk:helpers_objc",
724*d9f75844SAndroid Build Coastguard Worker    ]
725*d9f75844SAndroid Build Coastguard Worker    absl_deps = [ "//third_party/abseil-cpp/absl/strings:strings" ]
726*d9f75844SAndroid Build Coastguard Worker  }
727*d9f75844SAndroid Build Coastguard Worker}
728*d9f75844SAndroid Build Coastguard Worker
729*d9f75844SAndroid Build Coastguard Workerif (is_mac) {
730*d9f75844SAndroid Build Coastguard Worker  rtc_library("fileutils_mac_objc") {
731*d9f75844SAndroid Build Coastguard Worker    visibility = [
732*d9f75844SAndroid Build Coastguard Worker      ":fileutils",
733*d9f75844SAndroid Build Coastguard Worker      ":fileutils_override_impl",
734*d9f75844SAndroid Build Coastguard Worker    ]
735*d9f75844SAndroid Build Coastguard Worker    sources = [
736*d9f75844SAndroid Build Coastguard Worker      "testsupport/mac_file_utils.h",
737*d9f75844SAndroid Build Coastguard Worker      "testsupport/mac_file_utils.mm",
738*d9f75844SAndroid Build Coastguard Worker    ]
739*d9f75844SAndroid Build Coastguard Worker    deps = [ "../rtc_base:checks" ]
740*d9f75844SAndroid Build Coastguard Worker  }
741*d9f75844SAndroid Build Coastguard Worker}
742*d9f75844SAndroid Build Coastguard Worker
743*d9f75844SAndroid Build Coastguard Workerrtc_library("fileutils") {
744*d9f75844SAndroid Build Coastguard Worker  testonly = true
745*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
746*d9f75844SAndroid Build Coastguard Worker  sources = [
747*d9f75844SAndroid Build Coastguard Worker    "testsupport/file_utils.cc",
748*d9f75844SAndroid Build Coastguard Worker    "testsupport/file_utils.h",
749*d9f75844SAndroid Build Coastguard Worker  ]
750*d9f75844SAndroid Build Coastguard Worker  deps = [
751*d9f75844SAndroid Build Coastguard Worker    ":fileutils_override_api",
752*d9f75844SAndroid Build Coastguard Worker    ":fileutils_override_impl",
753*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
754*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:stringutils",
755*d9f75844SAndroid Build Coastguard Worker  ]
756*d9f75844SAndroid Build Coastguard Worker  absl_deps = [
757*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/base:core_headers",
758*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/strings:strings",
759*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/types:optional",
760*d9f75844SAndroid Build Coastguard Worker  ]
761*d9f75844SAndroid Build Coastguard Worker  if (is_ios) {
762*d9f75844SAndroid Build Coastguard Worker    deps += [ ":fileutils_ios_objc" ]
763*d9f75844SAndroid Build Coastguard Worker  }
764*d9f75844SAndroid Build Coastguard Worker  if (is_mac) {
765*d9f75844SAndroid Build Coastguard Worker    deps += [ ":fileutils_mac_objc" ]
766*d9f75844SAndroid Build Coastguard Worker  }
767*d9f75844SAndroid Build Coastguard Worker  if (is_win) {
768*d9f75844SAndroid Build Coastguard Worker    deps += [ "../rtc_base:win32" ]
769*d9f75844SAndroid Build Coastguard Worker  }
770*d9f75844SAndroid Build Coastguard Worker}
771*d9f75844SAndroid Build Coastguard Worker
772*d9f75844SAndroid Build Coastguard Worker# We separate header into own target to make it possible for downstream
773*d9f75844SAndroid Build Coastguard Worker# projects to override implementation.
774*d9f75844SAndroid Build Coastguard Workerrtc_source_set("fileutils_override_api") {
775*d9f75844SAndroid Build Coastguard Worker  testonly = true
776*d9f75844SAndroid Build Coastguard Worker  sources = [ "testsupport/file_utils_override.h" ]
777*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/strings:strings" ]
778*d9f75844SAndroid Build Coastguard Worker}
779*d9f75844SAndroid Build Coastguard Worker
780*d9f75844SAndroid Build Coastguard Workerrtc_library("fileutils_override_impl") {
781*d9f75844SAndroid Build Coastguard Worker  testonly = true
782*d9f75844SAndroid Build Coastguard Worker  visibility = [ ":fileutils" ]
783*d9f75844SAndroid Build Coastguard Worker  sources = [ "testsupport/file_utils_override.cc" ]
784*d9f75844SAndroid Build Coastguard Worker  deps = [
785*d9f75844SAndroid Build Coastguard Worker    ":fileutils_override_api",
786*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
787*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:macromagic",
788*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:stringutils",
789*d9f75844SAndroid Build Coastguard Worker  ]
790*d9f75844SAndroid Build Coastguard Worker  absl_deps = [
791*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/strings:strings",
792*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/types:optional",
793*d9f75844SAndroid Build Coastguard Worker  ]
794*d9f75844SAndroid Build Coastguard Worker  if (is_ios) {
795*d9f75844SAndroid Build Coastguard Worker    deps += [ ":fileutils_ios_objc" ]
796*d9f75844SAndroid Build Coastguard Worker  }
797*d9f75844SAndroid Build Coastguard Worker  if (is_mac) {
798*d9f75844SAndroid Build Coastguard Worker    deps += [ ":fileutils_mac_objc" ]
799*d9f75844SAndroid Build Coastguard Worker  }
800*d9f75844SAndroid Build Coastguard Worker  if (is_win) {
801*d9f75844SAndroid Build Coastguard Worker    deps += [ "../rtc_base:win32" ]
802*d9f75844SAndroid Build Coastguard Worker  }
803*d9f75844SAndroid Build Coastguard Worker}
804*d9f75844SAndroid Build Coastguard Worker
805*d9f75844SAndroid Build Coastguard Workerrtc_source_set("run_test") {
806*d9f75844SAndroid Build Coastguard Worker  testonly = true
807*d9f75844SAndroid Build Coastguard Worker  if (is_mac) {
808*d9f75844SAndroid Build Coastguard Worker    public_deps = [ ":run_test_objc" ]  # no-presubmit-check TODO(webrtc:8603)
809*d9f75844SAndroid Build Coastguard Worker  } else {
810*d9f75844SAndroid Build Coastguard Worker    public_deps =  # no-presubmit-check TODO(webrtc:8603)
811*d9f75844SAndroid Build Coastguard Worker        [ ":run_test_generic" ]
812*d9f75844SAndroid Build Coastguard Worker  }
813*d9f75844SAndroid Build Coastguard Worker}
814*d9f75844SAndroid Build Coastguard Worker
815*d9f75844SAndroid Build Coastguard Workerrtc_source_set("run_test_interface") {
816*d9f75844SAndroid Build Coastguard Worker  sources = [ "run_test.h" ]
817*d9f75844SAndroid Build Coastguard Worker}
818*d9f75844SAndroid Build Coastguard Worker
819*d9f75844SAndroid Build Coastguard Workerif (is_mac) {
820*d9f75844SAndroid Build Coastguard Worker  rtc_library("run_test_objc") {
821*d9f75844SAndroid Build Coastguard Worker    testonly = true
822*d9f75844SAndroid Build Coastguard Worker    visibility = [ ":run_test" ]
823*d9f75844SAndroid Build Coastguard Worker    sources = [ "mac/run_test.mm" ]
824*d9f75844SAndroid Build Coastguard Worker    deps = [ ":run_test_interface" ]
825*d9f75844SAndroid Build Coastguard Worker  }
826*d9f75844SAndroid Build Coastguard Worker}
827*d9f75844SAndroid Build Coastguard Worker
828*d9f75844SAndroid Build Coastguard Workerrtc_library("run_test_generic") {
829*d9f75844SAndroid Build Coastguard Worker  testonly = true
830*d9f75844SAndroid Build Coastguard Worker  visibility = [ ":run_test" ]
831*d9f75844SAndroid Build Coastguard Worker  sources = [ "run_test.cc" ]
832*d9f75844SAndroid Build Coastguard Worker  deps = [ ":run_test_interface" ]
833*d9f75844SAndroid Build Coastguard Worker}
834*d9f75844SAndroid Build Coastguard Worker
835*d9f75844SAndroid Build Coastguard Workerrtc_library("fileutils_unittests") {
836*d9f75844SAndroid Build Coastguard Worker  testonly = true
837*d9f75844SAndroid Build Coastguard Worker  visibility = [ ":*" ]  # Only targets in this file can depend on this.
838*d9f75844SAndroid Build Coastguard Worker  sources = [ "testsupport/file_utils_unittest.cc" ]
839*d9f75844SAndroid Build Coastguard Worker  deps = [
840*d9f75844SAndroid Build Coastguard Worker    ":fileutils",
841*d9f75844SAndroid Build Coastguard Worker    ":test_support",
842*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
843*d9f75844SAndroid Build Coastguard Worker  ]
844*d9f75844SAndroid Build Coastguard Worker  absl_deps = [
845*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/strings:strings",
846*d9f75844SAndroid Build Coastguard Worker    "//third_party/abseil-cpp/absl/types:optional",
847*d9f75844SAndroid Build Coastguard Worker  ]
848*d9f75844SAndroid Build Coastguard Worker}
849*d9f75844SAndroid Build Coastguard Worker
850*d9f75844SAndroid Build Coastguard Workerrtc_library("direct_transport") {
851*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
852*d9f75844SAndroid Build Coastguard Worker  testonly = true
853*d9f75844SAndroid Build Coastguard Worker  sources = [
854*d9f75844SAndroid Build Coastguard Worker    "direct_transport.cc",
855*d9f75844SAndroid Build Coastguard Worker    "direct_transport.h",
856*d9f75844SAndroid Build Coastguard Worker  ]
857*d9f75844SAndroid Build Coastguard Worker  deps = [
858*d9f75844SAndroid Build Coastguard Worker    "../api:sequence_checker",
859*d9f75844SAndroid Build Coastguard Worker    "../api:simulated_network_api",
860*d9f75844SAndroid Build Coastguard Worker    "../api:transport_api",
861*d9f75844SAndroid Build Coastguard Worker    "../api/task_queue",
862*d9f75844SAndroid Build Coastguard Worker    "../api/units:time_delta",
863*d9f75844SAndroid Build Coastguard Worker    "../call:call_interfaces",
864*d9f75844SAndroid Build Coastguard Worker    "../call:simulated_packet_receiver",
865*d9f75844SAndroid Build Coastguard Worker    "../modules/rtp_rtcp:rtp_rtcp_format",
866*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:macromagic",
867*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:timeutils",
868*d9f75844SAndroid Build Coastguard Worker    "../rtc_base/synchronization:mutex",
869*d9f75844SAndroid Build Coastguard Worker    "../rtc_base/task_utils:repeating_task",
870*d9f75844SAndroid Build Coastguard Worker  ]
871*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/memory" ]
872*d9f75844SAndroid Build Coastguard Worker  public_deps =  # no-presubmit-check TODO(webrtc:8603)
873*d9f75844SAndroid Build Coastguard Worker      [ "../call:fake_network" ]
874*d9f75844SAndroid Build Coastguard Worker}
875*d9f75844SAndroid Build Coastguard Worker
876*d9f75844SAndroid Build Coastguard Workerrtc_library("fake_video_codecs") {
877*d9f75844SAndroid Build Coastguard Worker  allow_poison = [ "software_video_codecs" ]
878*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
879*d9f75844SAndroid Build Coastguard Worker  sources = [
880*d9f75844SAndroid Build Coastguard Worker    "configurable_frame_size_encoder.cc",
881*d9f75844SAndroid Build Coastguard Worker    "configurable_frame_size_encoder.h",
882*d9f75844SAndroid Build Coastguard Worker    "fake_decoder.cc",
883*d9f75844SAndroid Build Coastguard Worker    "fake_decoder.h",
884*d9f75844SAndroid Build Coastguard Worker    "fake_encoder.cc",
885*d9f75844SAndroid Build Coastguard Worker    "fake_encoder.h",
886*d9f75844SAndroid Build Coastguard Worker    "fake_vp8_decoder.cc",
887*d9f75844SAndroid Build Coastguard Worker    "fake_vp8_decoder.h",
888*d9f75844SAndroid Build Coastguard Worker    "fake_vp8_encoder.cc",
889*d9f75844SAndroid Build Coastguard Worker    "fake_vp8_encoder.h",
890*d9f75844SAndroid Build Coastguard Worker  ]
891*d9f75844SAndroid Build Coastguard Worker  deps = [
892*d9f75844SAndroid Build Coastguard Worker    "../api:fec_controller_api",
893*d9f75844SAndroid Build Coastguard Worker    "../api:scoped_refptr",
894*d9f75844SAndroid Build Coastguard Worker    "../api:sequence_checker",
895*d9f75844SAndroid Build Coastguard Worker    "../api/task_queue",
896*d9f75844SAndroid Build Coastguard Worker    "../api/video:encoded_image",
897*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_bitrate_allocation",
898*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_frame",
899*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_rtp_headers",
900*d9f75844SAndroid Build Coastguard Worker    "../api/video_codecs:video_codecs_api",
901*d9f75844SAndroid Build Coastguard Worker    "../api/video_codecs:vp8_temporal_layers_factory",
902*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:codec_globals_headers",
903*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:video_codec_interface",
904*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:video_coding_utility",
905*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
906*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:criticalsection",
907*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:macromagic",
908*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:rtc_task_queue",
909*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:timeutils",
910*d9f75844SAndroid Build Coastguard Worker    "../rtc_base/synchronization:mutex",
911*d9f75844SAndroid Build Coastguard Worker    "../system_wrappers",
912*d9f75844SAndroid Build Coastguard Worker  ]
913*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
914*d9f75844SAndroid Build Coastguard Worker}
915*d9f75844SAndroid Build Coastguard Worker
916*d9f75844SAndroid Build Coastguard Workerrtc_library("null_transport") {
917*d9f75844SAndroid Build Coastguard Worker  testonly = true
918*d9f75844SAndroid Build Coastguard Worker  sources = [
919*d9f75844SAndroid Build Coastguard Worker    "null_transport.cc",
920*d9f75844SAndroid Build Coastguard Worker    "null_transport.h",
921*d9f75844SAndroid Build Coastguard Worker  ]
922*d9f75844SAndroid Build Coastguard Worker  deps = [ "../api:transport_api" ]
923*d9f75844SAndroid Build Coastguard Worker}
924*d9f75844SAndroid Build Coastguard Worker
925*d9f75844SAndroid Build Coastguard Workerrtc_library("encoder_settings") {
926*d9f75844SAndroid Build Coastguard Worker  testonly = true
927*d9f75844SAndroid Build Coastguard Worker  sources = [
928*d9f75844SAndroid Build Coastguard Worker    "encoder_settings.cc",
929*d9f75844SAndroid Build Coastguard Worker    "encoder_settings.h",
930*d9f75844SAndroid Build Coastguard Worker  ]
931*d9f75844SAndroid Build Coastguard Worker  deps = [
932*d9f75844SAndroid Build Coastguard Worker    "../api:scoped_refptr",
933*d9f75844SAndroid Build Coastguard Worker    "../api/video_codecs:video_codecs_api",
934*d9f75844SAndroid Build Coastguard Worker    "../call:rtp_interfaces",
935*d9f75844SAndroid Build Coastguard Worker    "../call:video_stream_api",
936*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
937*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:refcount",
938*d9f75844SAndroid Build Coastguard Worker    "../video/config:encoder_config",
939*d9f75844SAndroid Build Coastguard Worker  ]
940*d9f75844SAndroid Build Coastguard Worker}
941*d9f75844SAndroid Build Coastguard Worker
942*d9f75844SAndroid Build Coastguard Workerrtc_library("rtc_expect_death") {
943*d9f75844SAndroid Build Coastguard Worker  testonly = true
944*d9f75844SAndroid Build Coastguard Worker  sources = [ "testsupport/rtc_expect_death.h" ]
945*d9f75844SAndroid Build Coastguard Worker  deps = [ ":test_support" ]
946*d9f75844SAndroid Build Coastguard Worker}
947*d9f75844SAndroid Build Coastguard Worker
948*d9f75844SAndroid Build Coastguard Workerrtc_library("run_loop") {
949*d9f75844SAndroid Build Coastguard Worker  testonly = true
950*d9f75844SAndroid Build Coastguard Worker  sources = [
951*d9f75844SAndroid Build Coastguard Worker    "run_loop.cc",
952*d9f75844SAndroid Build Coastguard Worker    "run_loop.h",
953*d9f75844SAndroid Build Coastguard Worker  ]
954*d9f75844SAndroid Build Coastguard Worker  deps = [
955*d9f75844SAndroid Build Coastguard Worker    "../api/task_queue",
956*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:threading",
957*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:timeutils",
958*d9f75844SAndroid Build Coastguard Worker  ]
959*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/functional:any_invocable" ]
960*d9f75844SAndroid Build Coastguard Worker}
961*d9f75844SAndroid Build Coastguard Worker
962*d9f75844SAndroid Build Coastguard Workerrtc_library("test_common") {
963*d9f75844SAndroid Build Coastguard Worker  testonly = true
964*d9f75844SAndroid Build Coastguard Worker  sources = [
965*d9f75844SAndroid Build Coastguard Worker    "call_test.cc",
966*d9f75844SAndroid Build Coastguard Worker    "call_test.h",
967*d9f75844SAndroid Build Coastguard Worker    "drifting_clock.cc",
968*d9f75844SAndroid Build Coastguard Worker    "drifting_clock.h",
969*d9f75844SAndroid Build Coastguard Worker    "layer_filtering_transport.cc",
970*d9f75844SAndroid Build Coastguard Worker    "layer_filtering_transport.h",
971*d9f75844SAndroid Build Coastguard Worker    "rtp_rtcp_observer.h",
972*d9f75844SAndroid Build Coastguard Worker  ]
973*d9f75844SAndroid Build Coastguard Worker
974*d9f75844SAndroid Build Coastguard Worker  deps = [
975*d9f75844SAndroid Build Coastguard Worker    ":direct_transport",
976*d9f75844SAndroid Build Coastguard Worker    ":encoder_settings",
977*d9f75844SAndroid Build Coastguard Worker    ":fake_video_codecs",
978*d9f75844SAndroid Build Coastguard Worker    ":fileutils",
979*d9f75844SAndroid Build Coastguard Worker    ":mock_transport",
980*d9f75844SAndroid Build Coastguard Worker    ":run_loop",
981*d9f75844SAndroid Build Coastguard Worker    ":scoped_key_value_config",
982*d9f75844SAndroid Build Coastguard Worker    ":test_support",
983*d9f75844SAndroid Build Coastguard Worker    ":video_test_common",
984*d9f75844SAndroid Build Coastguard Worker    "../api:array_view",
985*d9f75844SAndroid Build Coastguard Worker    "../api:create_frame_generator",
986*d9f75844SAndroid Build Coastguard Worker    "../api:frame_generator_api",
987*d9f75844SAndroid Build Coastguard Worker    "../api:rtp_headers",
988*d9f75844SAndroid Build Coastguard Worker    "../api:rtp_parameters",
989*d9f75844SAndroid Build Coastguard Worker    "../api:simulated_network_api",
990*d9f75844SAndroid Build Coastguard Worker    "../api:transport_api",
991*d9f75844SAndroid Build Coastguard Worker    "../api/audio_codecs:builtin_audio_decoder_factory",
992*d9f75844SAndroid Build Coastguard Worker    "../api/audio_codecs:builtin_audio_encoder_factory",
993*d9f75844SAndroid Build Coastguard Worker    "../api/rtc_event_log",
994*d9f75844SAndroid Build Coastguard Worker    "../api/task_queue",
995*d9f75844SAndroid Build Coastguard Worker    "../api/task_queue:default_task_queue_factory",
996*d9f75844SAndroid Build Coastguard Worker    "../api/test/video:function_video_factory",
997*d9f75844SAndroid Build Coastguard Worker    "../api/transport:field_trial_based_config",
998*d9f75844SAndroid Build Coastguard Worker    "../api/units:time_delta",
999*d9f75844SAndroid Build Coastguard Worker    "../api/video:builtin_video_bitrate_allocator_factory",
1000*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_bitrate_allocator_factory",
1001*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_frame",
1002*d9f75844SAndroid Build Coastguard Worker    "../api/video_codecs:video_codecs_api",
1003*d9f75844SAndroid Build Coastguard Worker    "../call",
1004*d9f75844SAndroid Build Coastguard Worker    "../call:call_interfaces",
1005*d9f75844SAndroid Build Coastguard Worker    "../call:fake_network",
1006*d9f75844SAndroid Build Coastguard Worker    "../call:simulated_network",
1007*d9f75844SAndroid Build Coastguard Worker    "../call:simulated_packet_receiver",
1008*d9f75844SAndroid Build Coastguard Worker    "../call:video_stream_api",
1009*d9f75844SAndroid Build Coastguard Worker    "../modules/audio_device:audio_device_impl",
1010*d9f75844SAndroid Build Coastguard Worker    "../modules/audio_mixer:audio_mixer_impl",
1011*d9f75844SAndroid Build Coastguard Worker    "../modules/rtp_rtcp",
1012*d9f75844SAndroid Build Coastguard Worker    "../modules/rtp_rtcp:rtp_rtcp_format",
1013*d9f75844SAndroid Build Coastguard Worker    "../modules/rtp_rtcp:rtp_video_header",
1014*d9f75844SAndroid Build Coastguard Worker    "../modules/video_coding:codec_globals_headers",
1015*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
1016*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:criticalsection",
1017*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:rtc_base",
1018*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:rtc_event",
1019*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:task_queue_for_test",
1020*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:threading",
1021*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:timeutils",
1022*d9f75844SAndroid Build Coastguard Worker    "../system_wrappers",
1023*d9f75844SAndroid Build Coastguard Worker    "../system_wrappers:field_trial",
1024*d9f75844SAndroid Build Coastguard Worker    "../video/config:encoder_config",
1025*d9f75844SAndroid Build Coastguard Worker  ]
1026*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
1027*d9f75844SAndroid Build Coastguard Worker  if (!is_android && !build_with_chromium) {
1028*d9f75844SAndroid Build Coastguard Worker    deps += [ "../modules/video_capture:video_capture_internal_impl" ]
1029*d9f75844SAndroid Build Coastguard Worker  }
1030*d9f75844SAndroid Build Coastguard Worker}
1031*d9f75844SAndroid Build Coastguard Worker
1032*d9f75844SAndroid Build Coastguard Workerrtc_library("mock_transport") {
1033*d9f75844SAndroid Build Coastguard Worker  testonly = true
1034*d9f75844SAndroid Build Coastguard Worker  sources = [
1035*d9f75844SAndroid Build Coastguard Worker    "mock_transport.cc",
1036*d9f75844SAndroid Build Coastguard Worker    "mock_transport.h",
1037*d9f75844SAndroid Build Coastguard Worker  ]
1038*d9f75844SAndroid Build Coastguard Worker  deps = [
1039*d9f75844SAndroid Build Coastguard Worker    ":test_support",
1040*d9f75844SAndroid Build Coastguard Worker    "../api:transport_api",
1041*d9f75844SAndroid Build Coastguard Worker  ]
1042*d9f75844SAndroid Build Coastguard Worker}
1043*d9f75844SAndroid Build Coastguard Worker
1044*d9f75844SAndroid Build Coastguard Workerrtc_source_set("test_renderer") {
1045*d9f75844SAndroid Build Coastguard Worker  public_deps =  # no-presubmit-check TODO(webrtc:8603)
1046*d9f75844SAndroid Build Coastguard Worker      [ ":test_renderer_generic" ]
1047*d9f75844SAndroid Build Coastguard Worker  testonly = true
1048*d9f75844SAndroid Build Coastguard Worker  if (is_mac) {
1049*d9f75844SAndroid Build Coastguard Worker    public_deps +=  # no-presubmit-check TODO(webrtc:8603)
1050*d9f75844SAndroid Build Coastguard Worker        [ ":test_renderer_objc" ]
1051*d9f75844SAndroid Build Coastguard Worker  }
1052*d9f75844SAndroid Build Coastguard Worker}
1053*d9f75844SAndroid Build Coastguard Worker
1054*d9f75844SAndroid Build Coastguard Workerrtc_library("mock_frame_transformer") {
1055*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
1056*d9f75844SAndroid Build Coastguard Worker  testonly = true
1057*d9f75844SAndroid Build Coastguard Worker  sources = [ "mock_frame_transformer.h" ]
1058*d9f75844SAndroid Build Coastguard Worker  deps = [
1059*d9f75844SAndroid Build Coastguard Worker    "../api:frame_transformer_interface",
1060*d9f75844SAndroid Build Coastguard Worker    "../test:test_support",
1061*d9f75844SAndroid Build Coastguard Worker  ]
1062*d9f75844SAndroid Build Coastguard Worker}
1063*d9f75844SAndroid Build Coastguard Worker
1064*d9f75844SAndroid Build Coastguard Workerrtc_library("mock_transformable_frame") {
1065*d9f75844SAndroid Build Coastguard Worker  visibility = [ "*" ]
1066*d9f75844SAndroid Build Coastguard Worker
1067*d9f75844SAndroid Build Coastguard Worker  testonly = true
1068*d9f75844SAndroid Build Coastguard Worker  sources = [ "mock_transformable_frame.h" ]
1069*d9f75844SAndroid Build Coastguard Worker
1070*d9f75844SAndroid Build Coastguard Worker  deps = [
1071*d9f75844SAndroid Build Coastguard Worker    "../api:frame_transformer_interface",
1072*d9f75844SAndroid Build Coastguard Worker    "../test:test_support",
1073*d9f75844SAndroid Build Coastguard Worker  ]
1074*d9f75844SAndroid Build Coastguard Worker}
1075*d9f75844SAndroid Build Coastguard Worker
1076*d9f75844SAndroid Build Coastguard Workerif (is_mac) {
1077*d9f75844SAndroid Build Coastguard Worker  rtc_library("test_renderer_objc") {
1078*d9f75844SAndroid Build Coastguard Worker    testonly = true
1079*d9f75844SAndroid Build Coastguard Worker    visibility = [ ":test_renderer" ]
1080*d9f75844SAndroid Build Coastguard Worker    sources = [
1081*d9f75844SAndroid Build Coastguard Worker      "mac/video_renderer_mac.h",
1082*d9f75844SAndroid Build Coastguard Worker      "mac/video_renderer_mac.mm",
1083*d9f75844SAndroid Build Coastguard Worker    ]
1084*d9f75844SAndroid Build Coastguard Worker    deps = [ ":test_renderer_generic" ]
1085*d9f75844SAndroid Build Coastguard Worker    frameworks = [
1086*d9f75844SAndroid Build Coastguard Worker      "Cocoa.framework",
1087*d9f75844SAndroid Build Coastguard Worker      "OpenGL.framework",
1088*d9f75844SAndroid Build Coastguard Worker      "CoreVideo.framework",
1089*d9f75844SAndroid Build Coastguard Worker    ]
1090*d9f75844SAndroid Build Coastguard Worker    defines = [ "GL_SILENCE_DEPRECATION" ]
1091*d9f75844SAndroid Build Coastguard Worker  }
1092*d9f75844SAndroid Build Coastguard Worker}
1093*d9f75844SAndroid Build Coastguard Worker
1094*d9f75844SAndroid Build Coastguard Workerrtc_library("test_renderer_generic") {
1095*d9f75844SAndroid Build Coastguard Worker  testonly = true
1096*d9f75844SAndroid Build Coastguard Worker  visibility = [
1097*d9f75844SAndroid Build Coastguard Worker    ":test_renderer",
1098*d9f75844SAndroid Build Coastguard Worker    ":test_renderer_objc",
1099*d9f75844SAndroid Build Coastguard Worker  ]
1100*d9f75844SAndroid Build Coastguard Worker  libs = []
1101*d9f75844SAndroid Build Coastguard Worker  sources = [
1102*d9f75844SAndroid Build Coastguard Worker    "video_renderer.cc",
1103*d9f75844SAndroid Build Coastguard Worker    "video_renderer.h",
1104*d9f75844SAndroid Build Coastguard Worker  ]
1105*d9f75844SAndroid Build Coastguard Worker  deps = [
1106*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_frame",
1107*d9f75844SAndroid Build Coastguard Worker    "../common_video",
1108*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:checks",
1109*d9f75844SAndroid Build Coastguard Worker  ]
1110*d9f75844SAndroid Build Coastguard Worker  if (is_win) {
1111*d9f75844SAndroid Build Coastguard Worker    sources += [
1112*d9f75844SAndroid Build Coastguard Worker      "win/d3d_renderer.cc",
1113*d9f75844SAndroid Build Coastguard Worker      "win/d3d_renderer.h",
1114*d9f75844SAndroid Build Coastguard Worker    ]
1115*d9f75844SAndroid Build Coastguard Worker    deps += [ "../api:scoped_refptr" ]
1116*d9f75844SAndroid Build Coastguard Worker  }
1117*d9f75844SAndroid Build Coastguard Worker  if (!((is_linux || is_chromeos) && rtc_use_x11) && !is_mac && !is_win) {
1118*d9f75844SAndroid Build Coastguard Worker    sources += [ "null_platform_renderer.cc" ]
1119*d9f75844SAndroid Build Coastguard Worker  }
1120*d9f75844SAndroid Build Coastguard Worker  if (((is_linux || is_chromeos) && rtc_use_x11) || is_mac) {
1121*d9f75844SAndroid Build Coastguard Worker    sources += [
1122*d9f75844SAndroid Build Coastguard Worker      "gl/gl_renderer.cc",
1123*d9f75844SAndroid Build Coastguard Worker      "gl/gl_renderer.h",
1124*d9f75844SAndroid Build Coastguard Worker    ]
1125*d9f75844SAndroid Build Coastguard Worker  }
1126*d9f75844SAndroid Build Coastguard Worker  if (is_mac) {
1127*d9f75844SAndroid Build Coastguard Worker    defines = [ "GL_SILENCE_DEPRECATION" ]
1128*d9f75844SAndroid Build Coastguard Worker  }
1129*d9f75844SAndroid Build Coastguard Worker
1130*d9f75844SAndroid Build Coastguard Worker  if ((is_linux || is_chromeos) && rtc_use_x11) {
1131*d9f75844SAndroid Build Coastguard Worker    sources += [
1132*d9f75844SAndroid Build Coastguard Worker      "linux/glx_renderer.cc",
1133*d9f75844SAndroid Build Coastguard Worker      "linux/glx_renderer.h",
1134*d9f75844SAndroid Build Coastguard Worker      "linux/video_renderer_linux.cc",
1135*d9f75844SAndroid Build Coastguard Worker    ]
1136*d9f75844SAndroid Build Coastguard Worker    libs += [
1137*d9f75844SAndroid Build Coastguard Worker      "Xext",
1138*d9f75844SAndroid Build Coastguard Worker      "X11",
1139*d9f75844SAndroid Build Coastguard Worker      "GL",
1140*d9f75844SAndroid Build Coastguard Worker    ]
1141*d9f75844SAndroid Build Coastguard Worker  }
1142*d9f75844SAndroid Build Coastguard Worker  if (is_android) {
1143*d9f75844SAndroid Build Coastguard Worker    libs += [
1144*d9f75844SAndroid Build Coastguard Worker      "GLESv2",
1145*d9f75844SAndroid Build Coastguard Worker      "log",
1146*d9f75844SAndroid Build Coastguard Worker    ]
1147*d9f75844SAndroid Build Coastguard Worker  }
1148*d9f75844SAndroid Build Coastguard Worker}
1149*d9f75844SAndroid Build Coastguard Worker
1150*d9f75844SAndroid Build Coastguard Workerrtc_library("audio_codec_mocks") {
1151*d9f75844SAndroid Build Coastguard Worker  testonly = true
1152*d9f75844SAndroid Build Coastguard Worker  sources = [
1153*d9f75844SAndroid Build Coastguard Worker    "mock_audio_decoder.cc",
1154*d9f75844SAndroid Build Coastguard Worker    "mock_audio_decoder.h",
1155*d9f75844SAndroid Build Coastguard Worker    "mock_audio_decoder_factory.h",
1156*d9f75844SAndroid Build Coastguard Worker    "mock_audio_encoder.cc",
1157*d9f75844SAndroid Build Coastguard Worker    "mock_audio_encoder.h",
1158*d9f75844SAndroid Build Coastguard Worker    "mock_audio_encoder_factory.h",
1159*d9f75844SAndroid Build Coastguard Worker  ]
1160*d9f75844SAndroid Build Coastguard Worker
1161*d9f75844SAndroid Build Coastguard Worker  deps = [
1162*d9f75844SAndroid Build Coastguard Worker    ":test_support",
1163*d9f75844SAndroid Build Coastguard Worker    "../api:array_view",
1164*d9f75844SAndroid Build Coastguard Worker    "../api:make_ref_counted",
1165*d9f75844SAndroid Build Coastguard Worker    "../api:scoped_refptr",
1166*d9f75844SAndroid Build Coastguard Worker    "../api/audio_codecs:audio_codecs_api",
1167*d9f75844SAndroid Build Coastguard Worker    "../api/audio_codecs:builtin_audio_decoder_factory",
1168*d9f75844SAndroid Build Coastguard Worker  ]
1169*d9f75844SAndroid Build Coastguard Worker}
1170*d9f75844SAndroid Build Coastguard Worker
1171*d9f75844SAndroid Build Coastguard Workerrtc_library("copy_to_file_audio_capturer") {
1172*d9f75844SAndroid Build Coastguard Worker  testonly = true
1173*d9f75844SAndroid Build Coastguard Worker  sources = [
1174*d9f75844SAndroid Build Coastguard Worker    "testsupport/copy_to_file_audio_capturer.cc",
1175*d9f75844SAndroid Build Coastguard Worker    "testsupport/copy_to_file_audio_capturer.h",
1176*d9f75844SAndroid Build Coastguard Worker  ]
1177*d9f75844SAndroid Build Coastguard Worker  deps = [
1178*d9f75844SAndroid Build Coastguard Worker    "../api:array_view",
1179*d9f75844SAndroid Build Coastguard Worker    "../common_audio",
1180*d9f75844SAndroid Build Coastguard Worker    "../modules/audio_device:audio_device_impl",
1181*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:buffer",
1182*d9f75844SAndroid Build Coastguard Worker  ]
1183*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
1184*d9f75844SAndroid Build Coastguard Worker}
1185*d9f75844SAndroid Build Coastguard Worker
1186*d9f75844SAndroid Build Coastguard Workerrtc_library("copy_to_file_audio_capturer_unittest") {
1187*d9f75844SAndroid Build Coastguard Worker  testonly = true
1188*d9f75844SAndroid Build Coastguard Worker  sources = [ "testsupport/copy_to_file_audio_capturer_unittest.cc" ]
1189*d9f75844SAndroid Build Coastguard Worker  deps = [
1190*d9f75844SAndroid Build Coastguard Worker    ":copy_to_file_audio_capturer",
1191*d9f75844SAndroid Build Coastguard Worker    ":fileutils",
1192*d9f75844SAndroid Build Coastguard Worker    ":test_support",
1193*d9f75844SAndroid Build Coastguard Worker    "../modules/audio_device:audio_device_impl",
1194*d9f75844SAndroid Build Coastguard Worker  ]
1195*d9f75844SAndroid Build Coastguard Worker}
1196*d9f75844SAndroid Build Coastguard Worker
1197*d9f75844SAndroid Build Coastguard Workerif (!build_with_chromium && is_android) {
1198*d9f75844SAndroid Build Coastguard Worker  rtc_android_library("native_test_java") {
1199*d9f75844SAndroid Build Coastguard Worker    testonly = true
1200*d9f75844SAndroid Build Coastguard Worker    sources = [
1201*d9f75844SAndroid Build Coastguard Worker      "android/org/webrtc/native_test/RTCNativeUnitTest.java",
1202*d9f75844SAndroid Build Coastguard Worker      "android/org/webrtc/native_test/RTCNativeUnitTestActivity.java",
1203*d9f75844SAndroid Build Coastguard Worker    ]
1204*d9f75844SAndroid Build Coastguard Worker    deps = [
1205*d9f75844SAndroid Build Coastguard Worker      "../rtc_base:base_java",
1206*d9f75844SAndroid Build Coastguard Worker      "//testing/android/native_test:native_test_java",
1207*d9f75844SAndroid Build Coastguard Worker    ]
1208*d9f75844SAndroid Build Coastguard Worker  }
1209*d9f75844SAndroid Build Coastguard Worker}
1210*d9f75844SAndroid Build Coastguard Worker
1211*d9f75844SAndroid Build Coastguard Workerrtc_library("call_config_utils") {
1212*d9f75844SAndroid Build Coastguard Worker  # TODO(bugs.webrtc.org/10814): Remove rtc_json_suppressions as soon as it
1213*d9f75844SAndroid Build Coastguard Worker  # gets removed upstream.
1214*d9f75844SAndroid Build Coastguard Worker  public_configs = [ "../rtc_base:rtc_json_suppressions" ]
1215*d9f75844SAndroid Build Coastguard Worker  sources = [
1216*d9f75844SAndroid Build Coastguard Worker    "call_config_utils.cc",
1217*d9f75844SAndroid Build Coastguard Worker    "call_config_utils.h",
1218*d9f75844SAndroid Build Coastguard Worker  ]
1219*d9f75844SAndroid Build Coastguard Worker  deps = [
1220*d9f75844SAndroid Build Coastguard Worker    "../call:video_stream_api",
1221*d9f75844SAndroid Build Coastguard Worker    "../rtc_base:rtc_json",
1222*d9f75844SAndroid Build Coastguard Worker  ]
1223*d9f75844SAndroid Build Coastguard Worker}
1224*d9f75844SAndroid Build Coastguard Worker
1225*d9f75844SAndroid Build Coastguard Workerrtc_library("fake_encoded_frame") {
1226*d9f75844SAndroid Build Coastguard Worker  testonly = true
1227*d9f75844SAndroid Build Coastguard Worker  sources = [
1228*d9f75844SAndroid Build Coastguard Worker    "fake_encoded_frame.cc",
1229*d9f75844SAndroid Build Coastguard Worker    "fake_encoded_frame.h",
1230*d9f75844SAndroid Build Coastguard Worker  ]
1231*d9f75844SAndroid Build Coastguard Worker  deps = [
1232*d9f75844SAndroid Build Coastguard Worker    ":test_support",
1233*d9f75844SAndroid Build Coastguard Worker    "../api:rtp_packet_info",
1234*d9f75844SAndroid Build Coastguard Worker    "../api/video:encoded_frame",
1235*d9f75844SAndroid Build Coastguard Worker    "../api/video:encoded_image",
1236*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_frame_type",
1237*d9f75844SAndroid Build Coastguard Worker    "../api/video:video_rtp_headers",
1238*d9f75844SAndroid Build Coastguard Worker  ]
1239*d9f75844SAndroid Build Coastguard Worker  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
1240*d9f75844SAndroid Build Coastguard Worker}
1241