Mac Remote CoreAnimation: Fix flashing at tab-switch
[chromium-blink-merge.git] / content / content_tests.gypi
blob906493f34bbf4bbe00d8cbece63ffea4965224ce
1 # Copyright (c) 2013 The Chromium Authors. 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.
6   'variables': {
7     'layouttest_support_content_sources': [
8       'public/test/layouttest_support.h',
9       'public/test/nested_message_pump_android.cc',
10       'public/test/nested_message_pump_android.h',
11       'test/layouttest_support.cc',
12       'test/test_media_stream_renderer_factory.cc',
13       'test/test_media_stream_renderer_factory.h',
14       'test/test_video_frame_provider.cc',
15       'test/test_video_frame_provider.h',
16     ],
17     'test_support_content_sources': [
18       'public/test/async_file_test_helper.cc',
19       'public/test/async_file_test_helper.h',
20       'public/test/browser_test_base.cc',
21       'public/test/browser_test_base.h',
22       'public/test/browser_test.h',
23       'public/test/browser_test_utils.cc',
24       'public/test/browser_test_utils.h',
25       'public/test/content_test_suite_base.cc',
26       'public/test/content_test_suite_base.h',
27       'public/test/download_test_observer.cc',
28       'public/test/download_test_observer.h',
29       'public/test/fake_speech_recognition_manager.cc',
30       'public/test/fake_speech_recognition_manager.h',
31       'public/test/frame_load_waiter.cc',
32       'public/test/frame_load_waiter.h',
33       'public/test/javascript_test_observer.cc',
34       'public/test/javascript_test_observer.h',
35       'public/test/mock_blob_url_request_context.cc',
36       'public/test/mock_blob_url_request_context.h',
37       'public/test/mock_download_item.cc',
38       'public/test/mock_download_item.h',
39       'public/test/mock_download_manager.cc',
40       'public/test/mock_download_manager.h',
41       'public/test/mock_notification_observer.cc',
42       'public/test/mock_notification_observer.h',
43       'public/test/mock_render_process_host.cc',
44       'public/test/mock_render_process_host.h',
45       'public/test/mock_render_thread.cc',
46       'public/test/mock_render_thread.h',
47       'public/test/mock_resource_context.cc',
48       'public/test/mock_resource_context.h',
49       'public/test/mock_special_storage_policy.cc',
50       'public/test/mock_special_storage_policy.h',
51       'public/test/mock_storage_client.cc',
52       'public/test/mock_storage_client.h',
53       'public/test/render_view_test.cc',
54       'public/test/render_view_test.h',
55       'public/test/render_widget_test.cc',
56       'public/test/render_widget_test.h',
57       'public/test/sandbox_file_system_test_helper.cc',
58       'public/test/sandbox_file_system_test_helper.h',
59       'public/test/test_browser_context.cc',
60       'public/test/test_browser_context.h',
61       'public/test/test_browser_thread.cc',
62       'public/test/test_browser_thread.h',
63       'public/test/test_browser_thread_bundle.cc',
64       'public/test/test_browser_thread_bundle.h',
65       'public/test/test_content_client_initializer.cc',
66       'public/test/test_content_client_initializer.h',
67       'public/test/test_file_error_injector.cc',
68       'public/test/test_file_error_injector.h',
69       'public/test/test_file_system_backend.cc',
70       'public/test/test_file_system_backend.h',
71       'public/test/test_file_system_context.cc',
72       'public/test/test_file_system_context.h',
73       'public/test/test_file_system_options.cc',
74       'public/test/test_file_system_options.h',
75       'public/test/test_launcher.cc',
76       'public/test/test_launcher.h',
77       'public/test/test_navigation_observer.cc',
78       'public/test/test_navigation_observer.h',
79       'public/test/test_notification_tracker.cc',
80       'public/test/test_notification_tracker.h',
81       'public/test/test_renderer_host.cc',
82       'public/test/test_renderer_host.h',
83       'public/test/test_synchronous_compositor_android.cc',
84       'public/test/test_synchronous_compositor_android.h',
85       'public/test/test_utils.cc',
86       'public/test/test_utils.h',
87       'public/test/unittest_test_suite.cc',
88       'public/test/unittest_test_suite.h',
89       'public/test/web_contents_tester.cc',
90       'public/test/web_contents_tester.h',
91       # TODO(phajdan.jr): All of those files should live in content/test (if
92       # they're only used by content) or content/public/test (if they're used
93       # by other embedders).
94       'browser/download/mock_download_file.cc',
95       'browser/download/mock_download_file.h',
96       'browser/geolocation/fake_access_token_store.cc',
97       'browser/geolocation/fake_access_token_store.h',
98       'browser/geolocation/mock_location_arbitrator.cc',
99       'browser/geolocation/mock_location_arbitrator.h',
100       'browser/geolocation/mock_location_provider.cc',
101       'browser/geolocation/mock_location_provider.h',
102       'browser/renderer_host/media/mock_media_observer.cc',
103       'browser/renderer_host/media/mock_media_observer.h',
104       'browser/renderer_host/test/no_transport_image_transport_factory_android.cc',
105       'browser/renderer_host/test/no_transport_image_transport_factory_android.h',
106       'test/appcache_test_helper.cc',
107       'test/appcache_test_helper.h',
108       'test/blink_test_environment.cc',
109       'test/blink_test_environment.h',
110       'test/browser_side_navigation_test_utils.cc',
111       'test/browser_side_navigation_test_utils.h',
112       'test/content_browser_test_utils_internal.cc',
113       'test/content_browser_test_utils_internal.h',
114       'test/content_test_suite.cc',
115       'test/content_test_suite.h',
116       'test/mock_google_streaming_server.cc',
117       'test/mock_google_streaming_server.h',
118       'test/mock_keyboard.cc',
119       'test/mock_keyboard.h',
120       'test/mock_keyboard_driver_win.cc',
121       'test/mock_keyboard_driver_win.h',
122       'test/mock_render_process.cc',
123       'test/mock_render_process.h',
124       'test/mock_webblob_registry_impl.cc',
125       'test/mock_webblob_registry_impl.h',
126       'test/mock_webclipboard_impl.cc',
127       'test/mock_webclipboard_impl.h',
128       'test/mock_webframeclient.h',
129       'test/mock_weburlloader.cc',
130       'test/mock_weburlloader.h',
131       'test/net/url_request_abort_on_end_job.cc',
132       'test/net/url_request_abort_on_end_job.h',
133       'test/net/url_request_slow_download_job.cc',
134       'test/net/url_request_slow_download_job.h',
135       'test/ppapi_unittest.cc',
136       'test/ppapi_unittest.h',
137       'test/test_blink_web_unit_test_support.cc',
138       'test/test_blink_web_unit_test_support.h',
139       'test/test_content_browser_client.cc',
140       'test/test_content_browser_client.h',
141       'test/test_content_client.cc',
142       'test/test_content_client.h',
143       'test/test_frame_navigation_observer.cc',
144       'test/test_frame_navigation_observer.h',
145       'test/test_navigation_url_loader.cc',
146       'test/test_navigation_url_loader.h',
147       'test/test_navigation_url_loader_factory.cc',
148       'test/test_navigation_url_loader_factory.h',
149       'test/test_render_frame_host.cc',
150       'test/test_render_frame_host.h',
151       'test/test_render_frame_host_factory.cc',
152       'test/test_render_frame_host_factory.h',
153       'test/test_render_view_host.cc',
154       'test/test_render_view_host.h',
155       'test/test_render_view_host_factory.cc',
156       'test/test_render_view_host_factory.h',
157       'test/test_web_contents.cc',
158       'test/test_web_contents.h',
159       'test/web_gesture_curve_mock.cc',
160       'test/web_gesture_curve_mock.h',
161       'test/web_layer_tree_view_impl_for_testing.cc',
162       'test/web_layer_tree_view_impl_for_testing.h',
163       'test/weburl_loader_mock.cc',
164       'test/weburl_loader_mock.h',
165       'test/weburl_loader_mock_factory.cc',
166       'test/weburl_loader_mock_factory.h',
167     ]
168   },
169   'targets': [
170     {
171       # GN version: //content/test:layouttest_support
172       'target_name': 'layouttest_support_content',
173       'type': 'static_library',
174       'conditions': [
175         ['OS=="android"', {
176           'dependencies': [
177             'test_support_content_jni_headers',
178           ],
179         }],
180         ['OS!="ios"', {
181           # layouttest_support_content is not supported nor required on iOS.
182           'dependencies': [
183             'test_support_content',
184             '../skia/skia.gyp:skia',
185             '../ui/accessibility/accessibility.gyp:ax_gen',
186             '../v8/tools/gyp/v8.gyp:v8',
187           ],
188           'include_dirs': [
189             '..',
190             '<(SHARED_INTERMEDIATE_DIR)',
191           ],
192           'sources': [ '<@(layouttest_support_content_sources)' ]
193         }],
194       ],
195     },
196     {
197       # GN version: //content/test:test_support
198       'target_name': 'test_support_content',
199       'type': 'static_library',
200       'dependencies': [
201         '../net/net.gyp:net_test_support',
202         '../skia/skia.gyp:skia',
203         '../storage/storage_common.gyp:storage_common',
204         '../testing/gmock.gyp:gmock',
205         '../testing/gtest.gyp:gtest',
206         '../ui/accessibility/accessibility.gyp:ax_gen',
207         '../ui/base/ui_base.gyp:ui_base',
208         '../ui/base/ui_base.gyp:ui_base_test_support',
209         '../ui/events/events.gyp:dom4_keycode_converter',
210         '../ui/events/events.gyp:events_base',
211         '../ui/events/events.gyp:events_test_support',
212         '../ui/events/events.gyp:gesture_detection',
213         '../ui/gfx/gfx.gyp:gfx_test_support',
214         '../ui/resources/ui_resources.gyp:ui_resources',
215         '../url/url.gyp:url_lib',
216         'browser/speech/proto/speech_proto.gyp:speech_proto',
217         'content.gyp:content_app_both',
218         'content.gyp:content_browser',
219         'content.gyp:content_common',
220       ],
221       'include_dirs': [
222         '..',
223       ],
224       'sources': [ '<@(test_support_content_sources)' ],
225       'conditions': [
226         ['enable_plugins==0', {
227           'sources!': [
228             'test/ppapi_unittest.cc',
229           ],
230         }],
231         ['enable_web_speech==0', {
232           'sources!': [
233             'test/mock_google_streaming_server.cc',
234           ],
235         }],
236         ['OS == "ios"', {
237           'sources/': [
238             # iOS only needs a small portion of content; exclude all the
239             # implementation, and re-include what is used.
240             ['exclude', '\\.(cc|mm)$'],
241             ['include', '_ios\\.(cc|mm)$'],
242             ['include', '^public/test/content_test_suite_base\\.cc$'],
243             ['include', '^public/test/mock_notification_observer\\.cc$'],
244             ['include', '^public/test/mock_resource_context\\.cc$'],
245             ['include', '^public/test/test_browser_thread\\.cc$'],
246             ['include', '^public/test/test_content_client_initializer\\.cc$'],
247             ['include', '^public/test/test_notification_tracker\\.cc$'],
248             ['include', '^public/test/test_utils\\.cc$'],
249             ['include', '^public/test/unittest_test_suite\\.cc$'],
250             ['include', '^test/content_test_suite\\.cc$'],
251             ['include', '^test/test_content_browser_client\\.cc$'],
252             ['include', '^test/test_content_client\\.cc$'],
253           ],
254         }, {  # OS != "ios"
255           'conditions': [
256             ['OS=="mac"', {
257               'copies': [{
258                 'destination': '<(SHARED_INTERMEDIATE_DIR)/webkit',
259                 'files': [
260                   'shell/resources/missingImage.png',
261                   'shell/resources/textAreaResizeCorner.png',
262                 ],
263               }],
264             }],
265           ],
266           'dependencies': [
267             'content.gyp:content_child',
268             'content.gyp:content_common',
269             'content.gyp:content_gpu',
270             'content.gyp:content_plugin',
271             'content.gyp:content_ppapi_plugin',
272             'content.gyp:content_renderer',
273             'content.gyp:content_utility',
274             'content_shell_and_tests.gyp:content_shell_pak',
275             '../cc/blink/cc_blink.gyp:cc_blink',
276             '../cc/cc.gyp:cc',
277             '../cc/cc_tests.gyp:cc_test_support',
278             '../media/blink/media_blink.gyp:media_blink',
279             '../media/media.gyp:media',
280             '../ppapi/ppapi_internal.gyp:ppapi_host',
281             '../ppapi/ppapi_internal.gyp:ppapi_proxy',
282             '../ppapi/ppapi_internal.gyp:ppapi_shared',
283             '../ppapi/ppapi_internal.gyp:ppapi_unittest_shared',
284             '../storage/storage_browser.gyp:storage',
285             '../storage/storage_common.gyp:storage_common',
286             '../third_party/WebKit/public/blink.gyp:blink',
287             '../ui/compositor/compositor.gyp:compositor_test_support',
288             '../ui/surface/surface.gyp:surface',
289             '../v8/tools/gyp/v8.gyp:v8',
290             '../webkit/common/gpu/webkit_gpu.gyp:webkit_gpu',
291           ],
292           'export_dependent_settings': [
293             '../third_party/WebKit/public/blink.gyp:blink',
294           ],
295         }],
296         ['OS == "win"', {
297           'dependencies': [
298             '../sandbox/sandbox.gyp:sandbox',
299             'content.gyp:content_startup_helper_win',
300           ],
301         }],
302         ['enable_webrtc==1', {
303           'sources': [
304             'renderer/media/mock_media_stream_dispatcher.cc',
305             'renderer/media/mock_media_stream_dispatcher.h',
306             'renderer/media/mock_peer_connection_impl.cc',
307             'renderer/media/mock_peer_connection_impl.h',
308             'renderer/media/mock_web_rtc_peer_connection_handler_client.cc',
309             'renderer/media/mock_web_rtc_peer_connection_handler_client.h',
310             'renderer/media/webrtc/mock_peer_connection_dependency_factory.cc',
311             'renderer/media/webrtc/mock_peer_connection_dependency_factory.h',
312           ],
313           'dependencies': [
314             '../third_party/libjingle/libjingle.gyp:libjingle_webrtc',
315             '../third_party/libjingle/libjingle.gyp:libpeerconnection',
316             '../third_party/webrtc/modules/modules.gyp:video_capture_module',
317           ],
318         }],
319         ['use_glib == 1', {
320           'dependencies': [
321             '../build/linux/system.gyp:glib',
322           ],
323         }],
324         ['use_aura==1', {
325           'dependencies': [
326             '../ui/aura/aura.gyp:aura_test_support',
327             '../ui/resources/ui_resources.gyp:ui_test_pak',
328             '../ui/wm/wm.gyp:wm',
329           ],
330         }],
331         ['use_ozone==1', {
332           'dependencies': [
333             '../ui/ozone/ozone.gyp:ozone',
334             '../ui/platform_window/platform_window.gyp:platform_window',
335           ],
336         }],
337         ['OS=="win"', {
338           'dependencies': [
339             '../third_party/iaccessible2/iaccessible2.gyp:iaccessible2',
340           ],
341         }],
342         ['OS!="android" and OS!="ios"', {
343           'sources': [
344             'browser/compositor/test/no_transport_image_transport_factory.cc',
345             'browser/compositor/test/no_transport_image_transport_factory.h',
346           ],
347           'dependencies': [
348             '../ui/compositor/compositor.gyp:compositor',
349             '../third_party/libvpx/libvpx.gyp:libvpx',
350           ],
351         }],
352         ['OS=="android"', {
353           'dependencies': [
354             '../ui/shell_dialogs/shell_dialogs.gyp:shell_dialogs',
355             'content.gyp:content_v8_external_data',
356           ],
357         }],
358         ['v8_use_external_startup_data==1', {
359           'dependencies': [
360             '../gin/gin.gyp:gin',
361           ],
362         }],
363       ],
364     },
365     {
366       'target_name': 'content_unittests',
367       'type': '<(gtest_target_type)',
368       'dependencies': [
369         'browser/service_worker/service_worker_proto.gyp:proto',
370         'browser/speech/proto/speech_proto.gyp:speech_proto',
371         'content.gyp:content_browser',
372         'content.gyp:content_common',
373         'test_support_content',
374         '../base/base.gyp:test_support_base',
375         '../crypto/crypto.gyp:crypto',
376         '../device/battery/battery.gyp:device_battery',
377         '../device/battery/battery.gyp:device_battery_mojo_bindings',
378         '../mojo/edk/mojo_edk.gyp:mojo_common_test_support',
379         '../mojo/mojo_base.gyp:mojo_environment_chromium',
380         '../mojo/public/mojo_public.gyp:mojo_cpp_bindings',
381         '../net/net.gyp:net_test_support',
382         '../skia/skia.gyp:skia',
383         '../sql/sql.gyp:sql',
384         '../sql/sql.gyp:test_support_sql',
385         '../testing/gmock.gyp:gmock',
386         '../testing/gtest.gyp:gtest',
387         '../third_party/re2/re2.gyp:re2',
388         '../ui/accessibility/accessibility.gyp:accessibility',
389         '../ui/base/ui_base.gyp:ui_base',
390         '../ui/gfx/gfx.gyp:gfx',
391         '../ui/gfx/gfx.gyp:gfx_geometry',
392         '../ui/gfx/ipc/gfx_ipc.gyp:gfx_ipc',
393       ],
394       'include_dirs': [
395         '..',
396         '<(SHARED_INTERMEDIATE_DIR)',  # Needed by render_media_client_unittest.cc.
397       ],
398       'sources': [
399         'browser/accessibility/accessibility_mode_helper_unittest.cc',
400         'browser/accessibility/browser_accessibility_mac_unittest.mm',
401         'browser/accessibility/browser_accessibility_manager_unittest.cc',
402         'browser/accessibility/browser_accessibility_win_unittest.cc',
403         'browser/appcache/appcache_database_unittest.cc',
404         'browser/appcache/appcache_disk_cache_unittest.cc',
405         'browser/appcache/appcache_group_unittest.cc',
406         'browser/appcache/appcache_host_unittest.cc',
407         'browser/appcache/appcache_manifest_parser_unittest.cc',
408         'browser/appcache/appcache_quota_client_unittest.cc',
409         'browser/appcache/appcache_request_handler_unittest.cc',
410         'browser/appcache/appcache_response_unittest.cc',
411         'browser/appcache/appcache_service_unittest.cc',
412         'browser/appcache/appcache_storage_unittest.cc',
413         'browser/appcache/appcache_storage_impl_unittest.cc',
414         'browser/appcache/appcache_unittest.cc',
415         'browser/appcache/appcache_update_job_unittest.cc',
416         'browser/appcache/appcache_url_request_job_unittest.cc',
417         'browser/appcache/chrome_appcache_service_unittest.cc',
418         'browser/appcache/mock_appcache_policy.cc',
419         'browser/appcache/mock_appcache_policy.h',
420         'browser/appcache/mock_appcache_service.cc',
421         'browser/appcache/mock_appcache_service.h',
422         'browser/appcache/mock_appcache_storage.cc',
423         'browser/appcache/mock_appcache_storage.h',
424         'browser/appcache/mock_appcache_storage_unittest.cc',
425         'browser/browser_thread_unittest.cc',
426         'browser/browser_url_handler_impl_unittest.cc',
427         'browser/byte_stream_unittest.cc',
428         'browser/child_process_security_policy_unittest.cc',
429         'browser/cocoa/system_hotkey_map_unittest.mm',
430         'browser/compositor/buffer_queue_unittest.cc',
431         'browser/compositor/software_browser_compositor_output_surface_unittest.cc',
432         'browser/compositor/software_output_device_ozone_unittest.cc',
433         'browser/databases_table_unittest.cc',
434         'browser/database_quota_client_unittest.cc',
435         'browser/database_tracker_unittest.cc',
436         'browser/database_util_unittest.cc',
437         'browser/device_sensors/data_fetcher_shared_memory_base_unittest.cc',
438         'browser/device_sensors/sensor_manager_android_unittest.cc',
439         'browser/devtools/embedded_worker_devtools_manager_unittest.cc',
440         'browser/devtools/devtools_http_handler_unittest.cc',
441         'browser/devtools/devtools_manager_unittest.cc',
442         'browser/dom_storage/dom_storage_area_unittest.cc',
443         'browser/dom_storage/dom_storage_context_impl_unittest.cc',
444         'browser/dom_storage/dom_storage_database_unittest.cc',
445         'browser/dom_storage/session_storage_database_unittest.cc',
446         'browser/download/base_file_unittest.cc',
447         'browser/download/download_file_unittest.cc',
448         'browser/download/download_item_impl_unittest.cc',
449         'browser/download/download_manager_impl_unittest.cc',
450         'browser/download/file_metadata_unittest_linux.cc',
451         'browser/download/rate_estimator_unittest.cc',
452         'browser/download/save_package_unittest.cc',
453         'browser/fileapi/blob_storage_context_unittest.cc',
454         'browser/fileapi/blob_url_request_job_unittest.cc',
455         'browser/fileapi/copy_or_move_file_validator_unittest.cc',
456         'browser/fileapi/copy_or_move_operation_delegate_unittest.cc',
457         'browser/fileapi/dragged_file_util_unittest.cc',
458         'browser/fileapi/external_mount_points_unittest.cc',
459         'browser/fileapi/file_system_context_unittest.cc',
460         'browser/fileapi/file_system_dir_url_request_job_unittest.cc',
461         'browser/fileapi/file_system_file_stream_reader_unittest.cc',
462         'browser/fileapi/file_system_operation_impl_unittest.cc',
463         'browser/fileapi/file_system_operation_impl_write_unittest.cc',
464         'browser/fileapi/file_system_operation_runner_unittest.cc',
465         'browser/fileapi/file_system_quota_client_unittest.cc',
466         'browser/fileapi/file_system_url_request_job_unittest.cc',
467         'browser/fileapi/file_system_url_unittest.cc',
468         'browser/fileapi/file_system_usage_cache_unittest.cc',
469         'browser/fileapi/file_writer_delegate_unittest.cc',
470         'browser/fileapi/fileapi_message_filter_unittest.cc',
471         'browser/fileapi/isolated_context_unittest.cc',
472         'browser/fileapi/local_file_stream_reader_unittest.cc',
473         'browser/fileapi/local_file_stream_writer_unittest.cc',
474         'browser/fileapi/local_file_util_unittest.cc',
475         'browser/fileapi/mock_file_change_observer.cc',
476         'browser/fileapi/mock_file_change_observer.h',
477         'browser/fileapi/mock_file_update_observer.cc',
478         'browser/fileapi/mock_file_update_observer.h',
479         'browser/fileapi/mock_url_request_delegate.cc',
480         'browser/fileapi/mock_url_request_delegate.h',
481         'browser/fileapi/native_file_util_unittest.cc',
482         'browser/fileapi/obfuscated_file_util_unittest.cc',
483         'browser/fileapi/plugin_private_file_system_backend_unittest.cc',
484         'browser/fileapi/recursive_operation_delegate_unittest.cc',
485         'browser/fileapi/sandbox_database_test_helper.cc',
486         'browser/fileapi/sandbox_database_test_helper.h',
487         'browser/fileapi/sandbox_directory_database_unittest.cc',
488         'browser/fileapi/sandbox_file_system_backend_delegate_unittest.cc',
489         'browser/fileapi/sandbox_file_system_backend_unittest.cc',
490         'browser/fileapi/sandbox_isolated_origin_database_unittest.cc',
491         'browser/fileapi/sandbox_origin_database_unittest.cc',
492         'browser/fileapi/sandbox_prioritized_origin_database_unittest.cc',
493         'browser/fileapi/timed_task_helper_unittest.cc',
494         'browser/fileapi/transient_file_util_unittest.cc',
495         'browser/fileapi/upload_file_system_file_element_reader_unittest.cc',
496         'browser/frame_host/frame_tree_unittest.cc',
497         'browser/frame_host/navigation_controller_impl_unittest.cc',
498         'browser/frame_host/navigation_entry_impl_unittest.cc',
499         'browser/frame_host/navigator_impl_unittest.cc',
500         'browser/frame_host/render_frame_host_manager_unittest.cc',
501         'browser/frame_host/render_widget_host_view_child_frame_unittest.cc',
502         'browser/frame_host/render_widget_host_view_guest_unittest.cc',
503         'browser/gamepad/gamepad_provider_unittest.cc',
504         'browser/gamepad/gamepad_service_unittest.cc',
505         'browser/gamepad/gamepad_test_helpers.cc',
506         'browser/gamepad/gamepad_test_helpers.h',
507         'browser/geofencing/geofencing_manager_unittest.cc',
508         'browser/geofencing/geofencing_service_unittest.cc',
509         'browser/geolocation/geolocation_provider_impl_unittest.cc',
510         'browser/geolocation/location_arbitrator_impl_unittest.cc',
511         'browser/geolocation/network_location_provider_unittest.cc',
512         'browser/geolocation/wifi_data_provider_chromeos_unittest.cc',
513         'browser/geolocation/wifi_data_provider_common_unittest.cc',
514         'browser/geolocation/wifi_data_provider_linux_unittest.cc',
515         'browser/geolocation/wifi_data_provider_win_unittest.cc',
516         'browser/gpu/gpu_data_manager_impl_private_unittest.cc',
517         'browser/gpu/shader_disk_cache_unittest.cc',
518         'browser/host_zoom_map_impl_unittest.cc',
519         'browser/indexed_db/indexed_db_active_blob_registry_unittest.cc',
520         'browser/indexed_db/indexed_db_backing_store_unittest.cc',
521         'browser/indexed_db/indexed_db_cleanup_on_io_error_unittest.cc',
522         'browser/indexed_db/indexed_db_database_unittest.cc',
523         'browser/indexed_db/indexed_db_factory_unittest.cc',
524         'browser/indexed_db/indexed_db_fake_backing_store.cc',
525         'browser/indexed_db/indexed_db_fake_backing_store.h',
526         'browser/indexed_db/indexed_db_leveldb_coding_unittest.cc',
527         'browser/indexed_db/indexed_db_quota_client_unittest.cc',
528         'browser/indexed_db/indexed_db_transaction_unittest.cc',
529         'browser/indexed_db/indexed_db_unittest.cc',
530         'browser/indexed_db/leveldb/mock_leveldb_factory.cc',
531         'browser/indexed_db/leveldb/mock_leveldb_factory.h',
532         'browser/indexed_db/mock_indexed_db_callbacks.cc',
533         'browser/indexed_db/mock_indexed_db_callbacks.h',
534         'browser/indexed_db/mock_indexed_db_database_callbacks.cc',
535         'browser/indexed_db/mock_indexed_db_database_callbacks.h',
536         'browser/indexed_db/mock_indexed_db_factory.cc',
537         'browser/indexed_db/mock_indexed_db_factory.h',
538         'browser/indexed_db/leveldb/leveldb_unittest.cc',
539         'browser/indexed_db/list_set_unittest.cc',
540         'browser/loader/navigation_url_loader_unittest.cc',
541         'browser/loader/resource_buffer_unittest.cc',
542         'browser/loader/resource_dispatcher_host_unittest.cc',
543         'browser/loader/resource_loader_unittest.cc',
544         'browser/loader/resource_scheduler_unittest.cc',
545         'browser/loader/temporary_file_stream_unittest.cc',
546         'browser/loader/upload_data_stream_builder_unittest.cc',
547         'browser/mach_broker_mac_unittest.cc',
548         'browser/media/audio_stream_monitor_unittest.cc',
549         'browser/media/capture/audio_mirroring_manager_unittest.cc',
550         'browser/media/capture/video_capture_oracle_unittest.cc',
551         'browser/media/capture/web_contents_audio_input_stream_unittest.cc',
552         'browser/media/capture/web_contents_video_capture_device_unittest.cc',
553         'browser/media/media_internals_unittest.cc',
554         'browser/media/midi_host_unittest.cc',
555         'browser/media/webrtc_identity_store_unittest.cc',
556         'browser/net/sqlite_persistent_cookie_store_unittest.cc',
557         'browser/notification_service_impl_unittest.cc',
558         'browser/plugin_loader_posix_unittest.cc',
559         'browser/power_monitor_message_broadcaster_unittest.cc',
560         'browser/power_usage_monitor_impl_unittest.cc',
561         'browser/power_profiler/power_profiler_service_unittest.cc',
562         'browser/quota/mock_quota_manager.cc',
563         'browser/quota/mock_quota_manager.h',
564         'browser/quota/mock_quota_manager_proxy.cc',
565         'browser/quota/mock_quota_manager_proxy.h',
566         'browser/quota/mock_quota_manager_unittest.cc',
567         'browser/quota/quota_database_unittest.cc',
568         'browser/quota/quota_backend_impl_unittest.cc',
569         'browser/quota/quota_manager_unittest.cc',
570         'browser/quota/quota_reservation_manager_unittest.cc',
571         'browser/quota/quota_temporary_storage_evictor_unittest.cc',
572         'browser/quota/storage_monitor_unittest.cc',
573         'browser/quota/usage_tracker_unittest.cc',
574         'browser/renderer_host/input/gesture_event_queue_unittest.cc',
575         'browser/renderer_host/input/gesture_text_selector_unittest.cc',
576         'browser/renderer_host/input/input_router_impl_unittest.cc',
577         'browser/renderer_host/input/mock_input_ack_handler.cc',
578         'browser/renderer_host/input/mock_input_ack_handler.h',
579         'browser/renderer_host/input/mock_input_router_client.cc',
580         'browser/renderer_host/input/mock_input_router_client.h',
581         'browser/renderer_host/input/synthetic_gesture_controller_unittest.cc',
582         'browser/renderer_host/input/tap_suppression_controller_unittest.cc',
583         'browser/renderer_host/input/touch_action_filter_unittest.cc',
584         'browser/renderer_host/input/touch_emulator_unittest.cc',
585         'browser/renderer_host/input/touch_event_queue_unittest.cc',
586         'browser/renderer_host/input/touch_handle_unittest.cc',
587         'browser/renderer_host/input/touch_selection_controller_unittest.cc',
588         'browser/renderer_host/input/web_input_event_util_unittest.cc',
589         'browser/renderer_host/media/audio_input_device_manager_unittest.cc',
590         'browser/renderer_host/media/audio_renderer_host_unittest.cc',
591         'browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc',
592         'browser/renderer_host/media/media_stream_manager_unittest.cc',
593         'browser/renderer_host/media/media_stream_ui_proxy_unittest.cc',
594         'browser/renderer_host/media/video_capture_buffer_pool_unittest.cc',
595         'browser/renderer_host/media/video_capture_controller_unittest.cc',
596         'browser/renderer_host/media/video_capture_host_unittest.cc',
597         'browser/renderer_host/media/video_capture_manager_unittest.cc',
598         'browser/renderer_host/pepper/browser_ppapi_host_test.cc',
599         'browser/renderer_host/pepper/browser_ppapi_host_test.h',
600         'browser/renderer_host/pepper/pepper_file_system_browser_host_unittest.cc',
601         'browser/renderer_host/pepper/pepper_gamepad_host_unittest.cc',
602         'browser/renderer_host/pepper/pepper_printing_host_unittest.cc',
603         'browser/renderer_host/pepper/quota_reservation_unittest.cc',
604         'browser/renderer_host/render_process_host_unittest.cc',
605         'browser/renderer_host/render_view_host_unittest.cc',
606         'browser/renderer_host/render_widget_host_unittest.cc',
607         'browser/renderer_host/render_widget_host_view_aura_unittest.cc',
608         'browser/renderer_host/render_widget_host_view_base_unittest.cc',
609         'browser/renderer_host/render_widget_host_view_mac_editcommand_helper_unittest.mm',
610         'browser/renderer_host/render_widget_host_view_mac_unittest.mm',
611         'browser/renderer_host/software_frame_manager_unittest.cc',
612         'browser/renderer_host/text_input_client_mac_unittest.mm',
613         'browser/renderer_host/web_input_event_aura_unittest.cc',
614         'browser/renderer_host/websocket_dispatcher_host_unittest.cc',
615         'browser/resolve_proxy_msg_helper_unittest.cc',
616         'browser/service_worker/embedded_worker_instance_unittest.cc',
617         'browser/service_worker/embedded_worker_test_helper.cc',
618         'browser/service_worker/embedded_worker_test_helper.h',
619         'browser/service_worker/service_worker_cache_unittest.cc',
620         'browser/service_worker/service_worker_cache_storage_manager_unittest.cc',
621         'browser/service_worker/service_worker_context_unittest.cc',
622         'browser/service_worker/service_worker_controllee_request_handler_unittest.cc',
623         'browser/service_worker/service_worker_context_request_handler_unittest.cc',
624         'browser/service_worker/service_worker_database_unittest.cc',
625         'browser/service_worker/service_worker_dispatcher_host_unittest.cc',
626         'browser/service_worker/service_worker_handle_unittest.cc',
627         'browser/service_worker/service_worker_job_unittest.cc',
628         'browser/service_worker/service_worker_process_manager_unittest.cc',
629         'browser/service_worker/service_worker_provider_host_unittest.cc',
630         'browser/service_worker/service_worker_registration_unittest.cc',
631         'browser/service_worker/service_worker_request_handler_unittest.cc',
632         'browser/service_worker/service_worker_storage_unittest.cc',
633         'browser/service_worker/service_worker_url_request_job_unittest.cc',
634         'browser/service_worker/service_worker_utils_unittest.cc',
635         'browser/service_worker/service_worker_version_unittest.cc',
636         'browser/service_worker/service_worker_write_to_cache_job_unittest.cc',
637         'browser/shared_worker/shared_worker_instance_unittest.cc',
638         'browser/shared_worker/shared_worker_service_impl_unittest.cc',
639         'browser/site_instance_impl_unittest.cc',
640         'browser/speech/chunked_byte_buffer_unittest.cc',
641         'browser/speech/endpointer/endpointer_unittest.cc',
642         'browser/speech/google_one_shot_remote_engine_unittest.cc',
643         'browser/speech/google_streaming_remote_engine_unittest.cc',
644         'browser/speech/speech_recognizer_impl_unittest.cc',
645         'browser/startup_task_runner_unittest.cc',
646         'browser/storage_partition_impl_map_unittest.cc',
647         'browser/storage_partition_impl_unittest.cc',
648         'browser/streams/stream_unittest.cc',
649         'browser/streams/stream_url_request_job_unittest.cc',
650         'browser/system_message_window_win_unittest.cc',
651         'browser/transition_request_manager_unittest.cc',
652         'browser/web_contents/aura/overscroll_navigation_overlay_unittest.cc',
653         'browser/web_contents/aura/window_slider_unittest.cc',
654         'browser/web_contents/web_contents_delegate_unittest.cc',
655         'browser/web_contents/web_contents_impl_unittest.cc',
656         'browser/web_contents/web_contents_user_data_unittest.cc',
657         'browser/web_contents/web_contents_view_mac_unittest.mm',
658         'browser/web_contents/web_drag_dest_mac_unittest.mm',
659         'browser/web_contents/web_drag_source_mac_unittest.mm',
660         'browser/webui/web_ui_data_source_unittest.cc',
661         'browser/webui/web_ui_message_handler_unittest.cc',
662         'child/blink_platform_impl_unittest.cc',
663         'child/fileapi/webfilewriter_base_unittest.cc',
664         'child/indexed_db/indexed_db_dispatcher_unittest.cc',
665         'child/indexed_db/webidbcursor_impl_unittest.cc',
666         'child/multipart_response_delegate_unittest.cc',
667         'child/npapi/plugin_lib_unittest.cc',
668         'child/power_monitor_broadcast_source_unittest.cc',
669         'child/resource_dispatcher_unittest.cc',
670         'child/simple_webmimeregistry_impl_unittest.cc',
671         'child/site_isolation_policy_unittest.cc',
672         'child/web_data_consumer_handle_impl_unittest.cc',
673         'child/web_gesture_curve_impl_unittest.cc',
674         'child/web_url_loader_impl_unittest.cc',
675         'child/webcrypto/test/aes_cbc_unittest.cc',
676         'child/webcrypto/test/aes_ctr_unittest.cc',
677         'child/webcrypto/test/aes_gcm_unittest.cc',
678         'child/webcrypto/test/aes_kw_unittest.cc',
679         'child/webcrypto/test/ecdsa_unittest.cc',
680         'child/webcrypto/test/hmac_unittest.cc',
681         'child/webcrypto/test/rsa_oaep_unittest.cc',
682         'child/webcrypto/test/rsa_pss_unittest.cc',
683         'child/webcrypto/test/rsa_ssa_unittest.cc',
684         'child/webcrypto/test/sha_unittest.cc',
685         'child/webcrypto/test/status_unittest.cc',
686         'child/webcrypto/test/test_helpers.cc',
687         'child/webcrypto/test/test_helpers.h',
688         'child/worker_task_runner_unittest.cc',
689         'common/android/address_parser_unittest.cc',
690         'common/android/gin_java_bridge_value_unittest.cc',
691         'common/cc_messages_unittest.cc',
692         'common/common_param_traits_unittest.cc',
693         'common/cursors/webcursor_unittest.cc',
694         'common/database_connections_unittest.cc',
695         'common/database_identifier_unittest.cc',
696         'common/dom_storage/dom_storage_map_unittest.cc',
697         'common/dwrite_font_platform_win_unittest.cc',
698         'common/fileapi/file_system_util_unittest.cc',
699         'common/gpu/client/gpu_memory_buffer_impl_unittest.cc',
700         'common/gpu/gpu_memory_manager_unittest.cc',
701         'common/host_discardable_shared_memory_manager_unittest.cc',
702         'common/host_shared_bitmap_manager_unittest.cc',
703         'common/indexed_db/indexed_db_key_unittest.cc',
704         'common/input/gesture_event_stream_validator_unittest.cc',
705         'common/input/input_param_traits_unittest.cc',
706         'common/input/touch_event_stream_validator_unittest.cc',
707         'common/input/web_input_event_traits_unittest.cc',
708         'common/inter_process_time_ticks_converter_unittest.cc',
709         'common/mac/attributed_string_coder_unittest.mm',
710         'common/mac/font_descriptor_unittest.mm',
711         'common/one_writer_seqlock_unittest.cc',
712         'common/page_state_serialization_unittest.cc',
713         'common/page_zoom_unittest.cc',
714         'common/plugin_list_unittest.cc',
715         'common/sandbox_mac_diraccess_unittest.mm',
716         'common/sandbox_mac_fontloading_unittest.mm',
717         'common/sandbox_mac_system_access_unittest.mm',
718         'common/sandbox_mac_unittest_helper.h',
719         'common/sandbox_mac_unittest_helper.mm',
720         'common/shareable_file_reference_unittest.cc',
721         'common/webplugininfo_unittest.cc',
722         'renderer/active_notification_tracker_unittest.cc',
723         'renderer/android/email_detector_unittest.cc',
724         'renderer/android/phone_number_detector_unittest.cc',
725         'renderer/bmp_image_decoder_unittest.cc',
726         'renderer/device_sensors/device_light_event_pump_unittest.cc',
727         'renderer/device_sensors/device_motion_event_pump_unittest.cc',
728         'renderer/device_sensors/device_orientation_event_pump_unittest.cc',
729         'renderer/disambiguation_popup_helper_unittest.cc',
730         'renderer/dom_storage/dom_storage_cached_area_unittest.cc',
731         'renderer/gpu/compositor_forwarding_message_filter_unittest.cc',
732         'renderer/gpu/frame_swap_message_queue_unittest.cc',
733         'renderer/gpu/queue_message_swap_promise_unittest.cc',
734         'renderer/gpu/render_widget_compositor_unittest.cc',
735         'renderer/ico_image_decoder_unittest.cc',
736         'renderer/input/input_event_filter_unittest.cc',
737         'renderer/input/input_handler_proxy_unittest.cc',
738         'renderer/manifest/manifest_parser_unittest.cc',
739         'renderer/media/android/media_info_loader_unittest.cc',
740         'renderer/media/audio_message_filter_unittest.cc',
741         'renderer/media/audio_renderer_mixer_manager_unittest.cc',
742         'renderer/media/render_media_client_unittest.cc',
743         'renderer/media/render_media_log_unittest.cc',
744         'renderer/media/video_capture_impl_manager_unittest.cc',
745         'renderer/media/video_capture_impl_unittest.cc',
746         'renderer/media/video_capture_message_filter_unittest.cc',
747         'renderer/media/webrtc/video_destination_handler_unittest.cc',
748         'renderer/npapi/webplugin_impl_unittest.cc',
749         'renderer/pepper/event_conversion_unittest.cc',
750         'renderer/pepper/host_var_tracker_unittest.cc',
751         'renderer/pepper/mock_resource.h',
752         'renderer/pepper/pepper_broker_unittest.cc',
753         'renderer/pepper/v8_var_converter_unittest.cc',
754         'renderer/render_thread_impl_unittest.cc',
755         'renderer/render_widget_unittest.cc',
756         'renderer/scheduler/renderer_scheduler_impl_unittest.cc',
757         'renderer/scheduler/renderer_task_queue_selector_unittest.cc',
758         'renderer/scheduler/task_queue_manager_unittest.cc',
759         'renderer/screen_orientation/screen_orientation_dispatcher_unittest.cc',
760         'renderer/skia_benchmarking_extension_unittest.cc',
761         'renderer/v8_value_converter_impl_unittest.cc',
762         'test/fileapi_test_file_set.cc',
763         'test/fileapi_test_file_set.h',
764         'test/image_decoder_test.cc',
765         'test/image_decoder_test.h',
766         'test/run_all_unittests.cc',
767       ],
768       'conditions': [
769         ['OS == "ios"', {
770           'sources/': [
771             # iOS only needs a small portion of content; exclude all the
772             # implementation, and re-include what is used.
773             ['exclude', '\\.(cc|mm)$'],
774             ['include', '_ios\\.(cc|mm)$'],
775             ['include', '^browser/notification_service_impl_unittest\\.cc$'],
776             ['include', '^browser/web_contents/navigation_entry_impl_unittest\\.cc$'],
777             ['include', '^test/run_all_unittests\\.cc$'],
778           ],
779         }, {  # OS != "ios"
780           'dependencies': [
781             'content.gyp:content_browser',
782             'content.gyp:content_child',
783             'content.gyp:content_gpu',
784             'content.gyp:content_plugin',
785             'content.gyp:content_renderer',
786             'content.gyp:content_resources',
787             '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
788             '../cc/cc.gyp:cc',
789             '../cc/cc.gyp:cc_surfaces',
790             '../cc/cc_tests.gyp:cc_test_support',
791             '../gin/gin.gyp:gin',
792             '../gpu/gpu.gyp:gpu',
793             '../gpu/gpu.gyp:gpu_unittest_utils',
794             '../ipc/ipc.gyp:test_support_ipc',
795             '../media/media.gyp:media_test_support',
796             '../media/media.gyp:shared_memory_support',
797             '../storage/storage_browser.gyp:storage',
798             '../storage/storage_common.gyp:storage_common',
799             '../third_party/WebKit/public/blink.gyp:blink',
800             '../third_party/icu/icu.gyp:icui18n',
801             '../third_party/icu/icu.gyp:icuuc',
802             '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase',
803             '../third_party/libjingle/libjingle.gyp:libjingle',
804             '../ui/gl/gl.gyp:gl',
805           ],
806         }],
807         ['OS != "win"', {
808           'sources': [
809             'browser/file_descriptor_info_impl_unittest.cc',
810           ],
811         }],
812         ['enable_plugins==0', {
813           'sources/': [
814             ['exclude', '^browser/renderer_host/pepper/'],
815             ['exclude', '^child/npapi/'],
816             ['exclude', '^renderer/npapi/'],
817             ['exclude', '^renderer/pepper/'],
818           ],
819           'sources!': [
820             'browser/plugin_loader_posix_unittest.cc',
821             'renderer/media/webrtc/video_destination_handler_unittest.cc',
822           ],
823         }],
824         ['enable_webrtc==1', {
825           'sources': [
826             'browser/media/webrtc_internals_unittest.cc',
827             'browser/renderer_host/media/webrtc_identity_service_host_unittest.cc',
828             'browser/renderer_host/p2p/socket_host_test_utils.cc',
829             'browser/renderer_host/p2p/socket_host_test_utils.h',
830             'browser/renderer_host/p2p/socket_host_tcp_unittest.cc',
831             'browser/renderer_host/p2p/socket_host_tcp_server_unittest.cc',
832             'browser/renderer_host/p2p/socket_host_udp_unittest.cc',
833             'browser/renderer_host/p2p/socket_host_unittest.cc',
834             'renderer/media/media_stream_audio_processor_unittest.cc',
835             'renderer/media/media_stream_constraints_util_unittest.cc',
836             'renderer/media/media_stream_dispatcher_unittest.cc',
837             'renderer/media/media_stream_video_capture_source_unittest.cc',
838             'renderer/media/media_stream_video_source_unittest.cc',
839             'renderer/media/media_stream_video_track_unittest.cc',
840             'renderer/media/mock_media_stream_registry.cc',
841             'renderer/media/mock_media_stream_registry.h',
842             'renderer/media/mock_media_stream_video_sink.cc',
843             'renderer/media/mock_media_stream_video_sink.h',
844             'renderer/media/mock_media_stream_video_source.cc',
845             'renderer/media/mock_media_stream_video_source.h',
846             'renderer/media/mock_media_constraint_factory.cc',
847             'renderer/media/rtc_peer_connection_handler_unittest.cc',
848             'renderer/media/rtc_video_decoder_unittest.cc',
849             'renderer/media/speech_recognition_audio_sink_unittest.cc',
850             'renderer/media/user_media_client_impl_unittest.cc',
851             'renderer/media/video_source_handler_unittest.cc',
852             'renderer/media/webrtc/media_stream_remote_video_source_unittest.cc',
853             'renderer/media/webrtc/media_stream_track_metrics_unittest.cc',
854             'renderer/media/webrtc/peer_connection_dependency_factory_unittest.cc',
855             'renderer/media/webrtc/webrtc_local_audio_track_adapter_unittest.cc',
856             'renderer/media/webrtc/webrtc_media_stream_adapter_unittest.cc',
857             'renderer/media/webrtc/webrtc_video_capturer_adapter_unittest.cc',
858             'renderer/media/webrtc_audio_capturer_unittest.cc',
859             'renderer/media/webrtc_audio_renderer_unittest.cc',
860             'renderer/media/webrtc_identity_service_unittest.cc',
861             'renderer/media/webrtc_local_audio_source_provider_unittest.cc',
862             'renderer/media/webrtc_local_audio_track_unittest.cc',
863             'renderer/media/webrtc_uma_histograms_unittest.cc',
864             'renderer/p2p/ipc_network_manager_unittest.cc',
865           ],
866           'dependencies': [
867             '../third_party/libjingle/libjingle.gyp:libjingle_webrtc',
868             '../third_party/libjingle/libjingle.gyp:libpeerconnection',
869             '../third_party/webrtc/modules/modules.gyp:video_capture_module',
870           ]
871         }, {
872           'sources!': [
873             'renderer/media/webrtc/video_destination_handler_unittest.cc',
874           ],
875         }],
876         ['enable_webrtc==1 and (OS=="linux" or OS=="mac" or OS=="win")', {
877           'sources': [
878             'browser/media/capture/desktop_capture_device_unittest.cc',
879           ],
880           'dependencies': [
881             '../third_party/webrtc/modules/modules.gyp:desktop_capture',
882           ],
883         }],
884         ['enable_webrtc==1 and chromeos==1', {
885           'sources': [
886             'browser/media/capture/desktop_capture_device_aura_unittest.cc',
887           ],
888         }],
889         # TODO(jrg): remove the OS=="android" section?
890         # http://crbug.com/113172
891         # Understand better how media_stream_ is tied into Chromium.
892         ['enable_webrtc==0 and OS=="android"', {
893           'sources/': [
894             ['exclude', '^renderer/media/media_stream_'],
895           ],
896         }],
897         ['enable_web_speech==0', {
898           'sources/': [
899             ['exclude', '^browser/speech/'],
900           ]
901         }],
902         ['notifications==0', {
903            'sources!': [
904              'renderer/active_notification_tracker_unittest.cc',
905            ],
906         }],
907         ['OS=="linux"', {
908           'dependencies': [
909             '../build/linux/system.gyp:dbus',
910             '../dbus/dbus.gyp:dbus_test_support',
911           ],
912         }],
913         ['OS=="win" and win_use_allocator_shim==1', {
914           'dependencies': [
915             '../base/allocator/allocator.gyp:allocator',
916           ],
917         }],
918         ['OS=="win"', {
919           'dependencies': [
920             '../third_party/iaccessible2/iaccessible2.gyp:iaccessible2',
921           ],
922         }],
923         ['OS=="mac"', {
924           # These flags are needed to run the test on Mac.
925           # Search for comments about "xcode_settings" in chrome_tests.gypi.
926           'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']},
927         }],
928         ['chromeos==1', {
929           'dependencies': [
930             '../chromeos/chromeos.gyp:chromeos',
931           ],
932           'sources/': [
933             ['exclude', '^browser/geolocation/wifi_data_provider_linux_unittest.cc'],
934           ],
935         }],
936         ['use_aura==1', {
937           'dependencies': [
938             '../ui/aura/aura.gyp:aura',
939             '../ui/wm/wm.gyp:wm',
940           ]
941         }],
942         ['use_aura==1 or toolkit_views==1', {
943           'dependencies': [
944             '../ui/events/events.gyp:events_test_support',
945           ],
946         }],
947         ['use_aura!=1 and OS!="mac"', {
948           'sources/': [
949             ['exclude', '^browser/compositor/'],
950           ],
951         }],
952         ['OS == "android"', {
953           'sources': [
954             'browser/android/java/gin_java_method_invocation_helper_unittest.cc',
955             'browser/android/java/java_type_unittest.cc',
956             'browser/android/java/jni_helper_unittest.cc',
957             'browser/android/overscroll_refresh_unittest.cc',
958             'browser/android/system_ui_resource_manager_impl_unittest.cc',
959             'browser/renderer_host/input/motion_event_android_unittest.cc',
960             'renderer/java/gin_java_bridge_value_converter_unittest.cc',
961           ],
962           'sources!': [
963             'browser/geolocation/network_location_provider_unittest.cc',
964             'browser/geolocation/wifi_data_provider_chromeos_unittest.cc',
965             'browser/geolocation/wifi_data_provider_common_unittest.cc',
966             'browser/geolocation/wifi_data_provider_linux_unittest.cc',
967           ],
968         }],
969         ['OS != "android" and OS != "ios"', {
970           'dependencies': [
971             '../third_party/libvpx/libvpx.gyp:libvpx',
972           ],
973         }],
974         ['OS == "android"', {
975           'dependencies': [
976             '../testing/android/native_test.gyp:native_test_native_code',
977           ],
978         }],
979         ['use_aura!=1 and OS!="android"', {
980           'sources!': [
981             'browser/renderer_host/input/tap_suppression_controller_unittest.cc',
982           ],
983         }],
984         ['use_dbus==0', {
985           'sources!': [
986             'browser/geolocation/wifi_data_provider_linux_unittest.cc',
987           ],
988         }],
989         ['OS!="win" and OS!="mac"', {
990           'sources!': [
991             'common/plugin_list_unittest.cc',
992           ],
993         }],
994         ['use_ozone==1', {
995           'dependencies': [
996             '../ui/ozone/ozone.gyp:ozone',
997             '../ui/ozone/ozone.gyp:ozone_base',
998           ],
999         }],
1000       ],
1001     },
1002   ],
1003   'conditions': [
1004     ['test_isolation_mode != "noop"', {
1005       'targets': [
1006         {
1007           'target_name': 'content_browsertests_run',
1008           'type': 'none',
1009           'dependencies': [
1010             'content_browsertests',
1011           ],
1012           'includes': [
1013             '../build/isolate.gypi',
1014           ],
1015           'sources': [
1016             'content_browsertests.isolate',
1017           ],
1018         },
1019         {
1020           'target_name': 'content_unittests_run',
1021           'type': 'none',
1022           'dependencies': [
1023             'content_unittests',
1024           ],
1025           'includes': [
1026             '../build/isolate.gypi',
1027           ],
1028           'sources': [
1029             'content_unittests.isolate',
1030           ],
1031           'conditions': [
1032             ['use_x11==1', {
1033               'dependencies': [
1034                 '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
1035               ],
1036             }],
1037           ],
1038         },
1039       ],
1040       'conditions': [
1041         ['archive_gpu_tests==1', {
1042           'targets': [
1043             {
1044               'target_name': 'content_gl_tests_run',
1045               'type': 'none',
1046               'dependencies': [
1047                 'content_shell_and_tests.gyp:content_gl_tests',
1048               ],
1049               'includes': [
1050                 '../build/isolate.gypi',
1051               ],
1052               'sources': [
1053                 'content_gl_tests.isolate',
1054               ],
1055             },
1056           ],
1057         }],
1058       ],
1059     }],
1060     ['OS!="ios"', {
1061       'targets': [
1062         {
1063           'target_name': 'content_perftests',
1064           'type': '<(gtest_target_type)',
1065           'defines!': ['CONTENT_IMPLEMENTATION'],
1066           'dependencies': [
1067             'content.gyp:content_browser',
1068             'content.gyp:content_common',
1069             'test_support_content',
1070             '../base/base.gyp:test_support_base',
1071             '../cc/cc.gyp:cc',
1072             '../skia/skia.gyp:skia',
1073             '../testing/gtest.gyp:gtest',
1074             '../testing/perf/perf_test.gyp:*',
1075             '../ui/gfx/gfx.gyp:gfx',
1076             '../ui/gfx/gfx.gyp:gfx_geometry',
1077           ],
1078           'include_dirs': [
1079             '..',
1080           ],
1081           'sources': [
1082             'browser/renderer_host/input/input_router_impl_perftest.cc',
1083             'common/cc_messages_perftest.cc',
1084             'test/run_all_perftests.cc',
1085           ],
1086           'conditions': [
1087             ['OS == "android"', {
1088               'dependencies': [
1089                 '../testing/android/native_test.gyp:native_test_native_code',
1090               ],
1091             }],
1092             ['OS=="win" and component!="shared_library" and win_use_allocator_shim==1', {
1093               'dependencies': [
1094                 '<(DEPTH)/base/allocator/allocator.gyp:allocator',
1095               ],
1096             }],
1097           ],
1098         },
1099         {
1100           'target_name': 'content_browser_test_support',
1101           'type': 'static_library',
1102           'dependencies': [
1103             'content_shell_lib',
1104             '../skia/skia.gyp:skia',
1105             '../testing/gtest.gyp:gtest',
1106             '../ui/accessibility/accessibility.gyp:ax_gen',
1107           ],
1108           'sources': [
1109             'test/content_test_launcher.cc',
1110             'public/test/content_browser_test.cc',
1111             'public/test/content_browser_test.h',
1112             'public/test/content_browser_test_utils.cc',
1113             'public/test/content_browser_test_utils.h',
1114             'public/test/content_browser_test_utils_mac.mm',
1115           ],
1116           'include_dirs': [
1117             '<(SHARED_INTERMEDIATE_DIR)',
1118           ],
1119           'conditions': [
1120             ['OS=="android"', {
1121               'dependencies': [
1122                 'content.gyp:content_app_both',
1123               ],
1124             }, {
1125               'dependencies': [
1126                 'content.gyp:content_browser',
1127               ],
1128             }],
1129           ],
1130         },
1131         {
1132           'target_name': 'web_ui_test_mojo_bindings',
1133           'type': 'static_library',
1134           'dependencies': [
1135             '../mojo/public/mojo_public.gyp:mojo_cpp_bindings',
1136           ],
1137           'sources': [
1138             'test/data/web_ui_test_mojo_bindings.mojom',
1139           ],
1140           'includes': [ '../mojo/public/tools/bindings/mojom_bindings_generator.gypi' ],
1141           'export_dependent_settings': [
1142             '../mojo/public/mojo_public.gyp:mojo_cpp_bindings',
1143           ],
1144         },
1145         {
1146           'target_name': 'content_browsertests',
1147           'type': '<(gtest_target_type)',
1148           'dependencies': [
1149             'content.gyp:content_common',
1150             'content.gyp:content_gpu',
1151             'content.gyp:content_plugin',
1152             'content.gyp:content_renderer',
1153             'content.gyp:content_resources',
1154             'content_browser_test_support',
1155             'content_shell_lib',
1156             'content_shell_pak',
1157             'test_support_content',
1158             'web_ui_test_mojo_bindings',
1159             '../base/base.gyp:test_support_base',
1160             '../device/battery/battery.gyp:device_battery',
1161             '../device/battery/battery.gyp:device_battery_mojo_bindings',
1162             '../gin/gin.gyp:gin',
1163             '../gpu/gpu.gyp:gpu',
1164             '../ipc/ipc.gyp:test_support_ipc',
1165             '../media/media.gyp:media_test_support',
1166             '../media/media.gyp:shared_memory_support',
1167             '../mojo/edk/mojo_edk.gyp:mojo_common_test_support',
1168             '../mojo/edk/mojo_edk.gyp:mojo_system_impl',
1169             '../mojo/mojo_base.gyp:mojo_environment_chromium',
1170             '../mojo/public/mojo_public.gyp:mojo_cpp_bindings',
1171             '../mojo/public/mojo_public.gyp:mojo_js_bindings',
1172             '../net/net.gyp:net_test_support',
1173             '../ppapi/ppapi_internal.gyp:ppapi_host',
1174             '../ppapi/ppapi_internal.gyp:ppapi_ipc',
1175             '../ppapi/ppapi_internal.gyp:ppapi_proxy',
1176             '../ppapi/ppapi_internal.gyp:ppapi_shared',
1177             '../ppapi/ppapi_internal.gyp:ppapi_tests',
1178             '../ppapi/ppapi_internal.gyp:ppapi_unittest_shared',
1179             '../testing/gmock.gyp:gmock',
1180             '../testing/gtest.gyp:gtest',
1181             '../third_party/WebKit/public/blink.gyp:blink',
1182             '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase',
1183             '../third_party/mesa/mesa.gyp:osmesa',
1184             '../ui/accessibility/accessibility.gyp:accessibility',
1185             '../ui/base/ui_base.gyp:ui_base',
1186             '../ui/gfx/gfx.gyp:gfx',
1187             '../ui/gfx/gfx.gyp:gfx_geometry',
1188             '../ui/gl/gl.gyp:gl',
1189             '../ui/resources/ui_resources.gyp:ui_resources',
1190             '../ui/shell_dialogs/shell_dialogs.gyp:shell_dialogs',
1191             '../ui/snapshot/snapshot.gyp:snapshot',
1192             '../ui/accessibility/accessibility.gyp:ax_gen',
1193           ],
1194           'include_dirs': [
1195             '..',
1196             '<(SHARED_INTERMEDIATE_DIR)',  # Needed by encrypted_media_browsertest.cc
1197           ],
1198           'includes': [
1199             'browser/gpu/test_support_gpu.gypi',
1200           ],
1201           'defines': [
1202             'HAS_OUT_OF_PROC_TEST_RUNNER',
1203           ],
1204           'sources': [
1205             'app/mojo/mojo_browsertest.cc',
1206             'browser/accessibility/accessibility_ipc_error_browsertest.cc',
1207             'browser/accessibility/accessibility_mode_browsertest.cc',
1208             'browser/accessibility/accessibility_win_browsertest.cc',
1209             'browser/accessibility/android_granularity_movement_browsertest.cc',
1210             'browser/accessibility/android_hit_testing_browsertest.cc',
1211             'browser/accessibility/cross_platform_accessibility_browsertest.cc',
1212             'browser/accessibility/dump_accessibility_tree_browsertest.cc',
1213             'browser/accessibility/site_per_process_accessibility_browsertest.cc',
1214             'browser/battery_status/battery_status_browsertest.cc',
1215             'browser/compositor/image_transport_factory_browsertest.cc',
1216             'browser/bookmarklet_browsertest.cc',
1217             'browser/child_process_launcher_browsertest.cc',
1218             'browser/child_process_security_policy_browsertest.cc',
1219             'browser/cross_site_transfer_browsertest.cc',
1220             'browser/database_browsertest.cc',
1221             'browser/device_sensors/device_inertial_sensor_browsertest.cc',
1222             'browser/devtools/renderer_overrides_handler_browsertest.cc',
1223             'browser/dom_storage/dom_storage_browsertest.cc',
1224             'browser/download/download_browsertest.cc',
1225             'browser/download/drag_download_file_browsertest.cc',
1226             'browser/download/mhtml_generation_browsertest.cc',
1227             'browser/download/save_package_browsertest.cc',
1228             'browser/fileapi/file_system_browsertest.cc',
1229             'browser/frame_host/frame_tree_browsertest.cc',
1230             'browser/frame_host/render_frame_host_manager_browsertest.cc',
1231             'browser/frame_host/navigation_controller_impl_browsertest.cc',
1232             'browser/gpu/compositor_util_browsertest.cc',
1233             'browser/gpu/gpu_ipc_browsertests.cc',
1234             'browser/indexed_db/indexed_db_browsertest.cc',
1235             'browser/indexed_db/mock_browsertest_indexed_db_class_factory.cc',
1236             'browser/indexed_db/mock_browsertest_indexed_db_class_factory.h',
1237             'browser/loader/resource_dispatcher_host_browsertest.cc',
1238             'browser/manifest/manifest_browsertest.cc',
1239             'browser/media/encrypted_media_browsertest.cc',
1240             'browser/media/media_browsertest.cc',
1241             'browser/media/media_browsertest.h',
1242             'browser/media/media_canplaytype_browsertest.cc',
1243             'browser/media/media_source_browsertest.cc',
1244             'browser/net_info_browsertest.cc',
1245             'browser/plugin_data_remover_impl_browsertest.cc',
1246             'browser/plugin_browsertest.cc',
1247             'browser/plugin_service_impl_browsertest.cc',
1248             'browser/renderer_host/input/touch_action_browsertest.cc',
1249             'browser/renderer_host/input/touch_input_browsertest.cc',
1250             'browser/renderer_host/render_process_host_browsertest.cc',
1251             'browser/renderer_host/render_view_host_browsertest.cc',
1252             'browser/renderer_host/render_widget_host_browsertest.cc',
1253             'browser/renderer_host/render_widget_host_view_browsertest.cc',
1254             'browser/screen_orientation/screen_orientation_browsertest.cc',
1255             'browser/security_exploit_browsertest.cc',
1256             'browser/service_worker/service_worker_browsertest.cc',
1257             'browser/session_history_browsertest.cc',
1258             'browser/shared_worker/worker_browsertest.cc',
1259             'browser/site_per_process_browsertest.h',
1260             'browser/site_per_process_browsertest.cc',
1261             'browser/speech/speech_recognition_browsertest.cc',
1262             'browser/tracing/tracing_controller_browsertest.cc',
1263             'browser/transition_browsertest.cc',
1264             'browser/web_contents/opened_by_dom_browsertest.cc',
1265             'browser/web_contents/touch_editable_impl_aura_browsertest.cc',
1266             'browser/web_contents/web_contents_impl_browsertest.cc',
1267             'browser/web_contents/web_contents_view_aura_browsertest.cc',
1268             'browser/webkit_browsertest.cc',
1269             'browser/webui/web_ui_mojo_browsertest.cc',
1270             'child/site_isolation_policy_browsertest.cc',
1271             'renderer/accessibility/renderer_accessibility_browsertest.cc',
1272             'renderer/browser_render_view_browsertest.cc',
1273             'renderer/dom_serializer_browsertest.cc',
1274             'renderer/gin_browsertest.cc',
1275             'renderer/mouse_lock_dispatcher_browsertest.cc',
1276             'renderer/pepper/fake_pepper_plugin_instance.cc',
1277             'renderer/pepper/mock_renderer_ppapi_host.cc',
1278             'renderer/pepper/pepper_device_enumeration_host_helper_unittest.cc',
1279             'renderer/pepper/pepper_file_chooser_host_unittest.cc',
1280             'renderer/pepper/pepper_graphics_2d_host_unittest.cc',
1281             'renderer/pepper/pepper_plugin_instance_throttler_unittest.cc',
1282             'renderer/pepper/pepper_url_request_unittest.cc',
1283             'renderer/pepper/plugin_power_saver_helper_browsertest.cc',
1284             'renderer/render_thread_impl_browsertest.cc',
1285             'renderer/render_view_browsertest.cc',
1286             'renderer/render_view_browsertest_mac.mm',
1287             'renderer/render_widget_browsertest.cc',
1288             'renderer/resource_fetcher_browsertest.cc',
1289             'renderer/savable_resources_browsertest.cc',
1290             'test/accessibility_browser_test_utils.cc',
1291             'test/accessibility_browser_test_utils.h',
1292             'test/browser_test_utils_browsertest.cc',
1293             'test/content_browser_test_test.cc',
1294             'test/ppapi/ppapi_browsertest.cc',
1295             'test/ppapi/ppapi_test.cc',
1296             'test/ppapi/ppapi_test.h',
1297             'test/webui_resource_browsertest.cc',
1298           ],
1299           'conditions': [
1300             ['chromeos==0', {
1301               'sources!': [
1302                 'browser/web_contents/touch_editable_impl_aura_browsertest.cc',
1303               ],
1304             }],
1305             ['OS=="win"', {
1306               'resource_include_dirs': [
1307                 '<(SHARED_INTERMEDIATE_DIR)/webkit',
1308               ],
1309               'sources': [
1310                 'shell/app/resource.h',
1311                 'shell/app/shell.rc',
1312                 # TODO:  It would be nice to have these pulled in
1313                 # automatically from direct_dependent_settings in
1314                 # their various targets (net.gyp:net_resources, etc.),
1315                 # but that causes errors in other targets when
1316                 # resulting .res files get referenced multiple times.
1317                 '<(SHARED_INTERMEDIATE_DIR)/blink/public/resources/blink_resources.rc',
1318                 '<(SHARED_INTERMEDIATE_DIR)/content/app/strings/content_strings_en-US.rc',
1319                 '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc',
1320               ],
1321               'dependencies': [
1322                 '<(DEPTH)/content/app/strings/content_strings.gyp:content_strings',
1323                 '<(DEPTH)/net/net.gyp:net_resources',
1324                 '<(DEPTH)/third_party/WebKit/public/blink_resources.gyp:blink_resources',
1325                 '<(DEPTH)/third_party/iaccessible2/iaccessible2.gyp:iaccessible2',
1326                 '<(DEPTH)/third_party/isimpledom/isimpledom.gyp:isimpledom',
1327               ],
1328               'configurations': {
1329                 'Debug_Base': {
1330                   'msvs_settings': {
1331                     'VCLinkerTool': {
1332                       'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
1333                     },
1334                   },
1335                 },
1336               },
1337               # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1338               'msvs_disabled_warnings': [ 4267, ],
1339             }],
1340             ['OS=="win" and win_use_allocator_shim==1', {
1341               'dependencies': [
1342                 '../base/allocator/allocator.gyp:allocator',
1343               ],
1344             }],
1345             ['OS=="linux"', {
1346               'sources!': [
1347                 'browser/accessibility/dump_accessibility_tree_browsertest.cc',
1348               ],
1349             }],
1350             ['OS!="android"', {
1351               'sources!': [
1352                 'browser/accessibility/android_granularity_movement_browsertest.cc',
1353                 'browser/accessibility/android_hit_testing_browsertest.cc',
1354               ]
1355             }],
1356             ['OS=="android"', {
1357               'sources': [
1358                 'shell/android/browsertests_apk/content_browser_tests_android.cc',
1359               ],
1360               'dependencies': [
1361                 'content_shell_jni_headers',
1362                 'content_shell_lib',
1363                 '../testing/android/native_test.gyp:native_test_util',
1364               ],
1365             }],
1366             ['OS=="mac"', {
1367               'dependencies': [
1368                 'content_shell',  # Needed for Content Shell.app's Helper.
1369               ],
1370               'sources': [
1371                 'renderer/external_popup_menu_browsertest.cc',
1372               ],
1373             }],
1374             ['use_aura==1 and OS!="win"', {
1375               'sources!': [
1376                 'browser/plugin_browsertest.cc',
1377               ],
1378             }],
1379             ['use_aura==1 or toolkit_views==1', {
1380               'dependencies': [
1381                 '../ui/events/events.gyp:events_test_support',
1382               ],
1383             }],
1384             ['use_aura!=1 and OS!="mac"', {
1385               'sources/': [
1386                 ['exclude', '^browser/compositor/'],
1387               ],
1388             }],
1389             ['OS!="android" and OS!="ios" and OS!="linux"', {
1390               # npapi test plugin doesn't build on android or ios
1391               'dependencies': [
1392                 # Runtime dependencies
1393                 'copy_npapi_test_plugin',
1394               ],
1395             }],
1396             ['enable_webrtc==1', {
1397               'sources': [
1398                 'browser/media/webrtc_aecdump_browsertest.cc',
1399                 'browser/media/webrtc_browsertest.cc',
1400                 'browser/media/webrtc_getusermedia_browsertest.cc',
1401                 'browser/media/webrtc_internals_browsertest.cc',
1402                 'browser/media/webrtc_webcam_browsertest.cc',
1403                 'test/webrtc_content_browsertest_base.cc',
1404                 'test/webrtc_content_browsertest_base.h',
1405               ],
1406               'dependencies': [
1407                 '../testing/perf/perf_test.gyp:perf_test',
1408               ],
1409             }],
1410             ['enable_plugins==0', {
1411               'sources/': [
1412                 ['exclude', '^renderer/pepper/'],
1413               ],
1414               'sources!': [
1415                 'browser/plugin_service_impl_browsertest.cc',
1416                 'browser/plugin_data_remover_impl_browsertest.cc',
1417                 'test/ppapi/ppapi_browsertest.cc',
1418                 'test/ppapi/ppapi_test.cc',
1419                 'test/ppapi/ppapi_test.h',
1420               ],
1421               'dependencies!': [
1422                 '../ppapi/ppapi_internal.gyp:ppapi_tests',
1423               ]
1424             }],
1425             ['enable_web_speech==0', {
1426               'sources/': [
1427                 ['exclude', '^browser/speech/'],
1428               ]
1429             }],
1430             ['branding=="Chrome"', {
1431               'sources!': [
1432                 # These tests depend on single process mode, which is disabled
1433                 # in official builds.
1434                 'renderer/browser_render_view_browsertest.cc',
1435                 'renderer/dom_serializer_browsertest.cc',
1436                 'renderer/resource_fetcher_browsertest.cc',
1437                 'renderer/savable_resources_browsertest.cc',
1438               ],
1439             }],
1440           ],
1441         },
1442         {
1443           'target_name': 'content_gl_tests',
1444           'type': '<(gtest_target_type)',
1445           'dependencies': [
1446             'content.gyp:content_common',
1447             'test_support_content',
1448             '../base/base.gyp:test_support_base',
1449             '../gpu/gpu.gyp:command_buffer_common',
1450             '../testing/gtest.gyp:gtest',
1451             '../third_party/WebKit/public/blink.gyp:blink',
1452             '../ui/base/ui_base.gyp:ui_base',
1453             '../ui/gfx/gfx.gyp:gfx',
1454             '../ui/gfx/gfx.gyp:gfx_geometry',
1455             '../ui/gfx/gfx.gyp:gfx_test_support',
1456             '../ui/gl/gl.gyp:gl',
1457             '../v8/tools/gyp/v8.gyp:v8',
1458           ],
1459           'include_dirs': [
1460             '..',
1461           ],
1462           'sources': [
1463             'common/gpu/client/gl_helper_unittest.cc',
1464             'common/gpu/client/gpu_in_process_context_tests.cc',
1465           ],
1466           'conditions': [
1467             ['OS=="android"', {
1468               'dependencies': [
1469                 '../testing/android/native_test.gyp:native_test_native_code',
1470               ],
1471             }, {
1472               'dependencies': [
1473                 # Runtime dependencis.
1474                 '../third_party/ffmpeg/ffmpeg.gyp:ffmpeg',
1475                 '../third_party/mesa/mesa.gyp:osmesa',
1476               ],
1477             }],
1478             ['OS=="win" and component!="shared_library" and win_use_allocator_shim==1', {
1479               'dependencies': [
1480                 '<(DEPTH)/base/allocator/allocator.gyp:allocator',
1481               ],
1482             }],
1483           ],
1484         },
1485         {
1486           'target_name': 'content_gl_benchmark',
1487           'type': '<(gtest_target_type)',
1488           'dependencies': [
1489             'content.gyp:content_common',
1490             'test_support_content',
1491             '../base/base.gyp:test_support_base',
1492             '../testing/gtest.gyp:gtest',
1493             '../third_party/WebKit/public/blink.gyp:blink',
1494             '../ui/base/ui_base.gyp:ui_base',
1495             '../ui/gfx/gfx.gyp:gfx',
1496             '../ui/gfx/gfx.gyp:gfx_geometry',
1497             '../ui/gl/gl.gyp:gl',
1498           ],
1499           'include_dirs': [
1500             '..',
1501           ],
1502           'sources': [
1503             'common/gpu/client/gl_helper_benchmark.cc',
1504           ],
1505           'conditions': [
1506             ['OS=="win" and component!="shared_library" and win_use_allocator_shim==1', {
1507               'dependencies': [
1508                 '<(DEPTH)/base/allocator/allocator.gyp:allocator',
1509               ],
1510             }],
1511           ],
1512         },
1513       ],
1514     }],
1515     ['(chromeos==1 or OS=="win" or OS=="android") and use_ozone==0', {
1516       'targets': [
1517           {
1518             'target_name': 'video_decode_accelerator_unittest',
1519             'type': '<(gtest_target_type)',
1520             'dependencies': [
1521               '../base/base.gyp:base',
1522               '../media/media.gyp:media',
1523               '../testing/gtest.gyp:gtest',
1524               '../ui/base/ui_base.gyp:ui_base',
1525               '../ui/gfx/gfx.gyp:gfx',
1526               '../ui/gfx/gfx.gyp:gfx_test_support',
1527               '../ui/gfx/gfx.gyp:gfx_geometry',
1528               '../ui/gl/gl.gyp:gl',
1529               'content.gyp:content',
1530             ],
1531             'include_dirs': [
1532               '<(DEPTH)/third_party/khronos',
1533             ],
1534             'sources': [
1535               'common/gpu/media/android_video_decode_accelerator_unittest.cc',
1536               'common/gpu/media/rendering_helper.h',
1537               'common/gpu/media/rendering_helper.cc',
1538               'common/gpu/media/video_accelerator_unittest_helpers.h',
1539               'common/gpu/media/video_decode_accelerator_unittest.cc',
1540             ],
1541             'conditions': [
1542               ['OS=="android"', {
1543                 'sources/': [
1544                   ['exclude', '^common/gpu/media/rendering_helper.h'],
1545                   ['exclude', '^common/gpu/media/rendering_helper.cc'],
1546                   ['exclude', '^common/gpu/media/video_decode_accelerator_unittest.cc'],
1547                 ],
1548                 'dependencies': [
1549                   '../media/media.gyp:player_android',
1550                   '../testing/gmock.gyp:gmock',
1551                   '../testing/android/native_test.gyp:native_test_native_code',
1552                   '../gpu/gpu.gyp:gpu_unittest_utils',
1553                 ],
1554               }, { # OS!="android"
1555                 'sources/': [
1556                   ['exclude', '^common/gpu/media/android_video_decode_accelerator_unittest.cc'],
1557                 ],
1558               }],
1559               ['OS=="win"', {
1560                 'dependencies': [
1561                   '<(angle_path)/src/angle.gyp:libEGL',
1562                   '<(angle_path)/src/angle.gyp:libGLESv2',
1563                 ],
1564               }],
1565               ['(OS=="win" and win_use_allocator_shim==1) or '
1566                '(os_posix == 1 and OS != "android" and '
1567                ' use_allocator!="none")', {
1568                 'dependencies': [
1569                   '../base/allocator/allocator.gyp:allocator',
1570                 ],
1571               }],
1572               ['target_arch != "arm" and (OS=="linux" or chromeos == 1)', {
1573                 'include_dirs': [
1574                   '<(DEPTH)/third_party/libva',
1575                 ],
1576               }],
1577               ['use_x11==1', {
1578                 'dependencies': [
1579                   '../build/linux/system.gyp:x11',  # Used by rendering_helper.cc
1580                   '../ui/gfx/x/gfx_x11.gyp:gfx_x11',
1581                 ],
1582               }],
1583             ],
1584             # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1585             'msvs_disabled_warnings': [ 4267, ],
1586           },
1587         ]
1588     }],
1589     ['chromeos==1 and use_x11 == 1 and target_arch != "arm"', {
1590       'targets': [
1591           {
1592             'target_name': 'vaapi_h264_decoder_unittest',
1593             'type': '<(gtest_target_type)',
1594             'dependencies': [
1595               'content.gyp:content_common',
1596               '../base/base.gyp:base',
1597               '../build/linux/system.gyp:x11',
1598               '../media/media.gyp:media',
1599               '../testing/gtest.gyp:gtest',
1600               '../third_party/libyuv/libyuv.gyp:libyuv',
1601               '../ui/gfx/gfx.gyp:gfx_geometry',
1602             ],
1603             'sources': [
1604               'common/gpu/media/vaapi_h264_decoder_unittest.cc',
1605             ],
1606             'include_dirs': [
1607               '<(DEPTH)/third_party/libva',
1608             ],
1609           },
1610         ]
1611     }],
1612     ['chromeos==1 and (target_arch == "arm" or use_x11 == 1)', {
1613       'targets': [
1614         {
1615           'target_name': 'video_encode_accelerator_unittest',
1616           'type': 'executable',
1617           'dependencies': [
1618             '../base/base.gyp:base',
1619             '../media/media.gyp:media',
1620             '../media/media.gyp:media_test_support',
1621             '../testing/gtest.gyp:gtest',
1622             '../ui/base/ui_base.gyp:ui_base',
1623             '../ui/gfx/gfx.gyp:gfx',
1624             '../ui/gfx/gfx.gyp:gfx_geometry',
1625             '../ui/gfx/gfx.gyp:gfx_test_support',
1626             '../ui/gl/gl.gyp:gl',
1627             'content.gyp:content',
1628           ],
1629           'sources': [
1630             'common/gpu/media/video_accelerator_unittest_helpers.h',
1631             'common/gpu/media/video_encode_accelerator_unittest.cc',
1632           ],
1633           'include_dirs': [
1634             '<(DEPTH)/third_party/libva',
1635             '<(DEPTH)/third_party/libyuv',
1636           ],
1637           'conditions': [
1638             ['use_x11==1', {
1639               'dependencies': [
1640                 '../ui/gfx/x/gfx_x11.gyp:gfx_x11',
1641               ],
1642             }],
1643           ],
1644         },
1645       ]
1646     }],
1647     ['OS == "android"', {
1648       'targets': [
1649         {
1650           # TODO(GN)
1651           'target_name': 'content_gl_tests_apk',
1652           'type': 'none',
1653           'dependencies': [
1654             'content_gl_tests',
1655             'content_java_test_support',
1656           ],
1657           'variables': {
1658             'test_suite_name': 'content_gl_tests',
1659           },
1660           'includes': [
1661             '../build/apk_test.gypi',
1662           ],
1663         },
1664         {
1665           # TODO(GN)
1666           'target_name': 'content_unittests_apk',
1667           'type': 'none',
1668           'dependencies': [
1669             'content.gyp:content_java',
1670             'content_unittests',
1671           ],
1672           'conditions': [
1673             ['v8_use_external_startup_data==1', {
1674               'dependencies': [
1675                 '../v8/tools/gyp/v8.gyp:v8_external_snapshot',
1676               ],
1677               'copies': [
1678                 {
1679                 'destination': '<(asset_location)',
1680                   'files': [
1681                     '<(PRODUCT_DIR)/natives_blob.bin',
1682                     '<(PRODUCT_DIR)/snapshot_blob.bin',
1683                   ],
1684                 },
1685               ],
1686             }],
1687           ],
1688           'variables': {
1689             'test_suite_name': 'content_unittests',
1690             'conditions': [
1691               ['v8_use_external_startup_data==1', {
1692                 'asset_location': '<(PRODUCT_DIR)/content_unittests_apk/assets',
1693                 'additional_input_paths': [
1694                   '<(PRODUCT_DIR)/content_unittests_apk/assets/natives_blob.bin',
1695                   '<(PRODUCT_DIR)/content_unittests_apk/assets/snapshot_blob.bin',
1696                 ],
1697                 'inputs': [
1698                   '<(PRODUCT_DIR)/natives_blob.bin',
1699                   '<(PRODUCT_DIR)/snapshot_blob.bin',
1700                 ],
1701               }],
1702             ],
1703           },
1704           'includes': [ '../build/apk_test.gypi' ],
1705         },
1706         {
1707           # TODO(GN)
1708           'target_name': 'content_browsertests_apk',
1709           'type': 'none',
1710           'dependencies': [
1711             'content.gyp:content_icudata',
1712             'content.gyp:content_java',
1713             'content.gyp:content_v8_external_data',
1714             'content_browsertests',
1715             'content_java_test_support',
1716             'content_shell_java',
1717           ],
1718           'variables': {
1719             'apk_name': 'content_browsertests',
1720             'java_in_dir': 'shell/android/browsertests_apk',
1721             'resource_dir': 'shell/android/browsertests_apk/res',
1722             'native_lib_target': 'libcontent_browsertests',
1723             'additional_input_paths': ['<(PRODUCT_DIR)/content_shell/assets/content_shell.pak'],
1724             'asset_location': '<(PRODUCT_DIR)/content_shell/assets',
1725             'conditions': [
1726               ['icu_use_data_file_flag==1', {
1727                 'additional_input_paths': [
1728                   '<(PRODUCT_DIR)/icudtl.dat',
1729                 ],
1730               }],
1731               ['v8_use_external_startup_data==1', {
1732                 'additional_input_paths': [
1733                   '<(PRODUCT_DIR)/natives_blob.bin',
1734                   '<(PRODUCT_DIR)/snapshot_blob.bin',
1735                 ],
1736               }],
1737             ],
1738           },
1739           'includes': [ '../build/java_apk.gypi' ],
1740         },
1741         {
1742           # TODO(GN)
1743           'target_name': 'content_perftests_apk',
1744           'type': 'none',
1745           'dependencies': [
1746             'content.gyp:content_java',
1747             'content_perftests',
1748           ],
1749           'variables': {
1750             'test_suite_name': 'content_perftests',
1751           },
1752           'includes': [ '../build/apk_test.gypi' ],
1753         },
1754         {
1755           # GN: //content/shell/android:chromium_linker_test_apk
1756           'target_name': 'chromium_linker_test_apk',
1757           'type': 'none',
1758           'conditions': [
1759             ['target_arch != "x64" and target_arch != "arm64"', {
1760               'dependencies': [
1761                 'chromium_android_linker_test',
1762                 'content.gyp:content_icudata',
1763                 'content.gyp:content_java',
1764                 'content.gyp:content_v8_external_data',
1765                 'content_shell_java',
1766               ],
1767               'variables': {
1768                 'apk_name': 'ChromiumLinkerTest',
1769                 'java_in_dir': 'shell/android/linker_test_apk',
1770                 'resource_dir': 'shell/android/linker_test_apk/res',
1771                 'native_lib_target': 'libchromium_android_linker_test',
1772                 'additional_input_paths': ['<(PRODUCT_DIR)/content_shell/assets/content_shell.pak'],
1773                 'asset_location': '<(PRODUCT_DIR)/content_shell/assets',
1774                 'use_chromium_linker': '1',
1775                 'enable_chromium_linker_tests': '1',
1776                 'conditions': [
1777                   ['icu_use_data_file_flag==1', {
1778                     'additional_input_paths': [
1779                       '<(PRODUCT_DIR)/icudtl.dat',
1780                     ],
1781                   }],
1782                   ['v8_use_external_startup_data==1', {
1783                     'additional_input_paths': [
1784                       '<(PRODUCT_DIR)/natives_blob.bin',
1785                       '<(PRODUCT_DIR)/snapshot_blob.bin',
1786                     ],
1787                   }],
1788                 ],
1789               },
1790               'includes': [ '../build/java_apk.gypi' ],
1791             },
1792            ],
1793           ],
1794         },
1795         {
1796           # GN: //content/shell/android:linker_test
1797           'target_name': 'chromium_android_linker_test',
1798           'type': 'shared_library',
1799           'defines!': ['CONTENT_IMPLEMENTATION'],
1800           'dependencies': [
1801             'chromium_android_linker_test_jni_headers',
1802             'content_shell_lib',
1803             # Required to include "content/public/browser/android/compositor.h"
1804             # in chromium_linker_test_android.cc :-(
1805             '../skia/skia.gyp:skia',
1806           ],
1807           'sources': [
1808             'shell/android/linker_test_apk/chromium_linker_test_android.cc',
1809             'shell/android/linker_test_apk/chromium_linker_test_linker_tests.cc',
1810           ],
1811         },
1812         {
1813           # GN: //content/shell/android:linker_test_jni_headers
1814           'target_name': 'chromium_android_linker_test_jni_headers',
1815           'type': 'none',
1816           'sources': [
1817             'shell/android/linker_test_apk/src/org/chromium/chromium_linker_test_apk/LinkerTests.java',
1818           ],
1819           'variables': {
1820             'jni_gen_package': 'content/shell',
1821           },
1822           'includes': [ '../build/jni_generator.gypi' ],
1823         },
1824         {
1825           # TODO(GN)
1826           'target_name': 'video_decode_accelerator_unittest_apk',
1827           'type': 'none',
1828           'dependencies': [
1829             'video_decode_accelerator_unittest',
1830           ],
1831           'variables': {
1832             'test_suite_name': 'video_decode_accelerator_unittest',
1833           },
1834           'includes': [ '../build/apk_test.gypi' ],
1835         },
1836         {
1837           # GN: //content/public/test/android:test_support_content_jni_headers
1838           'target_name': 'test_support_content_jni_headers',
1839           'type': 'none',
1840           'sources': [
1841             'public/test/android/javatests/src/org/chromium/content/browser/test/NestedSystemMessageHandler.java',
1842           ],
1843           'variables': {
1844             'jni_gen_package': 'content/public/test',
1845           },
1846           'includes': [ '../build/jni_generator.gypi' ],
1847         },
1848         {
1849           # GN: //content/public/test/android:content_java_test_support
1850           'target_name': 'content_java_test_support',
1851           'type': 'none',
1852           'dependencies': [
1853             '../base/base.gyp:base',
1854             '../base/base.gyp:base_java_test_support',
1855             'content.gyp:content_common',
1856             'content.gyp:content_java',
1857           ],
1858           'variables': {
1859             'java_in_dir': '../content/public/test/android/javatests',
1860           },
1861           'includes': [ '../build/java.gypi' ],
1862         },
1863         {
1864           # GN: //content/shell/android:content_shell_test_apk
1865           #     and //content/public/android:content_javatests
1866           'target_name': 'content_shell_test_apk',
1867           'type': 'none',
1868           'dependencies': [
1869             'content_java_test_support',
1870             'content_shell_apk_java',
1871             'content.gyp:content_java',
1872             '../base/base.gyp:base_java',
1873             '../base/base.gyp:base_javatests',
1874             '../base/base.gyp:base_java_test_support',
1875             '../device/battery/battery.gyp:device_battery_javatests',
1876             '../media/media.gyp:media_java',
1877             '../media/media.gyp:media_test_support',
1878             '../mojo/public/mojo_public.gyp:mojo_public_test_interfaces',
1879             '../net/net.gyp:net_java',
1880             '../net/net.gyp:net_javatests',
1881             '../net/net.gyp:net_java_test_support',
1882           ],
1883           'variables': {
1884             'apk_name': 'ContentShellTest',
1885             'java_in_dir': 'shell/android/javatests',
1886             'resource_dir': 'shell/android/shell_apk/res',
1887             'additional_src_dirs': ['public/android/javatests/',],
1888             'is_test_apk': 1,
1889           },
1890           'includes': [ '../build/java_apk.gypi' ],
1891         },
1892       ],
1893     }],
1894     ['OS!="android" and OS!="ios" and OS!="linux"', {
1895       # npapi test plugin doesn't build on android or ios
1896       'targets': [
1897         {
1898           'target_name': 'npapi_test_plugin',
1899           'type': 'loadable_module',
1900           'variables': {
1901             'chromium_code': 1,
1902           },
1903           'mac_bundle': 1,
1904           'dependencies': [
1905             '<(DEPTH)/base/base.gyp:base',
1906             '<(DEPTH)/third_party/icu/icu.gyp:icuuc',
1907             '<(DEPTH)/third_party/npapi/npapi.gyp:npapi',
1908           ],
1909           'sources': [
1910             'test/plugin/npapi_constants.cc',
1911             'test/plugin/npapi_constants.h',
1912             'test/plugin/npapi_test.cc',
1913             'test/plugin/npapi_test.def',
1914             'test/plugin/npapi_test.rc',
1915             'test/plugin/plugin_arguments_test.cc',
1916             'test/plugin/plugin_arguments_test.h',
1917             'test/plugin/plugin_client.cc',
1918             'test/plugin/plugin_client.h',
1919             'test/plugin/plugin_create_instance_in_paint.cc',
1920             'test/plugin/plugin_create_instance_in_paint.h',
1921             'test/plugin/plugin_delete_plugin_in_deallocate_test.cc',
1922             'test/plugin/plugin_delete_plugin_in_deallocate_test.h',
1923             'test/plugin/plugin_delete_plugin_in_stream_test.cc',
1924             'test/plugin/plugin_delete_plugin_in_stream_test.h',
1925             'test/plugin/plugin_execute_stream_javascript.cc',
1926             'test/plugin/plugin_execute_stream_javascript.h',
1927             'test/plugin/plugin_get_javascript_url_test.cc',
1928             'test/plugin/plugin_get_javascript_url_test.h',
1929             'test/plugin/plugin_get_javascript_url2_test.cc',
1930             'test/plugin/plugin_get_javascript_url2_test.h',
1931             'test/plugin/plugin_geturl_test.cc',
1932             'test/plugin/plugin_geturl_test.h',
1933             'test/plugin/plugin_javascript_open_popup.cc',
1934             'test/plugin/plugin_javascript_open_popup.h',
1935             'test/plugin/plugin_new_fails_test.cc',
1936             'test/plugin/plugin_new_fails_test.h',
1937             'test/plugin/plugin_npobject_identity_test.cc',
1938             'test/plugin/plugin_npobject_identity_test.h',
1939             'test/plugin/plugin_npobject_lifetime_test.cc',
1940             'test/plugin/plugin_npobject_lifetime_test.h',
1941             'test/plugin/plugin_npobject_proxy_test.cc',
1942             'test/plugin/plugin_npobject_proxy_test.h',
1943             'test/plugin/plugin_request_read_test.h',
1944             'test/plugin/plugin_request_read_test.cc',
1945             'test/plugin/plugin_schedule_timer_test.cc',
1946             'test/plugin/plugin_schedule_timer_test.h',
1947             'test/plugin/plugin_setup_test.cc',
1948             'test/plugin/plugin_setup_test.h',
1949             'test/plugin/plugin_test.cc',
1950             'test/plugin/plugin_test.h',
1951             'test/plugin/plugin_test_factory.h',
1952             'test/plugin/plugin_thread_async_call_test.cc',
1953             'test/plugin/plugin_thread_async_call_test.h',
1954             'test/plugin/plugin_windowed_test.cc',
1955             'test/plugin/plugin_windowed_test.h',
1956             'test/plugin/plugin_private_test.cc',
1957             'test/plugin/plugin_private_test.h',
1958             'test/plugin/plugin_test_factory.cc',
1959             'test/plugin/plugin_window_size_test.cc',
1960             'test/plugin/plugin_window_size_test.h',
1961             'test/plugin/plugin_windowless_test.cc',
1962             'test/plugin/plugin_windowless_test.h',
1963             'test/plugin/resource.h',
1964           ],
1965           'include_dirs': [
1966             '../..',
1967           ],
1968           'xcode_settings': {
1969             'INFOPLIST_FILE': '<(DEPTH)/content/test/plugin/Info.plist',
1970           },
1971           'conditions': [
1972             ['OS!="win"', {
1973               'sources!': [
1974                 # TODO(port):  Port these.
1975                 # plugin_npobject_lifetime_test.cc has win32-isms
1976                 #   (HWND, CALLBACK).
1977                 'test/plugin/plugin_npobject_lifetime_test.cc',
1978                  # The window APIs are necessarily platform-specific.
1979                 'test/plugin/plugin_window_size_test.cc',
1980                 'test/plugin/plugin_windowed_test.cc',
1981                  # Seems windows specific.
1982                 'test/plugin/plugin_create_instance_in_paint.cc',
1983                 'test/plugin/plugin_create_instance_in_paint.h',
1984                  # windows-specific resources
1985                 'test/plugin/npapi_test.def',
1986                 'test/plugin/npapi_test.rc',
1987               ],
1988             }],
1989             ['OS=="mac"', {
1990               'product_extension': 'plugin',
1991               'link_settings': {
1992                 'libraries': [
1993                   '$(SDKROOT)/System/Library/Frameworks/Carbon.framework',
1994                 ],
1995               },
1996             }],
1997             ['os_posix == 1 and OS != "mac" and (target_arch == "x64" or target_arch == "arm")', {
1998               # Shared libraries need -fPIC on x86-64
1999               'cflags': ['-fPIC']
2000             }],
2001           ],
2002         },
2003         {
2004           'target_name': 'copy_npapi_test_plugin',
2005           'type': 'none',
2006           'dependencies': [
2007             'npapi_test_plugin',
2008           ],
2009           'conditions': [
2010             ['OS=="win"', {
2011               'copies': [
2012                 {
2013                   'destination': '<(PRODUCT_DIR)/plugins',
2014                   'files': ['<(PRODUCT_DIR)/npapi_test_plugin.dll'],
2015                 },
2016               ],
2017             }],
2018             ['OS=="mac"', {
2019               'copies': [
2020                 {
2021                   'destination': '<(PRODUCT_DIR)/plugins/',
2022                   'files': ['<(PRODUCT_DIR)/npapi_test_plugin.plugin'],
2023                 },
2024               ]
2025             }],
2026             ['os_posix == 1 and OS != "mac"', {
2027               'copies': [
2028                 {
2029                   'destination': '<(PRODUCT_DIR)/plugins',
2030                   'files': ['<(PRODUCT_DIR)/libnpapi_test_plugin.so'],
2031                 },
2032               ],
2033             }],
2034           ],
2035         },
2036       ],
2037     }],
2038   ],