OLD | NEW |
| (Empty) |
1 # Copyright (c) 2014 Google Inc. All Rights Reserved. | |
2 # Use of this source code is governed by a BSD-style license that can be | |
3 # found in the LICENSE file. | |
4 | |
5 { | |
6 'variables': { | |
7 'chromium_code': 1, | |
8 'use_alsa%': 0, | |
9 }, | |
10 'targets': [ | |
11 { | |
12 'target_name': 'cast_base_unittests', | |
13 'type': '<(gtest_target_type)', | |
14 'dependencies': [ | |
15 'cast_base', | |
16 'cast_component', | |
17 'cast_crypto', | |
18 '../base/base.gyp:run_all_unittests', | |
19 '../testing/gmock.gyp:gmock', | |
20 '../testing/gtest.gyp:gtest', | |
21 ], | |
22 'sources': [ | |
23 'base/bind_to_task_runner_unittest.cc', | |
24 'base/chromecast_switches_unittest.cc', | |
25 'base/component/component_unittest.cc', | |
26 'base/device_capabilities_impl_unittest.cc', | |
27 'base/error_codes_unittest.cc', | |
28 'base/path_utils_unittest.cc', | |
29 'base/process_utils_unittest.cc', | |
30 'base/serializers_unittest.cc', | |
31 'base/system_time_change_notifier_unittest.cc', | |
32 'crypto/signature_cache_unittest.cc', | |
33 ], | |
34 'conditions': [ | |
35 ['OS == "android"', { | |
36 'dependencies': [ | |
37 '<(DEPTH)/testing/android/native_test.gyp:native_test_native_code', | |
38 ], | |
39 }], | |
40 ], | |
41 }, # end of cast_base_unittests | |
42 { | |
43 'target_name': 'cast_crash_test_support', | |
44 'type': '<(component)', | |
45 'dependencies': [ | |
46 'cast_base', | |
47 'cast_crash', | |
48 ], | |
49 'sources': [ | |
50 'crash/linux/crash_testing_utils.cc', | |
51 'crash/linux/crash_testing_utils.h', | |
52 ], | |
53 }, # end of target 'cast_crash_test_support' | |
54 { | |
55 'target_name': 'cast_crash_unittests', | |
56 'type': '<(gtest_target_type)', | |
57 'dependencies': [ | |
58 'cast_crash', | |
59 'cast_crash_test_support', | |
60 '../base/base.gyp:run_all_unittests', | |
61 '../testing/gmock.gyp:gmock', | |
62 '../testing/gtest.gyp:gtest', | |
63 ], | |
64 'include_dirs': [ | |
65 '../breakpad/src', | |
66 ], | |
67 'sources': [ | |
68 'crash/cast_crashdump_uploader_unittest.cc', | |
69 'crash/linux/dummy_minidump_generator_unittest.cc', | |
70 'crash/linux/dump_info_unittest.cc', | |
71 'crash/linux/synchronized_minidump_manager_unittest.cc', | |
72 'crash/linux/minidump_writer_unittest.cc', | |
73 ], | |
74 'conditions': [ | |
75 ['OS == "android"', { | |
76 'dependencies': [ | |
77 '<(DEPTH)/testing/android/native_test.gyp:native_test_native_code', | |
78 ], | |
79 }], | |
80 ], | |
81 }, # end of cast_crash_unittests | |
82 { | |
83 'target_name': 'cast_tests', | |
84 'type': 'none', | |
85 'dependencies': [ | |
86 'cast_test_generator', | |
87 ], | |
88 'conditions': [ | |
89 ['chromecast_branding!="public"', { | |
90 'dependencies': [ | |
91 'internal/chromecast_internal.gyp:cast_tests_internal', | |
92 ], | |
93 }], | |
94 ], | |
95 }, | |
96 # This target only depends on targets that generate test binaries. | |
97 { | |
98 'target_name': 'cast_test_generator', | |
99 'type': 'none', | |
100 'dependencies': [ | |
101 'cast_base_unittests', | |
102 '../base/base.gyp:base_unittests', | |
103 '../content/content_shell_and_tests.gyp:content_unittests', | |
104 '../crypto/crypto.gyp:crypto_unittests', | |
105 '../ipc/ipc.gyp:ipc_tests', | |
106 '../jingle/jingle.gyp:jingle_unittests', | |
107 '../media/media.gyp:media_unittests', | |
108 '../media/midi/midi.gyp:midi_unittests', | |
109 '../net/net.gyp:net_unittests', | |
110 '../ppapi/ppapi_internal.gyp:ppapi_unittests', | |
111 '../sandbox/sandbox.gyp:sandbox_linux_unittests', | |
112 '../sql/sql.gyp:sql_unittests', | |
113 '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidatio
n_unittests', | |
114 '../ui/base/ui_base_tests.gyp:ui_base_unittests', | |
115 '../url/url.gyp:url_unittests', | |
116 ], | |
117 'conditions': [ | |
118 ['OS=="linux" and is_cast_desktop_build==0', { | |
119 'variables': { | |
120 'filters': [ | |
121 # Run net_unittests first to avoid random failures due to slow pyt
hon startup | |
122 # KeygenHandlerTest.SmokeTest and KeygenHandlerTest.ConcurrencyTes
t fail due to | |
123 # readonly certdb (b/8153161) | |
124 # URLRequestTestHTTP.GetTest_ManyCookies takes roughly 55s to run.
Increase | |
125 # timeout to 90s from 45s to allow it to pass (b/19821476) | |
126 # ProxyScriptFetcherImplTest.HttpMimeType is flaking (b/19848784) | |
127 # Running a batch of net_unittests has high overhead. Run tests in
batches of 25 to reduce number of batches (b/23156294). | |
128 'net_unittests --gtest_filter=-KeygenHandlerTest.SmokeTest:KeygenHa
ndlerTest.ConcurrencyTest:ProxyScriptFetcherImplTest.HttpMimeType --test-launche
r-timeout=90000 --test-launcher-batch-limit=25', | |
129 # Disable ProcessMetricsTest.GetNumberOfThreads (b/15610509) | |
130 # Disable ProcessUtilTest.* (need to define OS_ANDROID) | |
131 # Disable StackContainer.BufferAlignment (don't support 16-byte al
ignment) | |
132 # Disable SystemMetrics2Test.GetSystemMemoryInfo (buffers>0 can't
be guaranteed) | |
133 'base_unittests --gtest_filter=-ProcessMetricsTest.GetNumberOfThre
ads:ProcessUtilTest.*:StackContainer.BufferAlignment:SystemMetrics2Test.GetSyste
mMemoryInfo', | |
134 # DesktopCaptureDeviceTest.*: No capture device on Eureka | |
135 # Disable PepperGamepadHostTest.WaitForReply (pepper not supported
on Eureka) | |
136 # Disable GpuDataManagerImplPrivateTest.SetGLStrings and | |
137 # RenderWidgetHostTest.Background because we disable the blacklist
to enable WebGL (b/16142554) | |
138 'content_unittests --gtest_filter=-DOMStorageDatabaseTest.TestCanO
penAndReadWebCoreDatabase:DesktopCaptureDeviceTest.Capture:GamepadProviderTest.P
ollingAccess:GpuDataManagerImplPrivateTest.SetGLStrings:PepperGamepadHostTest.Wa
itForReply:RenderWidgetHostTest.Background', | |
139 # Disable VP9 related tests (b/18593324) | |
140 # PipelineIntegrationTest.BasicPlayback_MediaSource_VP9_WebM | |
141 # PipelineIntegrationTest.BasicPlayback_VideoOnly_VP9_WebM | |
142 # PipelineIntegrationTest.BasicPlayback_VP9* | |
143 # PipelineIntegrationTest.P444_VP9_WebM | |
144 # Disable VP8A tests (b/18593324) | |
145 # PipelineIntegrationTest.BasicPlayback_VP8A* | |
146 # Disable OpusAudioDecoderTest/AudioDecoderTest.ProduceAudioSample
s/0 (unit | |
147 # test fails when Opus decoder uses fixed-point) | |
148 # Due to b/16456550, disable the following four test cases: | |
149 # AudioOutputControllerTest.PlayDivertSwitchDeviceRevertClose | |
150 # AudioOutputControllerTest.PlaySwitchDeviceClose | |
151 # AudioStreamHandlerTest.Play | |
152 # SoundsManagerTest.Play | |
153 # Disable AudioStreamHandlerTest.ConsecutivePlayRequests (b/165392
93) | |
154 'media_unittests --gtest_filter=-AudioOutputControllerTest.PlayDiv
ertSwitchDeviceRevertClose:AudioOutputControllerTest.PlaySwitchDeviceClose:Audio
StreamHandlerTest.Play:AudioStreamHandlerTest.ConsecutivePlayRequests:PipelineIn
tegrationTest.BasicPlayback_MediaSource_VP9_WebM:PipelineIntegrationTest.BasicPl
ayback_VideoOnly_VP9_WebM:PipelineIntegrationTest.BasicPlayback_VP9*:PipelineInt
egrationTest.P444_VP9_WebM:PipelineIntegrationTest.BasicPlayback_VP8A*:OpusAudio
DecoderTest/AudioDecoderTest.ProduceAudioSamples/0:SoundsManagerTest.Play', | |
155 # DoAppendUTF8Invalid fails because of dcheck_always_on flag in En
g builds | |
156 'url_unittests --gtest_filter=-URLCanonTest.DoAppendUTF8Invalid', | |
157 ], | |
158 }, | |
159 }, { # else desktop or android | |
160 'variables': { | |
161 'filters': [ | |
162 # Disable PipelineIntegrationTest.BasicPlayback_MediaSource_VP9_We
bM (not supported) | |
163 'media_unittests --gtest_filter=-PipelineIntegrationTest.BasicPlay
back_MediaSource_VP9_WebM', | |
164 ], | |
165 } | |
166 }], | |
167 ['OS=="linux"', { | |
168 'dependencies': [ | |
169 'cast_crash_unittests', | |
170 ], | |
171 }], | |
172 ['disable_display==0', { | |
173 'dependencies': [ | |
174 '../gpu/gpu.gyp:gpu_unittests', | |
175 ], | |
176 }], | |
177 ['OS!="android"', { | |
178 'dependencies': [ | |
179 'cast_shell_unittests', | |
180 'cast_shell_browser_test', | |
181 'media/media.gyp:cast_media_unittests', | |
182 ], | |
183 'variables': { | |
184 'filters': [ | |
185 # --enable-local-file-accesses => to load sample media files | |
186 # --test-launcher-jobs=1 => so internal code can bind to port | |
187 'cast_shell_browser_test --no-sandbox --enable-local-file-accesses
--enable-cma-media-pipeline --ozone-platform=cast --test-launcher-jobs=1', | |
188 'cast_media_unittests --test-launcher-jobs=1', | |
189 ], | |
190 }, | |
191 'conditions': [ | |
192 ['use_alsa==1', { | |
193 'dependencies': [ | |
194 'media/media.gyp:cast_alsa_cma_backend_unittests', | |
195 ], | |
196 }], | |
197 ], | |
198 }], | |
199 ], | |
200 'includes': ['build/tests/test_list.gypi'], | |
201 }, | |
202 { | |
203 'target_name': 'cast_metrics_test_support', | |
204 'type': '<(component)', | |
205 'dependencies': [ | |
206 'cast_base', | |
207 ], | |
208 'sources': [ | |
209 'base/metrics/cast_metrics_test_helper.cc', | |
210 'base/metrics/cast_metrics_test_helper.h', | |
211 ], | |
212 }, # end of target 'cast_metrics_test_support' | |
213 ], # end of targets | |
214 'conditions': [ | |
215 ['OS=="android"', { | |
216 'targets': [ | |
217 { | |
218 'target_name': 'cast_base_unittests_apk', | |
219 'type': 'none', | |
220 'dependencies': [ | |
221 'cast_base_unittests', | |
222 ], | |
223 'variables': { | |
224 'test_suite_name': 'cast_base_unittests', | |
225 }, | |
226 'includes': ['../build/apk_test.gypi'], | |
227 }, # end of target 'cast_base_unittests_apk' | |
228 { | |
229 'target_name': 'cast_android_tests', | |
230 'type': 'none', | |
231 'dependencies': ['cast_android_tests_generator'], | |
232 'conditions': [ | |
233 ['chromecast_branding!="public"', { | |
234 'dependencies': [ | |
235 'internal/chromecast_internal.gyp:cast_android_tests_internal', | |
236 ], | |
237 }], | |
238 ], | |
239 }, # end of target 'cast_android_tests', | |
240 { | |
241 'target_name': 'cast_android_tests_generator', | |
242 'type': 'none', | |
243 'variables': { | |
244 'filters': [ | |
245 # ComponentDeathTest is unable to fork processes on Android | |
246 'cast_base_unittests_apk --gtest_filter=*:-ComponentDeathTest.*', | |
247 # LayerTreeHost has dozens of separate crashing test cases on Fugu
. (b/22512618) | |
248 'cc_unittests_apk --gtest_filter=*:-LayerTreeHost*', | |
249 # The following tests all crash on fugu. | |
250 'gfx_unittests_apk --gtest_filter=*:-FontListTest.Fonts_DeriveWith
HeightUpperBound', | |
251 'media_unittests_apk --gtest_filter=*-AudioInputTest.*:AudioAndroi
dInputTest*', | |
252 ], | |
253 }, | |
254 'dependencies': [ | |
255 'cast_base_unittests_apk', | |
256 '../base/base.gyp:base_unittests_apk', | |
257 '../cc/cc_tests.gyp:cc_unittests_apk', | |
258 '../ipc/ipc.gyp:ipc_tests_apk', | |
259 '../media/media.gyp:media_unittests_apk', | |
260 '../media/midi/midi.gyp:midi_unittests_apk', | |
261 '../net/net.gyp:net_unittests_apk', | |
262 '../sql/sql.gyp:sql_unittests_apk', | |
263 '../ui/events/events_unittests.gyp:events_unittests_apk', | |
264 '../ui/gfx/gfx_tests.gyp:gfx_unittests_apk', | |
265 ], | |
266 'includes': ['build/tests/test_list.gypi'], | |
267 }, # end of target 'cast_android_tests_generator' | |
268 { | |
269 'target_name': 'cast_android_test_lists', | |
270 'type': 'none', | |
271 'dependencies': [ | |
272 'cast_android_tests', | |
273 ], | |
274 'variables': { | |
275 'test_generator_py': '<(DEPTH)/chromecast/tools/build/generate_test_
lists.py', | |
276 'test_inputs_dir': '<(SHARED_INTERMEDIATE_DIR)/chromecast/tests', | |
277 }, | |
278 'actions': [ | |
279 { | |
280 'action_name': 'generate_combined_test_build_list', | |
281 'message': 'Generating combined test build list', | |
282 'inputs': ['<(test_generator_py)'], | |
283 'outputs': ['<(PRODUCT_DIR)/tests/build_test_list_android.txt'], | |
284 'action': [ | |
285 'python', '<(test_generator_py)', | |
286 '-t', '<(test_inputs_dir)', | |
287 '-o', '<@(_outputs)', | |
288 'pack_build', | |
289 ], | |
290 }, | |
291 { | |
292 'action_name': 'generate_combined_test_run_list', | |
293 'message': 'Generating combined test run list', | |
294 'inputs': ['<(test_generator_py)'], | |
295 'outputs': ['<(PRODUCT_DIR)/tests/run_test_list.txt'], | |
296 'action': [ | |
297 'python', '<(test_generator_py)', | |
298 '-t', '<(test_inputs_dir)', | |
299 '-o', '<@(_outputs)', | |
300 'pack_run', | |
301 ], | |
302 } | |
303 ], | |
304 }, | |
305 ], # end of targets | |
306 }, { # OS!="android" | |
307 'targets': [ | |
308 # GN target: //chromecast/browser:test_support | |
309 { | |
310 'target_name': 'cast_shell_test_support', | |
311 'type': '<(component)', | |
312 'defines': [ | |
313 'HAS_OUT_OF_PROC_TEST_RUNNER', | |
314 ], | |
315 'dependencies': [ | |
316 'cast_shell_core', | |
317 '../content/content_shell_and_tests.gyp:content_browser_test_base', | |
318 '../content/content_shell_and_tests.gyp:content_browser_test_support
', | |
319 '../mojo/mojo_public.gyp:mojo_cpp_bindings', | |
320 '../testing/gtest.gyp:gtest', | |
321 ], | |
322 'export_dependent_settings': [ | |
323 '../content/content_shell_and_tests.gyp:content_browser_test_base', | |
324 ], | |
325 'sources': [ | |
326 'browser/test/chromecast_browser_test.cc', | |
327 'browser/test/chromecast_browser_test.h', | |
328 'browser/test/chromecast_browser_test_helper.h', | |
329 'browser/test/chromecast_browser_test_runner.cc', | |
330 ], | |
331 }, # end of target 'cast_shell_test_support' | |
332 { | |
333 'target_name': 'cast_shell_browser_test', | |
334 'type': '<(gtest_target_type)', | |
335 'dependencies': [ | |
336 'cast_shell_test_support', | |
337 '../content/content_shell_and_tests.gyp:test_support_content', | |
338 '../media/media.gyp:media_test_support', | |
339 '../testing/gtest.gyp:gtest', | |
340 ], | |
341 'defines': [ | |
342 'HAS_OUT_OF_PROC_TEST_RUNNER', | |
343 ], | |
344 'sources': [ | |
345 'browser/test/chromecast_shell_browser_test.cc', | |
346 ], | |
347 'conditions': [ | |
348 ['chromecast_branding=="public"', { | |
349 'dependencies': [ | |
350 # Link default libcast_media_1.0 statically to prevent | |
351 # linking dynamically against dummy implementation. | |
352 'media/media.gyp:libcast_media_1.0_default_core', | |
353 ], | |
354 'sources': [ | |
355 'browser/test/chromecast_browser_test_helper_default.cc', | |
356 ], | |
357 },{ | |
358 'dependencies': [ | |
359 'internal/chromecast_internal.gyp:cast_shell_browser_test_helper
_internal', | |
360 ], | |
361 }], | |
362 ], | |
363 }, | |
364 # GN target: //chromecast/app:cast_shell_unittests | |
365 { | |
366 'target_name': 'cast_shell_unittests', | |
367 'type': '<(gtest_target_type)', | |
368 'dependencies': [ | |
369 'cast_crash_client', | |
370 'cast_crash_test_support', | |
371 '../base/base.gyp:run_all_unittests', | |
372 '../testing/gtest.gyp:gtest', | |
373 ], | |
374 'sources': [ | |
375 'app/linux/cast_crash_reporter_client_unittest.cc', | |
376 ], | |
377 }, # end of cast_shell_unittests | |
378 # Builds all tests and the output lists of build/run targets for those t
ests. | |
379 # Note: producing a predetermined list of dependent inputs on which to | |
380 # regenerate this output is difficult with GYP. This file is not | |
381 # guaranteed to be regenerated outside of a clean build. | |
382 # GN target: //chromecast:cast_test_lists | |
383 { | |
384 'target_name': 'cast_test_lists', | |
385 'type': 'none', | |
386 'dependencies': [ | |
387 'cast_tests', | |
388 ], | |
389 'variables': { | |
390 'test_generator_py': '<(DEPTH)/chromecast/tools/build/generate_test_
lists.py', | |
391 'test_inputs_dir': '<(SHARED_INTERMEDIATE_DIR)/chromecast/tests', | |
392 'test_additional_options': '--ozone-platform=headless' | |
393 }, | |
394 'actions': [ | |
395 { | |
396 'action_name': 'generate_combined_test_build_list', | |
397 'message': 'Generating combined test build list', | |
398 'inputs': ['<(test_generator_py)'], | |
399 'outputs': ['<(PRODUCT_DIR)/tests/build_test_list.txt'], | |
400 'action': [ | |
401 'python', '<(test_generator_py)', | |
402 '-t', '<(test_inputs_dir)', | |
403 '-o', '<@(_outputs)', | |
404 'pack_build', | |
405 ], | |
406 }, | |
407 { | |
408 'action_name': 'generate_combined_test_run_list', | |
409 'message': 'Generating combined test run list', | |
410 'inputs': ['<(test_generator_py)'], | |
411 'outputs': ['<(PRODUCT_DIR)/tests/run_test_list.txt'], | |
412 'action': [ | |
413 'python', '<(test_generator_py)', | |
414 '-t', '<(test_inputs_dir)', | |
415 '-o', '<@(_outputs)', | |
416 '-a', '<(test_additional_options)', | |
417 'pack_run', | |
418 ], | |
419 } | |
420 ], | |
421 }, | |
422 ], # end of targets | |
423 }], | |
424 ], # end of conditions | |
425 } | |
OLD | NEW |