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