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