Use DwmGetCompositionTimingInfo to get vsync info on Vista+
[chromium-blink-merge.git] / content / content_tests.gypi
blobafee41cab1a3280eeb5fd2f6a85c1b89842d2271
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   'targets': [
7     {
8       'target_name': 'test_support_content',
9       'type': 'static_library',
10       'defines!': ['CONTENT_IMPLEMENTATION'],
11       'dependencies': [
12         '../net/net.gyp:net_test_support',
13         '../skia/skia.gyp:skia',
14         '../testing/gmock.gyp:gmock',
15         '../testing/gtest.gyp:gtest',
16         '../ui/events/events.gyp:events',
17         '../ui/gfx/gfx.gyp:gfx',
18         '../ui/ui.gyp:keycode_converter',
19         '../ui/ui.gyp:ui',
20         '../ui/ui.gyp:ui_resources',
21         '../ui/ui.gyp:ui_test_support',
22         '../url/url.gyp:url_lib',
23         'content_app_both',
24         'content_browser',
25         'content_common',
26       ],
27       'include_dirs': [
28         '..',
29       ],
30       'sources': [
31         'public/test/browser_test_base.cc',
32         'public/test/browser_test_base.h',
33         'public/test/browser_test.h',
34         'public/test/browser_test_utils.cc',
35         'public/test/browser_test_utils.h',
36         'public/test/content_test_suite_base.cc',
37         'public/test/content_test_suite_base.h',
38         'public/test/download_test_observer.cc',
39         'public/test/download_test_observer.h',
40         'public/test/fake_speech_recognition_manager.cc',
41         'public/test/fake_speech_recognition_manager.h',
42         'public/test/js_injection_ready_observer.h',
43         'public/test/layouttest_support.h',
44         'public/test/mock_download_item.cc',
45         'public/test/mock_download_item.h',
46         'public/test/mock_download_manager.cc',
47         'public/test/mock_download_manager.h',
48         'public/test/mock_notification_observer.cc',
49         'public/test/mock_notification_observer.h',
50         'public/test/mock_render_process_host.cc',
51         'public/test/mock_render_process_host.h',
52         'public/test/mock_render_thread.cc',
53         'public/test/mock_render_thread.h',
54         'public/test/mock_resource_context.cc',
55         'public/test/mock_resource_context.h',
56         'public/test/nested_message_pump_android.cc',
57         'public/test/nested_message_pump_android.h',
58         'public/test/render_view_fake_resources_test.cc',
59         'public/test/render_view_fake_resources_test.h',
60         'public/test/render_view_test.cc',
61         'public/test/render_view_test.h',
62         'public/test/render_widget_test.cc',
63         'public/test/render_widget_test.h',
64         'public/test/test_browser_context.cc',
65         'public/test/test_browser_context.h',
66         'public/test/test_browser_thread_bundle.cc',
67         'public/test/test_browser_thread_bundle.h',
68         'public/test/test_browser_thread.cc',
69         'public/test/test_browser_thread.h',
70         'public/test/test_content_client_initializer.cc',
71         'public/test/test_content_client_initializer.h',
72         'public/test/test_file_error_injector.cc',
73         'public/test/test_file_error_injector.h',
74         'public/test/test_launcher.cc',
75         'public/test/test_launcher.h',
76         'public/test/test_navigation_observer.cc',
77         'public/test/test_navigation_observer.h',
78         'public/test/test_notification_tracker.cc',
79         'public/test/test_notification_tracker.h',
80         'public/test/test_renderer_host.cc',
81         'public/test/test_renderer_host.h',
82         'public/test/test_utils.cc',
83         'public/test/test_utils.h',
84         'public/test/unittest_test_suite.cc',
85         'public/test/unittest_test_suite.h',
86         'public/test/web_contents_tester.cc',
87         'public/test/web_contents_tester.h',
88         'app/startup_helper_win.cc',
89         # TODO(phajdan.jr): All of those files should live in content/test (if
90         # they're only used by content) or content/public/test (if they're used
91         # by other embedders).
92         'browser/download/mock_download_file.cc',
93         'browser/download/mock_download_file.h',
94         'browser/geolocation/fake_access_token_store.cc',
95         'browser/geolocation/fake_access_token_store.h',
96         'browser/geolocation/mock_location_arbitrator.cc',
97         'browser/geolocation/mock_location_arbitrator.h',
98         'browser/geolocation/mock_location_provider.cc',
99         'browser/geolocation/mock_location_provider.h',
100         'browser/renderer_host/compositing_iosurface_shader_programs_mac.cc',
101         'browser/renderer_host/compositing_iosurface_shader_programs_mac.h',
102         'browser/renderer_host/compositing_iosurface_transformer_mac.cc',
103         'browser/renderer_host/compositing_iosurface_transformer_mac.h',
104         'browser/renderer_host/media/mock_media_observer.cc',
105         'browser/renderer_host/media/mock_media_observer.h',
106         'browser/renderer_host/test_backing_store.cc',
107         'browser/renderer_host/test_backing_store.h',
108         'browser/renderer_host/test_render_view_host.cc',
109         'browser/renderer_host/test_render_view_host.h',
110         'gpu/gpu_idirect3d9_mock_win.cc',
111         'gpu/gpu_idirect3d9_mock_win.h',
112         'test/content_test_suite.cc',
113         'test/content_test_suite.h',
114         'test/layouttest_support.cc',
115         'test/mock_keyboard.cc',
116         'test/mock_keyboard.h',
117         'test/mock_keyboard_driver_win.cc',
118         'test/mock_keyboard_driver_win.h',
119         'test/mock_render_process.cc',
120         'test/mock_render_process.h',
121         'test/mock_webclipboard_impl.cc',
122         'test/mock_webclipboard_impl.h',
123         'test/mock_webframeclient.h',
124         'test/mock_weburlloader.cc',
125         'test/mock_weburlloader.h',
126         'test/net/url_request_abort_on_end_job.cc',
127         'test/net/url_request_abort_on_end_job.h',
128         'test/net/url_request_failed_job.cc',
129         'test/net/url_request_failed_job.h',
130         'test/net/url_request_mock_http_job.cc',
131         'test/net/url_request_mock_http_job.h',
132         'test/net/url_request_prepackaged_interceptor.cc',
133         'test/net/url_request_prepackaged_interceptor.h',
134         'test/net/url_request_slow_download_job.cc',
135         'test/net/url_request_slow_download_job.h',
136         'test/ppapi_unittest.cc',
137         'test/ppapi_unittest.h',
138         'test/test_content_browser_client.cc',
139         'test/test_content_browser_client.h',
140         'test/test_content_client.cc',
141         'test/test_content_client.h',
142         'test/test_media_stream_client.cc',
143         'test/test_media_stream_client.h',
144         'test/test_render_view_host_factory.cc',
145         'test/test_render_view_host_factory.h',
146         'test/test_video_frame_provider.cc',
147         'test/test_video_frame_provider.h',
148         'test/test_web_contents.cc',
149         'test/test_web_contents.h',
150         'test/test_web_contents_view.cc',
151         'test/test_web_contents_view.h',
152         'test/test_webkit_platform_support.cc',
153         'test/test_webkit_platform_support.h',
154         'test/web_gesture_curve_mock.cc',
155         'test/web_gesture_curve_mock.h',
156         'test/web_layer_tree_view_impl_for_testing.cc',
157         'test/web_layer_tree_view_impl_for_testing.h',
158         'test/webkit_support.cc',
159         'test/webkit_support.h',
160         'test/webkit_support_glue.cc',
161         'test/weburl_loader_mock.cc',
162         'test/weburl_loader_mock.h',
163         'test/weburl_loader_mock_factory.cc',
164         'test/weburl_loader_mock_factory.h',
166         # TODO(phajdan.jr): Those files should be moved to webkit
167         # test support target.
168         '../webkit/browser/appcache/appcache_test_helper.cc',
169         '../webkit/browser/appcache/appcache_test_helper.h',
170       ],
171       'conditions': [
172         ['OS == "ios"', {
173           'sources/': [
174             # iOS only needs a small portion of content; exclude all the
175             # implementation, and re-include what is used.
176             ['exclude', '\\.(cc|mm)$'],
177             ['include', '_ios\\.(cc|mm)$'],
178             ['include', '^public/test/content_test_suite_base\\.cc$'],
179             ['include', '^public/test/mock_notification_observer\\.cc$'],
180             ['include', '^public/test/mock_resource_context\\.cc$'],
181             ['include', '^public/test/test_browser_thread\\.cc$'],
182             ['include', '^public/test/test_content_client_initializer\\.cc$'],
183             ['include', '^public/test/test_notification_tracker\\.cc$'],
184             ['include', '^public/test/test_utils\\.cc$'],
185             ['include', '^public/test/unittest_test_suite\\.cc$'],
186             ['include', '^test/content_test_suite\\.cc$'],
187             ['include', '^test/test_content_browser_client\\.cc$'],
188             ['include', '^test/test_content_client\\.cc$'],
189           ],
190         }, {  # OS != "ios"
191           'conditions': [
192             ['OS=="mac"', {
193               'copies': [{
194                 'destination': '<(SHARED_INTERMEDIATE_DIR)/webkit',
195                 'files': [
196                   '../webkit/tools/test_shell/resources/missingImage.png',
197                   '../webkit/tools/test_shell/resources/textAreaResizeCorner.png',
198                 ],
199               }],
200             }, { # OS!="mac"
201               'copies': [{
202                 'destination': '<(PRODUCT_DIR)/DumpRenderTree_resources',
203                 'files': [
204                   '../webkit/tools/test_shell/resources/missingImage.gif',
205                   '../webkit/tools/test_shell/resources/textAreaResizeCorner.png',
206                 ],
207               }],
208             }],
209           ],
210           'dependencies': [
211             'content_child',
212             'content_gpu',
213             'content_ppapi_plugin',
214             'content_renderer',
215             'content_utility',
216             'content_worker',
217             '../media/media.gyp:media',
218             '../ppapi/ppapi_internal.gyp:ppapi_host',
219             '../ppapi/ppapi_internal.gyp:ppapi_proxy',
220             '../ppapi/ppapi_internal.gyp:ppapi_shared',
221             '../ppapi/ppapi_internal.gyp:ppapi_unittest_shared',
222             '../third_party/WebKit/public/blink.gyp:blink',
223             '../third_party/WebKit/public/blink_test_runner.gyp:blink_test_runner',
224             '../ui/surface/surface.gyp:surface',
225             '../webkit/common/gpu/webkit_gpu.gyp:webkit_gpu',
226             '../webkit/common/user_agent/webkit_user_agent.gyp:user_agent',
227             '../webkit/glue/webkit_glue.gyp:glue',
228             '../webkit/glue/webkit_glue.gyp:glue_child',
229             '../webkit/renderer/compositor_bindings/compositor_bindings.gyp:webkit_compositor_support',
230             '../webkit/renderer/webkit_renderer.gyp:webkit_renderer',
231             '../webkit/storage_browser.gyp:webkit_storage_browser',
232             '../webkit/storage_common.gyp:webkit_storage_common',
233           ],
234         }],
235         ['OS == "win" or toolkit_uses_gtk == 1', {
236           'dependencies': [
237             '../sandbox/sandbox.gyp:sandbox',
238           ],
239         }],
240         ['enable_webrtc==1', {
241           'sources': [
242             'renderer/media/mock_media_stream_dependency_factory.cc',
243             'renderer/media/mock_media_stream_dependency_factory.h',
244             'renderer/media/mock_media_stream_dispatcher.cc',
245             'renderer/media/mock_media_stream_dispatcher.h',
246             'renderer/media/mock_media_stream_registry.cc',
247             'renderer/media/mock_media_stream_registry.h',
248             'renderer/media/mock_peer_connection_impl.cc',
249             'renderer/media/mock_peer_connection_impl.h',
250             'renderer/media/mock_web_rtc_peer_connection_handler_client.cc',
251             'renderer/media/mock_web_rtc_peer_connection_handler_client.h',
252             'test/webrtc_audio_device_test.cc',
253             'test/webrtc_audio_device_test.h',
254           ],
255           'dependencies': [
256             '../third_party/libjingle/libjingle.gyp:libjingle_webrtc',
257             '../third_party/libjingle/libjingle.gyp:libpeerconnection',
258             '../third_party/webrtc/modules/modules.gyp:audio_device',
259             '../third_party/webrtc/modules/modules.gyp:video_capture_module',
260           ],
261         }],
262         ['toolkit_uses_gtk == 1', {
263           'dependencies': [
264             '../build/linux/system.gyp:gtk',
265           ],
266         }],
267         ['use_glib == 1', {
268           'dependencies': [
269             '../build/linux/system.gyp:glib',
270           ],
271         }],
272         ['use_aura==1', {
273           'dependencies': [
274             '../ui/aura/aura.gyp:aura_test_support',
275             '../ui/compositor/compositor.gyp:compositor',
276           ],
277         }],
278         ['OS=="win"', {
279           'dependencies': [
280             '../third_party/iaccessible2/iaccessible2.gyp:iaccessible2',
281           ],
282         }],
283         ['OS!="android" and OS!="ios"', {
284           'dependencies': [
285             '../third_party/libvpx/libvpx.gyp:libvpx',
286           ],
287         }],
288         ['OS=="android"', {
289           'dependencies': [
290             '../ui/ui.gyp:shell_dialogs',
291             'test_support_content_jni_headers',
292           ],
293         }],
294       ],
295     },
296     {
297       'target_name': 'content_unittests',
298       'type': '<(gtest_target_type)',
299       'defines!': ['CONTENT_IMPLEMENTATION'],
300       'dependencies': [
301         'content_browser',
302         'content_common',
303         'test_support_content',
304         'browser/speech/proto/speech_proto.gyp:speech_proto',
305         '../base/base.gyp:test_support_base',
306         '../crypto/crypto.gyp:crypto',
307         '../net/net.gyp:net_test_support',
308         '../skia/skia.gyp:skia',
309         '../sql/sql.gyp:sql',
310         '../sql/sql.gyp:test_support_sql',
311         '../testing/gmock.gyp:gmock',
312         '../testing/gtest.gyp:gtest',
313         '../ui/gfx/gfx.gyp:gfx',
314         '../ui/ui.gyp:ui',
315         '../webkit/common/user_agent/webkit_user_agent.gyp:user_agent',
316       ],
317       'include_dirs': [
318         '..',
319         '<(SHARED_INTERMEDIATE_DIR)',  # Needed by key_systems_unittest.cc.
320       ],
321       'sources': [
322         'browser/accessibility/browser_accessibility_mac_unittest.mm',
323         'browser/accessibility/browser_accessibility_manager_unittest.cc',
324         'browser/accessibility/browser_accessibility_win_unittest.cc',
325         'browser/appcache/chrome_appcache_service_unittest.cc',
326         'browser/browser_thread_unittest.cc',
327         'browser/browser_url_handler_impl_unittest.cc',
328         'browser/byte_stream_unittest.cc',
329         'browser/child_process_security_policy_unittest.cc',
330         'browser/device_orientation/data_fetcher_impl_android_unittest.cc',
331         'browser/device_orientation/data_fetcher_shared_memory_base_unittest.cc',
332         'browser/device_orientation/provider_unittest.cc',
333         'browser/devtools/devtools_http_handler_unittest.cc',
334         'browser/devtools/devtools_manager_unittest.cc',
335         'browser/dom_storage/dom_storage_area_unittest.cc',
336         'browser/dom_storage/dom_storage_context_impl_unittest.cc',
337         'browser/dom_storage/dom_storage_database_unittest.cc',
338         'browser/dom_storage/session_storage_database_unittest.cc',
339         'browser/download/base_file_unittest.cc',
340         'browser/download/download_file_unittest.cc',
341         'browser/download/download_item_impl_unittest.cc',
342         'browser/download/download_manager_impl_unittest.cc',
343         'browser/download/file_metadata_unittest_linux.cc',
344         'browser/download/rate_estimator_unittest.cc',
345         'browser/download/save_package_unittest.cc',
346         'browser/fileapi/fileapi_message_filter_unittest.cc',
347         'browser/gamepad/gamepad_provider_unittest.cc',
348         'browser/gamepad/gamepad_test_helpers.cc',
349         'browser/gamepad/gamepad_test_helpers.h',
350         'browser/geolocation/geolocation_provider_unittest.cc',
351         'browser/geolocation/gps_location_provider_unittest_linux.cc',
352         'browser/geolocation/location_arbitrator_impl_unittest.cc',
353         'browser/geolocation/network_location_provider_unittest.cc',
354         'browser/geolocation/wifi_data_provider_chromeos_unittest.cc',
355         'browser/geolocation/wifi_data_provider_common_unittest.cc',
356         'browser/geolocation/wifi_data_provider_linux_unittest.cc',
357         'browser/geolocation/wifi_data_provider_unittest_win.cc',
358         'browser/gpu/shader_disk_cache_unittest.cc',
359         'browser/host_zoom_map_impl_unittest.cc',
360         'browser/indexed_db/indexed_db_backing_store_unittest.cc',
361         'browser/indexed_db/indexed_db_cleanup_on_io_error_unittest.cc',
362         'browser/indexed_db/indexed_db_database_unittest.cc',
363         'browser/indexed_db/indexed_db_fake_backing_store.cc',
364         'browser/indexed_db/indexed_db_fake_backing_store.h',
365         'browser/indexed_db/indexed_db_leveldb_coding_unittest.cc',
366         'browser/indexed_db/indexed_db_quota_client_unittest.cc',
367         'browser/indexed_db/indexed_db_unittest.cc',
368         'browser/indexed_db/leveldb/leveldb_unittest.cc',
369         'browser/indexed_db/list_set_unittest.cc',
370         'browser/loader/offline_policy_unittest.cc',
371         'browser/loader/resource_buffer_unittest.cc',
372         'browser/loader/resource_dispatcher_host_unittest.cc',
373         'browser/loader/resource_loader_unittest.cc',
374         'browser/loader/resource_scheduler_unittest.cc',
375         'browser/loader/upload_data_stream_builder_unittest.cc',
376         'browser/mach_broker_mac_unittest.cc',
377         'browser/media/media_internals_unittest.cc',
378         'browser/media/webrtc_identity_store_unittest.cc',
379         'browser/net/sqlite_persistent_cookie_store_unittest.cc',
380         'browser/notification_service_impl_unittest.cc',
381         'browser/plugin_loader_posix_unittest.cc',
382         'browser/power_monitor_message_broadcaster_unittest.cc',
383         'browser/renderer_host/compositing_iosurface_transformer_mac_unittest.cc',
384         'browser/renderer_host/gtk_key_bindings_handler_unittest.cc',
385         'browser/renderer_host/input/buffered_input_router_unittest.cc',
386         'browser/renderer_host/input/immediate_input_router_unittest.cc',
387         'browser/renderer_host/input/input_router_unittest.h',
388         'browser/renderer_host/input/input_router_unittest.cc',
389         'browser/renderer_host/input/input_queue_unittest.cc',
390         'browser/renderer_host/input/mock_input_ack_handler.cc',
391         'browser/renderer_host/input/mock_input_ack_handler.h',
392         'browser/renderer_host/input/mock_input_router_client.cc',
393         'browser/renderer_host/input/mock_input_router_client.h',
394         'browser/renderer_host/input/tap_suppression_controller_unittest.cc',
395         'browser/renderer_host/media/audio_input_device_manager_unittest.cc',
396         'browser/renderer_host/media/audio_mirroring_manager_unittest.cc',
397         'browser/renderer_host/media/audio_renderer_host_unittest.cc',
398         'browser/renderer_host/media/device_request_message_filter_unittest.cc',
399         'browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc',
400         'browser/renderer_host/media/media_stream_manager_unittest.cc',
401         'browser/renderer_host/media/media_stream_ui_proxy_unittest.cc',
402         'browser/renderer_host/media/video_capture_buffer_pool_unittest.cc',
403         'browser/renderer_host/media/video_capture_controller_unittest.cc',
404         'browser/renderer_host/media/video_capture_host_unittest.cc',
405         'browser/renderer_host/media/video_capture_manager_unittest.cc',
406         'browser/renderer_host/media/video_capture_oracle_unittest.cc',
407         'browser/renderer_host/media/web_contents_audio_input_stream_unittest.cc',
408         'browser/renderer_host/media/web_contents_video_capture_device_unittest.cc',
409         'browser/renderer_host/pepper/browser_ppapi_host_test.cc',
410         'browser/renderer_host/pepper/browser_ppapi_host_test.h',
411         'browser/renderer_host/pepper/pepper_gamepad_host_unittest.cc',
412         'browser/renderer_host/pepper/pepper_printing_host_unittest.cc',
413         'browser/renderer_host/render_view_host_unittest.cc',
414         'browser/renderer_host/render_widget_host_unittest.cc',
415         'browser/renderer_host/render_widget_host_view_aura_unittest.cc',
416         'browser/renderer_host/render_widget_host_view_guest_unittest.cc',
417         'browser/renderer_host/render_widget_host_view_mac_editcommand_helper_unittest.mm',
418         'browser/renderer_host/render_widget_host_view_mac_unittest.mm',
419         'browser/renderer_host/synthetic_gesture_controller_unittest.cc',
420         'browser/renderer_host/text_input_client_mac_unittest.mm',
421         'browser/renderer_host/web_input_event_aura_unittest.cc',
422         'browser/renderer_host/input/web_input_event_builders_gtk_unittest.cc',
423         'browser/resolve_proxy_msg_helper_unittest.cc',
424         'browser/site_instance_impl_unittest.cc',
425         'browser/speech/chunked_byte_buffer_unittest.cc',
426         'browser/speech/endpointer/endpointer_unittest.cc',
427         'browser/speech/google_one_shot_remote_engine_unittest.cc',
428         'browser/speech/google_streaming_remote_engine_unittest.cc',
429         'browser/speech/speech_recognizer_impl_unittest.cc',
430         'browser/ssl/ssl_host_state_unittest.cc',
431         'browser/startup_task_runner_unittest.cc',
432         'browser/storage_partition_impl_unittest.cc',
433         'browser/storage_partition_impl_map_unittest.cc',
434         'browser/streams/stream_unittest.cc',
435         'browser/streams/stream_url_request_job_unittest.cc',
436         'browser/system_message_window_win_unittest.cc',
437         'browser/tracing/trace_subscriber_stdio_unittest.cc',
438         'browser/web_contents/aura/window_slider_unittest.cc',
439         'browser/web_contents/navigation_controller_impl_unittest.cc',
440         'browser/web_contents/navigation_entry_impl_unittest.cc',
441         'browser/web_contents/render_view_host_manager_unittest.cc',
442         'browser/web_contents/web_contents_delegate_unittest.cc',
443         'browser/web_contents/web_contents_impl_unittest.cc',
444         'browser/web_contents/web_contents_user_data_unittest.cc',
445         'browser/web_contents/web_contents_view_mac_unittest.mm',
446         'browser/web_contents/web_drag_dest_mac_unittest.mm',
447         'browser/web_contents/web_drag_source_mac_unittest.mm',
448         'browser/webui/web_ui_data_source_unittest.cc',
449         'browser/webui/web_ui_message_handler_unittest.cc',
450         'child/fileapi/webfilewriter_base_unittest.cc',
451         'child/indexed_db/indexed_db_dispatcher_unittest.cc',
452         'child/indexed_db/proxy_webidbcursor_impl_unittest.cc',
453         'child/npapi/plugin_lib_unittest.cc',
454         'child/power_monitor_broadcast_source_unittest.cc',
455         'child/resource_dispatcher_unittest.cc',
456         'child/site_isolation_policy_unittest.cc',
457         'common/android/address_parser_unittest.cc',
458         'common/cc_messages_unittest.cc',
459         'common/common_param_traits_unittest.cc',
460         'common/dom_storage/dom_storage_map_unittest.cc',
461         'common/gpu/gpu_memory_manager_unittest.cc',
462         'common/indexed_db/indexed_db_key_unittest.cc',
463         'common/input/input_param_traits_unittest.cc',
464         'common/inter_process_time_ticks_converter_unittest.cc',
465         'common/mac/attributed_string_coder_unittest.mm',
466         'common/mac/font_descriptor_unittest.mm',
467         'common/page_state_serialization_unittest.cc',
468         'common/page_zoom_unittest.cc',
469         'common/plugin_list_unittest.cc',
470         'common/sandbox_mac_diraccess_unittest.mm',
471         'common/sandbox_mac_fontloading_unittest.mm',
472         'common/sandbox_mac_system_access_unittest.mm',
473         'common/sandbox_mac_unittest_helper.h',
474         'common/sandbox_mac_unittest_helper.mm',
475         'common/webplugininfo_unittest.cc',
476         'renderer/active_notification_tracker_unittest.cc',
477         'renderer/android/email_detector_unittest.cc',
478         'renderer/android/phone_number_detector_unittest.cc',
479         'renderer/bmp_image_decoder_unittest.cc',
480         'renderer/date_time_formatter_unittest.cc',
481         'renderer/device_orientation/device_motion_event_pump_unittest.cc',
482         'renderer/device_orientation/device_orientation_event_pump_unittest.cc',
483         'renderer/disambiguation_popup_helper_unittest.cc',
484         'renderer/dom_storage/dom_storage_cached_area_unittest.cc',
485         'renderer/gpu/input_event_filter_unittest.cc',
486         'renderer/gpu/input_handler_proxy_unittest.cc',
487         'renderer/ico_image_decoder_unittest.cc',
488         'renderer/media/android/media_info_loader_unittest.cc',
489         'renderer/media/audio_message_filter_unittest.cc',
490         'renderer/media/audio_renderer_mixer_manager_unittest.cc',
491         'renderer/media/buffered_data_source_unittest.cc',
492         'renderer/media/buffered_resource_loader_unittest.cc',
493         'renderer/media/cache_util_unittest.cc',
494         'renderer/media/crypto/key_systems_unittest.cc',
495         'renderer/media/test_response_generator.cc',
496         'renderer/media/test_response_generator.h',
497         'renderer/media/video_capture_impl_unittest.cc',
498         'renderer/media/video_capture_message_filter_unittest.cc',
499         'renderer/media/video_destination_handler_unittest.cc',
500         'renderer/media/webaudiosourceprovider_impl_unittest.cc',
501         'renderer/npapi/webplugin_impl_unittest.cc',
502         'renderer/paint_aggregator_unittest.cc',
503         'renderer/pepper/host_var_tracker_unittest.cc',
504         'renderer/pepper/mock_resource.h',
505         'renderer/pepper/pepper_broker_unittest.cc',
506         'renderer/pepper/quota_file_io_unittest.cc',
507         'renderer/pepper/v8_var_converter_unittest.cc',
508         'renderer/render_thread_impl_unittest.cc',
509         'renderer/render_view_impl_unittest.cc',
510         'renderer/skia_benchmarking_extension_unittest.cc',
511         'renderer/v8_value_converter_impl_unittest.cc',
512         'renderer/webcrypto/webcrypto_impl_unittest.cc',
513         'test/image_decoder_test.cc',
514         'test/image_decoder_test.h',
515         'test/run_all_unittests.cc',
516         '../webkit/browser/appcache/appcache_database_unittest.cc',
517         '../webkit/browser/appcache/appcache_group_unittest.cc',
518         '../webkit/browser/appcache/appcache_host_unittest.cc',
519         '../webkit/browser/appcache/appcache_quota_client_unittest.cc',
520         '../webkit/browser/appcache/appcache_request_handler_unittest.cc',
521         '../webkit/browser/appcache/appcache_response_unittest.cc',
522         '../webkit/browser/appcache/appcache_service_unittest.cc',
523         '../webkit/browser/appcache/appcache_storage_impl_unittest.cc',
524         '../webkit/browser/appcache/appcache_storage_unittest.cc',
525         '../webkit/browser/appcache/appcache_unittest.cc',
526         '../webkit/browser/appcache/appcache_update_job_unittest.cc',
527         '../webkit/browser/appcache/appcache_url_request_job_unittest.cc',
528         '../webkit/browser/appcache/manifest_parser_unittest.cc',
529         '../webkit/browser/appcache/mock_appcache_policy.cc',
530         '../webkit/browser/appcache/mock_appcache_policy.h',
531         '../webkit/browser/appcache/mock_appcache_service.cc',
532         '../webkit/browser/appcache/mock_appcache_service.h',
533         '../webkit/browser/appcache/mock_appcache_storage.cc',
534         '../webkit/browser/appcache/mock_appcache_storage.h',
535         '../webkit/browser/appcache/mock_appcache_storage_unittest.cc',
536         '../webkit/browser/blob/blob_storage_context_unittest.cc',
537         '../webkit/browser/blob/blob_url_request_job_unittest.cc',
538         '../webkit/browser/blob/local_file_stream_reader_unittest.cc',
539         '../webkit/browser/blob/mock_blob_url_request_context.cc',
540         '../webkit/browser/blob/mock_blob_url_request_context.h',
541         '../webkit/browser/database/database_quota_client_unittest.cc',
542         '../webkit/browser/database/database_tracker_unittest.cc',
543         '../webkit/browser/database/database_util_unittest.cc',
544         '../webkit/browser/database/databases_table_unittest.cc',
545         '../webkit/browser/fileapi/async_file_test_helper.cc',
546         '../webkit/browser/fileapi/async_file_test_helper.h',
547         '../webkit/browser/fileapi/copy_or_move_file_validator_unittest.cc',
548         '../webkit/browser/fileapi/copy_or_move_operation_delegate_unittest.cc',
549         '../webkit/browser/fileapi/dragged_file_util_unittest.cc',
550         '../webkit/browser/fileapi/external_mount_points_unittest.cc',
551         '../webkit/browser/fileapi/file_system_context_unittest.cc',
552         '../webkit/browser/fileapi/file_system_dir_url_request_job_unittest.cc',
553         '../webkit/browser/fileapi/file_system_file_stream_reader_unittest.cc',
554         '../webkit/browser/fileapi/file_system_operation_impl_unittest.cc',
555         '../webkit/browser/fileapi/file_system_operation_impl_write_unittest.cc',
556         '../webkit/browser/fileapi/file_system_operation_runner_unittest.cc',
557         '../webkit/browser/fileapi/file_system_quota_client_unittest.cc',
558         '../webkit/browser/fileapi/file_system_url_request_job_unittest.cc',
559         '../webkit/browser/fileapi/file_system_url_unittest.cc',
560         '../webkit/browser/fileapi/file_system_usage_cache_unittest.cc',
561         '../webkit/browser/fileapi/file_writer_delegate_unittest.cc',
562         '../webkit/browser/fileapi/isolated_context_unittest.cc',
563         '../webkit/browser/fileapi/local_file_stream_writer_unittest.cc',
564         '../webkit/browser/fileapi/local_file_util_unittest.cc',
565         '../webkit/browser/fileapi/mock_file_change_observer.cc',
566         '../webkit/browser/fileapi/mock_file_change_observer.h',
567         '../webkit/browser/fileapi/mock_file_system_context.cc',
568         '../webkit/browser/fileapi/mock_file_system_context.h',
569         '../webkit/browser/fileapi/mock_file_system_options.cc',
570         '../webkit/browser/fileapi/mock_file_system_options.h',
571         '../webkit/browser/fileapi/native_file_util_unittest.cc',
572         '../webkit/browser/fileapi/obfuscated_file_util_unittest.cc',
573         '../webkit/browser/fileapi/recursive_operation_delegate_unittest.cc',
574         '../webkit/browser/fileapi/sandbox_database_test_helper.cc',
575         '../webkit/browser/fileapi/sandbox_database_test_helper.h',
576         '../webkit/browser/fileapi/sandbox_directory_database_unittest.cc',
577         '../webkit/browser/fileapi/sandbox_file_system_backend_unittest.cc',
578         '../webkit/browser/fileapi/sandbox_file_system_backend_delegate_unittest.cc',
579         '../webkit/browser/fileapi/sandbox_file_system_test_helper.cc',
580         '../webkit/browser/fileapi/sandbox_file_system_test_helper.h',
581         '../webkit/browser/fileapi/sandbox_isolated_origin_database_unittest.cc',
582         '../webkit/browser/fileapi/sandbox_origin_database_unittest.cc',
583         '../webkit/browser/fileapi/test_file_set.cc',
584         '../webkit/browser/fileapi/test_file_set.h',
585         '../webkit/browser/fileapi/timed_task_helper_unittest.cc',
586         '../webkit/browser/fileapi/transient_file_util_unittest.cc',
587         '../webkit/browser/fileapi/upload_file_system_file_element_reader_unittest.cc',
588         '../webkit/child/multipart_response_delegate_unittest.cc',
589         '../webkit/child/touch_fling_gesture_curve_unittest.cc',
590         '../webkit/child/worker_task_runner_unittest.cc',
591         '../webkit/common/blob/shareable_file_reference_unittest.cc',
592         '../webkit/common/cursors/webcursor_unittest.cc',
593         '../webkit/common/database/database_connections_unittest.cc',
594         '../webkit/common/database/database_identifier_unittest.cc',
595         '../webkit/common/fileapi/file_system_util_unittest.cc',
596         '../webkit/glue/webkit_glue_unittest.cc',
597         '../webkit/common/user_agent/user_agent_unittest.cc',
598         '../webkit/browser/quota/mock_quota_manager.cc',
599         '../webkit/browser/quota/mock_quota_manager.h',
600         '../webkit/browser/quota/mock_quota_manager_unittest.cc',
601         '../webkit/browser/quota/mock_special_storage_policy.cc',
602         '../webkit/browser/quota/mock_special_storage_policy.h',
603         '../webkit/browser/quota/mock_storage_client.cc',
604         '../webkit/browser/quota/mock_storage_client.h',
605         '../webkit/browser/quota/quota_database_unittest.cc',
606         '../webkit/browser/quota/quota_manager_unittest.cc',
607         '../webkit/browser/quota/quota_temporary_storage_evictor_unittest.cc',
608         '../webkit/browser/quota/usage_tracker_unittest.cc',
609         '../webkit/renderer/cpp_variant_unittest.cc',
610       ],
611       'conditions': [
612         ['OS == "ios"', {
613           'sources/': [
614             # iOS only needs a small portion of content; exclude all the
615             # implementation, and re-include what is used.
616             ['exclude', '\\.(cc|mm)$'],
617             ['include', '_ios\\.(cc|mm)$'],
618             ['include', '^browser/notification_service_impl_unittest\\.cc$'],
619             ['include', '^browser/web_contents/navigation_entry_impl_unittest\\.cc$'],
620             ['include', '^test/run_all_unittests\\.cc$'],
621           ],
622         }, {  # OS != "ios"
623           'dependencies': [
624             'content_browser',
625             'content_child',
626             'content_gpu',
627             'content_plugin',
628             'content_renderer',
629             'content_resources.gyp:content_resources',
630             '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
631             '../gpu/gpu.gyp:gpu',
632             '../gpu/gpu.gyp:gpu_unittest_utils',
633             '../ipc/ipc.gyp:test_support_ipc',
634             '../jingle/jingle.gyp:jingle_glue_test_util',
635             '../media/media.gyp:media_test_support',
636             '../media/media.gyp:shared_memory_support',
637             '../third_party/WebKit/public/blink.gyp:blink',
638             '../third_party/icu/icu.gyp:icui18n',
639             '../third_party/icu/icu.gyp:icuuc',
640             '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase',
641             '../third_party/libjingle/libjingle.gyp:libjingle',
642             '../ui/gl/gl.gyp:gl',
643             '../v8/tools/gyp/v8.gyp:v8',
644             '../webkit/common/webkit_common.gyp:webkit_common',
645             '../webkit/glue/webkit_glue.gyp:glue',
646             '../webkit/glue/webkit_glue.gyp:glue_child',
647             '../webkit/renderer/webkit_renderer.gyp:webkit_renderer',
648             '../webkit/storage_browser.gyp:webkit_storage_browser',
649             '../webkit/storage_common.gyp:webkit_storage_common',
650           ],
651         }],
652         ['enable_plugins==0', {
653           'sources/': [
654             ['exclude', '^browser/renderer_host/pepper/'],
655             ['exclude', '^child/npapi/'],
656             ['exclude', '^renderer/npapi/'],
657             ['exclude', '^renderer/pepper/'],
658           ],
659           'sources!': [
660             'browser/plugin_loader_posix_unittest.cc',
661             'renderer/media/video_destination_handler_unittest.cc',
662           ],
663         }],
664         ['enable_webrtc==1', {
665           'sources': [
666             'browser/media/webrtc_internals_unittest.cc',
667             'browser/renderer_host/media/webrtc_identity_service_host_unittest.cc',
668             'browser/renderer_host/p2p/socket_host_test_utils.h',
669             'browser/renderer_host/p2p/socket_host_tcp_unittest.cc',
670             'browser/renderer_host/p2p/socket_host_tcp_server_unittest.cc',
671             'browser/renderer_host/p2p/socket_host_udp_unittest.cc',
672             'renderer/media/media_stream_dependency_factory_unittest.cc',
673             'renderer/media/media_stream_dispatcher_unittest.cc',
674             'renderer/media/media_stream_impl_unittest.cc',
675             'renderer/media/rtc_peer_connection_handler_unittest.cc',
676             'renderer/media/rtc_video_decoder_unittest.cc',
677             'renderer/media/video_source_handler_unittest.cc',
678             'renderer/media/webrtc_audio_device_unittest.cc',
679             'renderer/media/webrtc_identity_service_unittest.cc',
680             'renderer/media/webrtc_local_audio_source_provider_unittest.cc',
681             'renderer/media/webrtc_local_audio_track_unittest.cc',
682           ],
683           'dependencies': [
684             '../third_party/libjingle/libjingle.gyp:libjingle_webrtc',
685             '../third_party/libjingle/libjingle.gyp:libpeerconnection',
686             '../third_party/webrtc/modules/modules.gyp:video_capture_module',
687             '../third_party/webrtc/voice_engine/voice_engine.gyp:voice_engine',
688           ]
689         }, {
690           'sources!': [
691             'renderer/media/video_destination_handler_unittest.cc',
692           ],
693         }],
694         ['enable_webrtc==1 and (OS=="linux" or OS=="mac" or OS=="win")', {
695           'sources': [
696             'browser/renderer_host/media/desktop_capture_device_unittest.cc',
697           ],
698           'dependencies': [
699             '../third_party/webrtc/modules/modules.gyp:desktop_capture',
700           ],
701         }],
702         # TODO(jrg): remove the OS=="android" section?
703         # http://crbug.com/113172
704         # Understand better how media_stream_ is tied into Chromium.
705         ['enable_webrtc==0 and OS=="android"', {
706           'sources/': [
707             ['exclude', '^renderer/media/media_stream_'],
708           ],
709         }],
710         ['input_speech==0', {
711           'sources/': [
712             ['exclude', '^browser/speech/'],
713           ]
714         }],
715         ['notifications==0', {
716            'sources!': [
717              'renderer/active_notification_tracker_unittest.cc',
718            ],
719         }],
720         ['OS=="linux"', {
721           'dependencies': [
722             '../build/linux/system.gyp:dbus',
723             '../dbus/dbus.gyp:dbus_test_support',
724           ],
725         }],
726         ['OS=="win" and win_use_allocator_shim==1', {
727           'dependencies': [
728             '../base/allocator/allocator.gyp:allocator',
729           ],
730         }],
731         ['OS=="win"', {
732           'dependencies': [
733             '../third_party/iaccessible2/iaccessible2.gyp:iaccessible2',
734           ],
735         }],
736         ['OS=="mac"', {
737           # These flags are needed to run the test on Mac.
738           # Search for comments about "xcode_settings" in chrome_tests.gypi.
739           'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']},
740         }],
741         ['chromeos==1', {
742           'sources/': [
743             ['exclude', '^browser/renderer_host/gtk_key_bindings_handler_unittest.cc'],
744             ['exclude', '^browser/geolocation/wifi_data_provider_linux_unittest.cc'],
745           ],
746         }],
747         ['use_aura==1', {
748           'dependencies': [
749             '../ui/aura/aura.gyp:aura',
750           ],
751           'sources!': [
752             'browser/accessibility/browser_accessibility_win_unittest.cc',
753           ],
754         }],
755         ['branding=="Chrome"', {
756           'sources!': [
757             # These tests depend on single process mode, which is disabled in
758             # official builds.
759             'renderer/dom_serializer_browsertest.cc',
760             'renderer/resource_fetcher_browsertest.cc',
761             'renderer/savable_resources_browsertest.cc',
762           ],
763         }],
764         ['OS == "android"', {
765           'sources': [
766             'browser/renderer_host/java/jni_helper_unittest.cc',
767           ],
768           'sources!': [
769             'browser/geolocation/gps_location_provider_unittest_linux.cc',
770             'browser/geolocation/network_location_provider_unittest.cc',
771             'browser/geolocation/wifi_data_provider_chromeos_unittest.cc',
772             'browser/geolocation/wifi_data_provider_common_unittest.cc',
773             'browser/geolocation/wifi_data_provider_linux_unittest.cc',
774             'browser/renderer_host/input/tap_suppression_controller_unittest.cc',
775           ],
776         }],
777         ['OS != "android" and OS != "ios"', {
778           'dependencies': [
779             '../third_party/libvpx/libvpx.gyp:libvpx',
780           ],
781         }],
782         ['OS == "android" and gtest_target_type == "shared_library"', {
783           'dependencies': [
784             '../testing/android/native_test.gyp:native_test_native_code',
785           ],
786         }],
787         ['use_aura!=1 and OS!="win"', {
788           'sources!': [
789             'browser/renderer_host/input/tap_suppression_controller_unittest.cc',
790           ],
791         }],
792         ['enable_webrtc==1 and google_tv==1', {
793           'sources': [
794             'renderer/media/rtc_video_decoder_factory_tv_unittest.cc',
795           ],
796         }],
797         # TODO(bryaneyler): Also enable these for OpenSSL once that
798         # implementation is ready.  Issue 267888.
799         ['use_nss!=1', {
800           'sources!': [
801             'renderer/webcrypto/webcrypto_impl_unittest.cc',
802           ],
803         }],
804       ],
805     },
806   ],
807   'conditions': [
808     ['OS!="ios"', {
809       'targets': [
810         {
811           'target_name': 'content_browsertests',
812           'type': '<(gtest_target_type)',
813           'defines!': ['CONTENT_IMPLEMENTATION'],
814           'dependencies': [
815             'content_common',
816             'content_gpu',
817             'content_plugin',
818             'content_renderer',
819             'content_resources.gyp:content_resources',
820             'content_shell_lib',
821             'content_shell_pak',
822             'test_support_content',
823             '../base/base.gyp:test_support_base',
824             '../gpu/gpu.gyp:gpu',
825             '../ipc/ipc.gyp:test_support_ipc',
826             '../net/net.gyp:net_test_support',
827             '../ppapi/ppapi_internal.gyp:ppapi_host',
828             '../ppapi/ppapi_internal.gyp:ppapi_ipc',
829             '../ppapi/ppapi_internal.gyp:ppapi_proxy',
830             '../ppapi/ppapi_internal.gyp:ppapi_shared',
831             '../ppapi/ppapi_internal.gyp:ppapi_unittest_shared',
832             '../skia/skia.gyp:skia',
833             '../testing/gmock.gyp:gmock',
834             '../testing/gtest.gyp:gtest',
835             '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase',
836             '../third_party/mesa/mesa.gyp:osmesa',
837             '../ui/gfx/gfx.gyp:gfx',
838             '../ui/gl/gl.gyp:gl',
839             '../ui/snapshot/snapshot.gyp:snapshot',
840             '../ui/ui.gyp:shell_dialogs',
841             '../ui/ui.gyp:ui',
842             '../ui/ui.gyp:ui_resources',
843             '../webkit/glue/webkit_glue.gyp:glue',
844             '../webkit/glue/webkit_glue.gyp:glue_child',
845             '../webkit/renderer/webkit_renderer.gyp:webkit_renderer',
846           ],
847           'include_dirs': [
848             '..',
849             '<(SHARED_INTERMEDIATE_DIR)',  # Needed by encrypted_media_browsertest.cc
850           ],
851           'includes': [
852             'browser/gpu/test_support_gpu.gypi',
853           ],
854           'defines': [
855             'HAS_OUT_OF_PROC_TEST_RUNNER',
856           ],
857           'sources': [
858             'browser/accessibility/accessibility_win_browsertest.cc',
859             'browser/accessibility/cross_platform_accessibility_browsertest.cc',
860             'browser/accessibility/dump_accessibility_tree_browsertest.cc',
861             'browser/bookmarklet_browsertest.cc',
862             'browser/browser_plugin/browser_plugin_host_browsertest.cc',
863             'browser/browser_plugin/test_browser_plugin_embedder.cc',
864             'browser/browser_plugin/test_browser_plugin_embedder.h',
865             'browser/browser_plugin/test_browser_plugin_guest.cc',
866             'browser/browser_plugin/test_browser_plugin_guest.h',
867             'browser/browser_plugin/test_browser_plugin_guest_delegate.cc',
868             'browser/browser_plugin/test_browser_plugin_guest_delegate.h',
869             'browser/browser_plugin/test_browser_plugin_guest_manager.cc',
870             'browser/browser_plugin/test_browser_plugin_guest_manager.h',
871             'browser/child_process_security_policy_browsertest.cc',
872             'browser/database_browsertest.cc',
873             'browser/device_orientation/device_inertial_sensor_browsertest.cc',
874             'browser/devtools/renderer_overrides_handler_browsertest.cc',
875             'browser/dom_storage/dom_storage_browsertest.cc',
876             'browser/download/download_browsertest.cc',
877             'browser/download/drag_download_file_browsertest.cc',
878             'browser/download/mhtml_generation_browsertest.cc',
879             'browser/download/save_package_browsertest.cc',
880             'browser/fileapi/file_system_browsertest.cc',
881             'browser/gpu/compositor_util_browsertest.cc',
882             'browser/gpu/gpu_crash_browsertest.cc',
883             'browser/gpu/gpu_functional_browsertest.cc',
884             'browser/gpu/gpu_info_browsertest.cc',
885             'browser/gpu/gpu_ipc_browsertests.cc',
886             'browser/gpu/gpu_memory_test.cc',
887             'browser/gpu/gpu_pixel_browsertest.cc',
888             'browser/gpu/webgl_conformance_test.cc',
889             'browser/gpu/webgl_conformance_test_list_autogen.h',
890             'browser/indexed_db/indexed_db_browsertest.cc',
891             'browser/loader/resource_dispatcher_host_browsertest.cc',
892             'browser/media/encrypted_media_browsertest.cc',
893             'browser/media/media_browsertest.cc',
894             'browser/media/media_browsertest.h',
895             'browser/media/media_source_browsertest.cc',
896             'browser/media/webrtc_internals_browsertest.cc',
897             'browser/plugin_data_remover_impl_browsertest.cc',
898             'browser/plugin_browsertest.cc',
899             'browser/plugin_service_impl_browsertest.cc',
900             'browser/renderer_host/render_process_host_browsertest.cc',
901             'browser/renderer_host/render_view_host_browsertest.cc',
902             'browser/renderer_host/render_view_host_manager_browsertest.cc',
903             'browser/renderer_host/render_widget_host_browsertest.cc',
904             'browser/renderer_host/render_widget_host_view_browsertest.cc',
905             'browser/renderer_host/render_widget_host_view_win_browsertest.cc',
906             'browser/security_exploit_browsertest.cc',
907             'browser/session_history_browsertest.cc',
908             'browser/site_per_process_browsertest.cc',
909             'browser/speech/input_tag_speech_browsertest.cc',
910             'browser/tracing/tracing_controller_browsertest.cc',
911             'browser/web_contents/touch_editable_impl_aura_browsertest.cc',
912             'browser/web_contents/web_contents_impl_browsertest.cc',
913             'browser/web_contents/web_contents_view_aura_browsertest.cc',
914             'browser/webkit_browsertest.cc',
915             'browser/worker_host/test/worker_browsertest.cc',
916             'child/site_isolation_policy_browsertest.cc',
917             'renderer/accessibility/renderer_accessibility_browsertest.cc',
918             'renderer/browser_plugin/browser_plugin_browsertest.cc',
919             'renderer/browser_plugin/browser_plugin_browsertest.h',
920             'renderer/browser_plugin/mock_browser_plugin.cc',
921             'renderer/browser_plugin/mock_browser_plugin.h',
922             'renderer/browser_plugin/mock_browser_plugin_manager.cc',
923             'renderer/browser_plugin/mock_browser_plugin_manager.h',
924             'renderer/cpp_bound_class_unittest.cc',
925             'renderer/dom_serializer_browsertest.cc',
926             'renderer/mouse_lock_dispatcher_browsertest.cc',
927             'renderer/pepper/mock_renderer_ppapi_host.cc',
928             'renderer/pepper/pepper_device_enumeration_host_helper_unittest.cc',
929             'renderer/pepper/pepper_file_chooser_host_unittest.cc',
930             'renderer/pepper/pepper_graphics_2d_host_unittest.cc',
931             'renderer/pepper/pepper_url_request_unittest.cc',
932             'renderer/render_thread_impl_browsertest.cc',
933             'renderer/render_view_browsertest.cc',
934             'renderer/render_view_browsertest_mac.mm',
935             'renderer/render_widget_browsertest.cc',
936             'renderer/resource_fetcher_browsertest.cc',
937             'renderer/savable_resources_browsertest.cc',
938             'test/accessibility_browser_test_utils.cc',
939             'test/accessibility_browser_test_utils.h',
940             'test/content_browser_test.h',
941             'test/content_browser_test.cc',
942             'test/content_browser_test_utils.cc',
943             'test/content_browser_test_utils.h',
944             'test/content_browser_test_utils_mac.mm',
945             'test/content_browser_test_test.cc',
946             'test/content_test_launcher.cc',
947             'test/cpp_binding_example.cc',
948             'test/cpp_binding_example.h',
949             'test/webui_resource_browsertest.cc',
950           ],
951           'conditions': [
952             ['chromeos==0', {
953               'sources!': [
954                 'browser/web_contents/touch_editable_impl_aura_browsertest.cc',
955               ],
956             }],
957             ['OS=="win"', {
958               'resource_include_dirs': [
959                 '<(SHARED_INTERMEDIATE_DIR)/webkit',
960               ],
961               'sources': [
962                 'shell/app/resource.h',
963                 'shell/app/shell.rc',
964                 # TODO:  It would be nice to have these pulled in
965                 # automatically from direct_dependent_settings in
966                 # their various targets (net.gyp:net_resources, etc.),
967                 # but that causes errors in other targets when
968                 # resulting .res files get referenced multiple times.
969                 '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc',
970                 '<(SHARED_INTERMEDIATE_DIR)/webkit/blink_resources.rc',
971                 '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_strings_en-US.rc',
972               ],
973               'dependencies': [
974                 '<(DEPTH)/net/net.gyp:net_resources',
975                 '<(DEPTH)/third_party/iaccessible2/iaccessible2.gyp:iaccessible2',
976                 '<(DEPTH)/third_party/isimpledom/isimpledom.gyp:isimpledom',
977                 '<(DEPTH)/webkit/webkit_resources.gyp:webkit_strings',
978                 '<(DEPTH)/webkit/webkit_resources.gyp:webkit_resources',
979               ],
980               'configurations': {
981                 'Debug_Base': {
982                   'msvs_settings': {
983                     'VCLinkerTool': {
984                       'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
985                     },
986                   },
987                 },
988               },
989               # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
990               'msvs_disabled_warnings': [ 4267, ],
991             }, {  # OS!="win"
992               'sources!': [
993                 'browser/accessibility/accessibility_win_browsertest.cc',
994                 'browser/renderer_host/render_widget_host_view_win_browsertest.cc',
995               ],
996             }],
997             ['OS=="win" and win_use_allocator_shim==1', {
998               'dependencies': [
999                 '../base/allocator/allocator.gyp:allocator',
1000               ],
1001             }],
1002             ['OS=="linux"', {
1003               'sources!': [
1004                 'browser/accessibility/dump_accessibility_tree_browsertest.cc',
1005               ],
1006             }],
1007             ['OS=="android"', {
1008               'sources': [
1009                 'shell/android/browsertests_apk/content_browser_tests_android.cc',
1010               ],
1011               'dependencies': [
1012                 'content_shell_jni_headers',
1013                 'content_shell_lib',
1014                 '../testing/android/native_test.gyp:native_test_util',
1015               ],
1016             }],
1017             ['OS=="mac"', {
1018               'dependencies': [
1019                 'content_shell',  # Needed for Content Shell.app's Helper.
1020               ],
1021               'sources': [
1022                 'renderer/external_popup_menu_browsertest.cc',
1023               ],
1024             }],
1025             ['use_aura==1', {
1026               'sources!': [
1027                 'browser/accessibility/accessibility_win_browsertest.cc',
1028                 'browser/accessibility/dump_accessibility_tree_browsertest.cc',
1029                 'browser/plugin_browsertest.cc',
1030                 'browser/renderer_host/render_widget_host_view_win_browsertest.cc',
1031               ],
1032             }],
1033             ['OS!="android" and OS!="ios"', {
1034               # npapi test plugin doesn't build on android or ios
1035               'dependencies': [
1036                 # Runtime dependencies
1037                 'copy_npapi_test_plugin',
1038               ],
1039             }],
1040             ['enable_webrtc==1', {
1041               'sources': [
1042                 'browser/media/webrtc_browsertest.cc',
1043               ],
1044             }],
1045             ['enable_plugins==0', {
1046               'sources/': [
1047                 ['exclude', '^renderer/pepper/'],
1048               ],
1049               'sources!': [
1050                 'browser/plugin_service_impl_browsertest.cc',
1051                 'browser/plugin_data_remover_impl_browsertest.cc',
1052               ],
1053             }],
1054             ['input_speech==0', {
1055               'sources/': [
1056                 ['exclude', '^browser/speech/'],
1057               ]
1058             }],
1059           ],
1060         },
1061         {
1062           'target_name': 'content_gl_tests',
1063           'type': '<(gtest_target_type)',
1064           'defines!': ['CONTENT_IMPLEMENTATION'],
1065           'dependencies': [
1066             'content_common',
1067             'test_support_content',
1068             '../base/base.gyp:test_support_base',
1069             '../gpu/gpu.gyp:command_buffer_common',
1070             '../testing/gtest.gyp:gtest',
1071             '../ui/gfx/gfx.gyp:gfx',
1072             '../ui/gl/gl.gyp:gl',
1073             '../ui/ui.gyp:ui',
1074             '../third_party/WebKit/public/blink.gyp:blink',
1075             # The following two dependencies provide the missing
1076             # symbol HeapProfilerStart in Linux component builds.
1077             '../webkit/glue/webkit_glue.gyp:glue',
1078             '../webkit/glue/webkit_glue.gyp:glue_child',
1079           ],
1080           'include_dirs': [
1081             '..',
1082           ],
1083           'sources': [
1084             'common/gpu/client/gl_helper_unittests.cc',
1085             'common/gpu/client/gpu_in_process_context_tests.cc',
1086           ],
1087           'conditions': [
1088             ['OS=="android"', {
1089               'dependencies': [
1090                 '../testing/android/native_test.gyp:native_test_native_code',
1091               ],
1092             }],
1093           ],
1094         },
1095         {
1096           'target_name': 'content_gl_benchmark',
1097           'type': '<(gtest_target_type)',
1098           'defines!': ['CONTENT_IMPLEMENTATION'],
1099           'dependencies': [
1100             'content_common',
1101             'test_support_content',
1102             '../base/base.gyp:test_support_base',
1103             '../testing/gtest.gyp:gtest',
1104             '../ui/gfx/gfx.gyp:gfx',
1105             '../ui/gl/gl.gyp:gl',
1106             '../ui/ui.gyp:ui',
1107             '../third_party/WebKit/public/blink.gyp:blink',
1108             # The following two dependencies provide the missing
1109             # symbol HeapProfilerStart in Linux component builds.
1110             '../webkit/glue/webkit_glue.gyp:glue',
1111             '../webkit/glue/webkit_glue.gyp:glue_child',
1112           ],
1113           'include_dirs': [
1114             '..',
1115           ],
1116           'sources': [
1117             'common/gpu/client/gl_helper_benchmark.cc',
1118           ],
1119         },
1120         {
1121           'target_name': 'content_webkit_unit_test_support',
1122           'type': 'static_library',
1123           'dependencies': [
1124             'test_support_content',
1125           ],
1126           'include_dirs': [
1127             '..',
1128           ],
1129           'sources': [
1130             'test/webkit_unit_test_support.cc',
1131             'test/webkit_unit_test_support.h',
1132           ],
1133         },
1134       ],
1135     }],
1136     ['chromeos==1 or OS=="win" or OS=="android"', {
1137       'targets': [
1138           {
1139             'target_name': 'video_decode_accelerator_unittest',
1140             'type': '<(gtest_target_type)',
1141             'dependencies': [
1142               'content',
1143               '../base/base.gyp:base',
1144               '../testing/gtest.gyp:gtest',
1145               '../media/media.gyp:media',
1146               '../ui/gl/gl.gyp:gl',
1147               '../ui/gfx/gfx.gyp:gfx',
1148               '../ui/ui.gyp:ui',
1149             ],
1150             'include_dirs': [
1151               '<(DEPTH)/third_party/khronos',
1152             ],
1153             'sources': [
1154               'common/gpu/media/android_video_decode_accelerator_unittest.cc',
1155               'common/gpu/media/rendering_helper.h',
1156               'common/gpu/media/rendering_helper.cc',
1157               'common/gpu/media/video_accelerator_unittest_helpers.h',
1158               'common/gpu/media/video_decode_accelerator_unittest.cc',
1159             ],
1160             'conditions': [
1161               ['OS=="android"', {
1162                 'sources/': [
1163                   ['exclude', '^common/gpu/media/rendering_helper.h'],
1164                   ['exclude', '^common/gpu/media/rendering_helper.cc'],
1165                   ['exclude', '^common/gpu/media/video_decode_accelerator_unittest.cc'],
1166                 ],
1167                 'dependencies': [
1168                   '../media/media.gyp:player_android',
1169                   '../testing/gmock.gyp:gmock',
1170                   '../testing/android/native_test.gyp:native_test_native_code',
1171                   '../gpu/gpu.gyp:gpu_unittest_utils',
1172                 ],
1173               }, { # OS!="android"
1174                 'sources/': [
1175                   ['exclude', '^common/gpu/media/android_video_decode_accelerator_unittest.cc'],
1176                 ],
1177               }],
1178               ['OS=="win"', {
1179                 'dependencies': [
1180                   '../third_party/angle_dx11/src/build_angle.gyp:libEGL',
1181                   '../third_party/angle_dx11/src/build_angle.gyp:libGLESv2',
1182                 ],
1183               }],
1184               ['(OS=="win" and win_use_allocator_shim==1) or '
1185                '(os_posix == 1 and OS != "android" and '
1186                ' linux_use_tcmalloc==1)', {
1187                 'dependencies': [
1188                   '../base/allocator/allocator.gyp:allocator',
1189                 ],
1190               }],
1191               ['target_arch != "arm" and (OS=="linux" or chromeos == 1)', {
1192                 'include_dirs': [
1193                   '<(DEPTH)/third_party/libva',
1194                 ],
1195               }],
1196             ],
1197             # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1198             'msvs_disabled_warnings': [ 4267, ],
1199           },
1200         ]
1201     }],
1202     ['chromeos==1 and target_arch == "arm"', {
1203       'targets': [
1204         {
1205           'target_name': 'video_encode_accelerator_unittest',
1206           'type': 'executable',
1207           'dependencies': [
1208             'content',
1209             '../base/base.gyp:base',
1210             '../testing/gtest.gyp:gtest',
1211             '../media/media.gyp:media',
1212               '../ui/gl/gl.gyp:gl',
1213               '../ui/gfx/gfx.gyp:gfx',
1214               '../ui/ui.gyp:ui',
1215           ],
1216           'sources': [
1217             'common/gpu/media/video_accelerator_unittest_helpers.h',
1218             'common/gpu/media/video_encode_accelerator_unittest.cc',
1219           ],
1220         },
1221       ]
1222     }],
1223     ['chromeos == 1 or OS == "linux"', {
1224       'targets': [
1225         {
1226           'target_name': 'h264_parser_unittest',
1227           'type': 'executable',
1228           'dependencies': [
1229             'content_common',
1230             '../base/base.gyp:base',
1231             '../testing/gtest.gyp:gtest',
1232           ],
1233           'sources': [
1234             'common/gpu/media/h264_bit_reader_unittest.cc',
1235             'common/gpu/media/h264_parser_unittest.cc',
1236           ],
1237           'conditions': [
1238             ['linux_use_tcmalloc==1', {
1239               'dependencies': [
1240                 '../base/allocator/allocator.gyp:allocator',
1241               ],
1242             }],
1243           ],
1244         }
1245       ],
1246     }],
1247     # Special target to wrap a gtest_target_type==shared_library
1248     # content_unittests into an android apk for execution.
1249     # See base.gyp for TODO(jrg)s about this strategy.
1250     ['OS == "android" and gtest_target_type == "shared_library"', {
1251       'targets': [
1252         {
1253           'target_name': 'content_gl_tests_apk',
1254           'type': 'none',
1255           'dependencies': [
1256             'content_gl_tests',
1257             'content_java_test_support',
1258           ],
1259           'variables': {
1260             'test_suite_name': 'content_gl_tests',
1261             'input_shlib_path': '<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)content_gl_tests<(SHARED_LIB_SUFFIX)',
1262           },
1263           'includes': [
1264             '../build/apk_test.gypi',
1265           ],
1266         },
1267         {
1268           'target_name': 'content_unittests_apk',
1269           'type': 'none',
1270           'dependencies': [
1271             'content_java',
1272             'content_unittests',
1273           ],
1274           'variables': {
1275             'test_suite_name': 'content_unittests',
1276             'input_shlib_path': '<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)content_unittests<(SHARED_LIB_SUFFIX)',
1277           },
1278           'includes': [ '../build/apk_test.gypi' ],
1279         },
1280         {
1281           'target_name': 'content_browsertests_apk',
1282           'type': 'none',
1283           'dependencies': [
1284             'content_browsertests',
1285             'content_java',
1286             'content_java_test_support',
1287             'content_shell_java',
1288           ],
1289           'variables': {
1290             'apk_name': 'content_browsertests',
1291             'java_in_dir': 'shell/android/browsertests_apk',
1292             'resource_dir': 'shell/android/browsertests_apk/res',
1293             'native_lib_target': 'libcontent_browsertests',
1294             'additional_input_paths': ['<(PRODUCT_DIR)/content_shell/assets/content_shell.pak'],
1295             'asset_location': '<(ant_build_out)/content_shell/assets',
1296           },
1297           'includes': [ '../build/java_apk.gypi' ],
1298         },
1299         {
1300           'target_name': 'video_decode_accelerator_unittest_apk',
1301           'type': 'none',
1302           'dependencies': [
1303             'video_decode_accelerator_unittest',
1304           ],
1305           'variables': {
1306             'test_suite_name': 'video_decode_accelerator_unittest',
1307             'input_shlib_path': '<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)content_unittests<(SHARED_LIB_SUFFIX)',
1308           },
1309           'includes': [ '../build/apk_test.gypi' ],
1310         },
1311       ],
1312     }],
1313     ['OS == "android"', {
1314       'targets': [
1315         {
1316           'target_name': 'test_support_content_jni_headers',
1317           'type': 'none',
1318           'sources': [
1319             'public/test/android/javatests/src/org/chromium/content/browser/test/NestedSystemMessageHandler.java',
1320           ],
1321           'direct_dependent_settings': {
1322             'include_dirs': [
1323               '<(SHARED_INTERMEDIATE_DIR)/content/public/test',
1324             ],
1325           },
1326           'variables': {
1327             'jni_gen_package': 'content/public/test',
1328           },
1329           'includes': [ '../build/jni_generator.gypi' ],
1330         },
1331         {
1332           'target_name': 'content_java_test_support',
1333           'type': 'none',
1334           'dependencies': [
1335             '../base/base.gyp:base',
1336             '../base/base.gyp:base_java_test_support',
1337             'content_common',
1338             'content_java',
1339           ],
1340           'variables': {
1341             'java_in_dir': '../content/public/test/android/javatests',
1342           },
1343           'includes': [ '../build/java.gypi' ],
1344         },
1345         {
1346           'target_name': 'content_shell_test_apk',
1347           'type': 'none',
1348           'dependencies': [
1349             'content_java',
1350             'content_java_test_support',
1351             'content_shell_apk_java',
1352             '../base/base.gyp:base_java',
1353             '../base/base.gyp:base_javatests',
1354             '../base/base.gyp:base_java_test_support',
1355             '../media/media.gyp:media_java',
1356             '../media/media.gyp:media_test_support',
1357             '../net/net.gyp:net_java',
1358             '../net/net.gyp:net_javatests',
1359           ],
1360           'variables': {
1361             'apk_name': 'ContentShellTest',
1362             'java_in_dir': 'shell/android/javatests',
1363             'resource_dir': 'shell/android/shell_apk/res',
1364             'additional_src_dirs': ['public/android/javatests/',],
1365             'is_test_apk': 1,
1366           },
1367           'includes': [ '../build/java_apk.gypi' ],
1368         },
1369       ],
1370     }],
1371     ['OS!="android" and OS!="ios"', {
1372       # npapi test plugin doesn't build on android or ios
1373       'targets': [
1374         {
1375           'target_name': 'npapi_test_plugin',
1376           'type': 'loadable_module',
1377           'variables': {
1378             'chromium_code': 1,
1379           },
1380           'mac_bundle': 1,
1381           'dependencies': [
1382             '<(DEPTH)/base/base.gyp:base',
1383             '<(DEPTH)/third_party/icu/icu.gyp:icuuc',
1384             '<(DEPTH)/third_party/npapi/npapi.gyp:npapi',
1385           ],
1386           'sources': [
1387             'test/plugin/npapi_constants.cc',
1388             'test/plugin/npapi_constants.h',
1389             'test/plugin/npapi_test.cc',
1390             'test/plugin/npapi_test.def',
1391             'test/plugin/npapi_test.rc',
1392             'test/plugin/plugin_arguments_test.cc',
1393             'test/plugin/plugin_arguments_test.h',
1394             'test/plugin/plugin_client.cc',
1395             'test/plugin/plugin_client.h',
1396             'test/plugin/plugin_create_instance_in_paint.cc',
1397             'test/plugin/plugin_create_instance_in_paint.h',
1398             'test/plugin/plugin_delete_plugin_in_deallocate_test.cc',
1399             'test/plugin/plugin_delete_plugin_in_deallocate_test.h',
1400             'test/plugin/plugin_delete_plugin_in_stream_test.cc',
1401             'test/plugin/plugin_delete_plugin_in_stream_test.h',
1402             'test/plugin/plugin_execute_stream_javascript.cc',
1403             'test/plugin/plugin_execute_stream_javascript.h',
1404             'test/plugin/plugin_get_javascript_url_test.cc',
1405             'test/plugin/plugin_get_javascript_url_test.h',
1406             'test/plugin/plugin_get_javascript_url2_test.cc',
1407             'test/plugin/plugin_get_javascript_url2_test.h',
1408             'test/plugin/plugin_geturl_test.cc',
1409             'test/plugin/plugin_geturl_test.h',
1410             'test/plugin/plugin_javascript_open_popup.cc',
1411             'test/plugin/plugin_javascript_open_popup.h',
1412             'test/plugin/plugin_new_fails_test.cc',
1413             'test/plugin/plugin_new_fails_test.h',
1414             'test/plugin/plugin_npobject_identity_test.cc',
1415             'test/plugin/plugin_npobject_identity_test.h',
1416             'test/plugin/plugin_npobject_lifetime_test.cc',
1417             'test/plugin/plugin_npobject_lifetime_test.h',
1418             'test/plugin/plugin_npobject_proxy_test.cc',
1419             'test/plugin/plugin_npobject_proxy_test.h',
1420             'test/plugin/plugin_request_read_test.h',
1421             'test/plugin/plugin_request_read_test.cc',
1422             'test/plugin/plugin_schedule_timer_test.cc',
1423             'test/plugin/plugin_schedule_timer_test.h',
1424             'test/plugin/plugin_setup_test.cc',
1425             'test/plugin/plugin_setup_test.h',
1426             'test/plugin/plugin_test.cc',
1427             'test/plugin/plugin_test.h',
1428             'test/plugin/plugin_test_factory.h',
1429             'test/plugin/plugin_thread_async_call_test.cc',
1430             'test/plugin/plugin_thread_async_call_test.h',
1431             'test/plugin/plugin_windowed_test.cc',
1432             'test/plugin/plugin_windowed_test.h',
1433             'test/plugin/plugin_private_test.cc',
1434             'test/plugin/plugin_private_test.h',
1435             'test/plugin/plugin_test_factory.cc',
1436             'test/plugin/plugin_window_size_test.cc',
1437             'test/plugin/plugin_window_size_test.h',
1438             'test/plugin/plugin_windowless_test.cc',
1439             'test/plugin/plugin_windowless_test.h',
1440             'test/plugin/resource.h',
1441           ],
1442           'include_dirs': [
1443             '../..',
1444           ],
1445           'xcode_settings': {
1446             'INFOPLIST_FILE': '<(DEPTH)/content/test/plugin/Info.plist',
1447           },
1448           'conditions': [
1449             ['OS!="win"', {
1450               'sources!': [
1451                 # TODO(port):  Port these.
1452                 # plugin_npobject_lifetime_test.cc has win32-isms
1453                 #   (HWND, CALLBACK).
1454                 'test/plugin/plugin_npobject_lifetime_test.cc',
1455                  # The window APIs are necessarily platform-specific.
1456                 'test/plugin/plugin_window_size_test.cc',
1457                 'test/plugin/plugin_windowed_test.cc',
1458                  # Seems windows specific.
1459                 'test/plugin/plugin_create_instance_in_paint.cc',
1460                 'test/plugin/plugin_create_instance_in_paint.h',
1461                  # windows-specific resources
1462                 'test/plugin/npapi_test.def',
1463                 'test/plugin/npapi_test.rc',
1464               ],
1465             }],
1466             ['OS=="mac"', {
1467               'product_extension': 'plugin',
1468               'link_settings': {
1469                 'libraries': [
1470                   '$(SDKROOT)/System/Library/Frameworks/Carbon.framework',
1471                 ],
1472               },
1473             }],
1474             ['os_posix == 1 and OS != "mac" and (target_arch == "x64" or target_arch == "arm")', {
1475               # Shared libraries need -fPIC on x86-64
1476               'cflags': ['-fPIC']
1477             }],
1478           ],
1479         },
1480         {
1481           'target_name': 'copy_npapi_test_plugin',
1482           'type': 'none',
1483           'dependencies': [
1484             'npapi_test_plugin',
1485           ],
1486           'conditions': [
1487             ['OS=="win"', {
1488               'copies': [
1489                 {
1490                   'destination': '<(PRODUCT_DIR)/plugins',
1491                   'files': ['<(PRODUCT_DIR)/npapi_test_plugin.dll'],
1492                 },
1493               ],
1494             }],
1495             ['OS=="mac"', {
1496               'copies': [
1497                 {
1498                   'destination': '<(PRODUCT_DIR)/plugins/',
1499                   'files': ['<(PRODUCT_DIR)/npapi_test_plugin.plugin'],
1500                 },
1501               ]
1502             }],
1503             ['os_posix == 1 and OS != "mac"', {
1504               'copies': [
1505                 {
1506                   'destination': '<(PRODUCT_DIR)/plugins',
1507                   'files': ['<(PRODUCT_DIR)/libnpapi_test_plugin.so'],
1508                 },
1509               ],
1510             }],
1511           ],
1512         },
1513       ],
1514     }],
1515   ],