1# Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS.  All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8{
9  'targets': [
10    {
11      'target_name': 'rtc_unittests',
12      'type': 'executable',
13      'dependencies': [
14        'base/base.gyp:rtc_base',
15        'base/base_tests.gyp:rtc_base_tests_utils',
16        'base/base_tests.gyp:rtc_base_tests',
17        '<(DEPTH)/testing/gtest.gyp:gtest',
18      ],
19    },
20    {
21      'target_name': 'webrtc_tests',
22      'type': 'none',
23      'dependencies': [
24        'video_engine_tests',
25        'video_loopback',
26        'video_replay',
27        'webrtc_perf_tests',
28      ],
29    },
30    {
31      'target_name': 'video_loopback',
32      'type': 'executable',
33      'sources': [
34        'test/mac/run_test.mm',
35        'test/run_test.cc',
36        'test/run_test.h',
37        'video/loopback.cc',
38      ],
39      'conditions': [
40        ['OS=="mac"', {
41          'sources!': [
42            'test/run_test.cc',
43          ],
44        }],
45      ],
46      'dependencies': [
47        '<(DEPTH)/testing/gtest.gyp:gtest',
48        '<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
49        'test/webrtc_test_common.gyp:webrtc_test_common',
50        'test/webrtc_test_common.gyp:webrtc_test_renderer',
51        '<(webrtc_root)/modules/modules.gyp:video_render_module_impl',
52        '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:field_trial_default',
53        'webrtc',
54      ],
55    },
56    {
57      'target_name': 'video_replay',
58      'type': 'executable',
59      'sources': [
60        'test/mac/run_test.mm',
61        'test/run_test.cc',
62        'test/run_test.h',
63        'video/replay.cc',
64      ],
65      'conditions': [
66        ['OS=="mac"', {
67          'sources!': [
68            'test/run_test.cc',
69          ],
70        }],
71      ],
72      'dependencies': [
73        '<(DEPTH)/testing/gtest.gyp:gtest',
74        '<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
75        'test/webrtc_test_common.gyp:webrtc_test_common',
76        'test/webrtc_test_common.gyp:webrtc_test_renderer',
77        '<(webrtc_root)/modules/modules.gyp:video_render_module_impl',
78        '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:field_trial_default',
79        'webrtc',
80      ],
81    },
82    {
83      'target_name': 'video_engine_tests',
84      'type': '<(gtest_target_type)',
85      'sources': [
86        'video/bitrate_estimator_tests.cc',
87        'video/end_to_end_tests.cc',
88        'video/send_statistics_proxy_unittest.cc',
89        'video/video_send_stream_tests.cc',
90        'test/common_unittest.cc',
91        'test/testsupport/metrics/video_metrics_unittest.cc',
92      ],
93      'dependencies': [
94        '<(DEPTH)/testing/gtest.gyp:gtest',
95        '<(webrtc_root)/modules/modules.gyp:rtp_rtcp',
96        '<(webrtc_root)/modules/modules.gyp:video_render_module_impl',
97        'test/metrics.gyp:metrics',
98        'test/webrtc_test_common.gyp:webrtc_test_common',
99        'test/test.gyp:test_main',
100        'webrtc',
101      ],
102      'conditions': [
103        ['OS=="android"', {
104          'dependencies': [
105            '<(DEPTH)/testing/android/native_test.gyp:native_test_native_code',
106          ],
107        }],
108      ],
109    },
110    {
111      'target_name': 'webrtc_perf_tests',
112      'type': '<(gtest_target_type)',
113      'sources': [
114        'modules/audio_coding/neteq/test/neteq_performance_unittest.cc',
115        'video/call_perf_tests.cc',
116        'video/full_stack.cc',
117        'video/rampup_tests.cc',
118        'video/rampup_tests.h',
119      ],
120      'dependencies': [
121        '<(DEPTH)/testing/gtest.gyp:gtest',
122        'modules/modules.gyp:neteq_test_support',  # Needed by neteq_performance_unittest.
123        'modules/modules.gyp:rtp_rtcp',
124        'test/webrtc_test_common.gyp:webrtc_test_common',
125        'test/test.gyp:test_main',
126        'webrtc',
127      ],
128      'conditions': [
129        ['OS=="android"', {
130          'dependencies': [
131            '<(DEPTH)/testing/android/native_test.gyp:native_test_native_code',
132          ],
133        }],
134      ],
135    },
136  ],
137  'conditions': [
138    ['OS=="android"', {
139      'targets': [
140        {
141          'target_name': 'video_engine_tests_apk_target',
142          'type': 'none',
143          'dependencies': [
144            '<(apk_tests_path):video_engine_tests_apk',
145          ],
146        },
147        {
148          'target_name': 'webrtc_perf_tests_apk_target',
149          'type': 'none',
150          'dependencies': [
151            '<(apk_tests_path):webrtc_perf_tests_apk',
152          ],
153        },
154      ],
155    }],
156    ['test_isolation_mode != "noop"', {
157      'targets': [
158        {
159          'target_name': 'video_engine_tests_run',
160          'type': 'none',
161          'dependencies': [
162            'video_engine_tests',
163          ],
164          'includes': [
165            'build/isolate.gypi',
166            'video_engine_tests.isolate',
167          ],
168          'sources': [
169            'video_engine_tests.isolate',
170          ],
171        },
172        {
173          'target_name': 'webrtc_perf_tests_run',
174          'type': 'none',
175          'dependencies': [
176            'webrtc_perf_tests',
177          ],
178          'includes': [
179            'build/isolate.gypi',
180            'webrtc_perf_tests.isolate',
181          ],
182          'sources': [
183            'webrtc_perf_tests.isolate',
184          ],
185        },
186      ],
187    }],
188  ],
189}
190