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