Prepare for webview compositing on MACOSX.
[chromium-blink-merge.git] / chrome / chrome_tests.gypi
blob4c5c1a0a069e77fc3d9046b75cff169814e7f756
1 # Copyright 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.
5   'variables' : {
6     'pyautolib_sources': [
7       'app/chrome_command_ids.h',
8       'app/chrome_dll_resource.h',
9       'common/automation_constants.h',
10       'common/pref_names.cc',
11       'common/pref_names.h',
12       'browser/chromeos/cros/network_constants.h',
13       'test/automation/browser_proxy.cc',
14       'test/automation/browser_proxy.h',
15       'test/automation/tab_proxy.cc',
16       'test/automation/tab_proxy.h',
17       '../content/public/common/page_type.h',
18       '../content/public/common/security_style.h',
19       # Must come before cert_status_flags.h
20       '../net/base/net_export.h',
21       '../net/base/cert_status_flags.h',
22     ],
23     'conditions': [
24       ['asan==1', {
25         'pyautolib_sources': [
26           'test/pyautolib/asan_stub.c',
27         ]
28       }],
29     ],
30   },
31   'includes': [
32     'js_unittest_vars.gypi',
33   ],
34   'targets': [
35     {
36       'target_name': 'test_support_ui',
37       'type': 'static_library',
38       'dependencies': [
39         'chrome_resources.gyp:chrome_resources',
40         'chrome_resources.gyp:chrome_strings',
41         'chrome_resources.gyp:theme_resources',
42         'test_support_common',
43         '../skia/skia.gyp:skia',
44         '../testing/gtest.gyp:gtest',
45       ],
46       'export_dependent_settings': [
47         'test_support_common',
48       ],
49       'include_dirs': [
50         '..',
51       ],
52       'sources': [
53         'test/automation/proxy_launcher.cc',
54         'test/automation/proxy_launcher.h',
55         'test/reliability/automated_ui_test_base.cc',
56         'test/reliability/automated_ui_test_base.h',
57         'test/ui/javascript_test_util.cc',
58         'test/ui/run_all_unittests.cc',
59         'test/ui/ui_perf_test.cc',
60         'test/ui/ui_perf_test.h',
61         'test/ui/ui_test.cc',
62         'test/ui/ui_test.h',
63         'test/ui/ui_test_suite.cc',
64         'test/ui/ui_test_suite.h',
65       ],
66       'conditions': [
67         ['OS=="win"', {
68           'dependencies': [
69             'chrome.gyp:crash_service',  # run time dependency
70           ],
71         }],
72         ['OS=="win" and target_arch=="ia32"', {
73           'dependencies': [
74             'chrome.gyp:crash_service_win64',  # run time dependency
75           ],
76         }],
77         ['toolkit_uses_gtk == 1', {
78           'dependencies': [
79             '../build/linux/system.gyp:gtk',
80           ],
81         }],
82       ],
83     },
84     {
85       'target_name': 'automated_ui_tests',
86       'type': 'executable',
87       'dependencies': [
88         'browser',
89         'chrome_resources.gyp:theme_resources',
90         'renderer',
91         'test_support_common',
92         'test_support_ui',
93         '../base/base.gyp:base',
94         '../skia/skia.gyp:skia',
95         '../third_party/libxml/libxml.gyp:libxml',
96         '../testing/gtest.gyp:gtest',
97       ],
98       'include_dirs': [
99         '..',
100       ],
101       'sources': [
102         'test/reliability/automated_ui_tests.cc',
103         'test/reliability/automated_ui_tests.h',
104       ],
105       'conditions': [
106         ['OS=="win" and buildtype=="Official"', {
107           'configurations': {
108             'Release': {
109               'msvs_settings': {
110                 'VCCLCompilerTool': {
111                   'WholeProgramOptimization': 'false',
112                 },
113               },
114             },
115           },
116         },],
117         ['use_x11==1', {
118           'dependencies': [
119             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
120           ],
121         }],
122         ['OS=="win"', {
123           'dependencies': [
124             'automated_ui_tests_exe_pdb_workaround',
125           ],
126           'include_dirs': [
127             '<(DEPTH)/third_party/wtl/include',
128           ],
129           'conditions': [
130             ['win_use_allocator_shim==1', {
131               'dependencies': [
132                 '<(allocator_target)',
133               ],
134             }],
135           ],
136         }],
137       ],
138     },
139     {
140       'target_name': 'interactive_ui_tests',
141       'type': 'executable',
142       'dependencies': [
143         'browser',
144         'chrome_resources.gyp:chrome_resources',
145         'chrome_resources.gyp:chrome_strings',
146         'chrome_resources.gyp:packed_extra_resources',
147         'chrome_resources.gyp:packed_resources',
148         'common/extensions/api/api.gyp:api',
149         'debugger',
150         'renderer',
151         'test_support_common',
152         # NOTE: don't add test_support_ui, no more UITests. See
153         # http://crbug.com/137365
154         '../third_party/hunspell/hunspell.gyp:hunspell',
155         '../net/net.gyp:net',
156         '../net/net.gyp:net_resources',
157         '../net/net.gyp:net_test_support',
158         '../skia/skia.gyp:skia',
159         '../sync/sync.gyp:sync',
160         '../third_party/icu/icu.gyp:icui18n',
161         '../third_party/icu/icu.gyp:icuuc',
162         '../third_party/libpng/libpng.gyp:libpng',
163         '../third_party/zlib/zlib.gyp:zlib',
164         '../testing/gmock.gyp:gmock',
165         '../testing/gtest.gyp:gtest',
166         '../third_party/npapi/npapi.gyp:npapi',
167         # Runtime dependencies
168         '../ppapi/ppapi_internal.gyp:ppapi_tests',
169         '../ui/web_dialogs/web_dialogs.gyp:web_dialogs_test_support',
170         '../webkit/support/webkit_support.gyp:webkit_resources',
171       ],
172       'include_dirs': [
173         '..',
174       ],
175       'defines': [
176         'HAS_OUT_OF_PROC_TEST_RUNNER',
177         'INTERACTIVE_TESTS',
178       ],
179       'sources': [
180         'browser/browser_keyevents_browsertest.cc',
181         'browser/extensions/api/tabs/tabs_interactive_test.cc',
182         'browser/extensions/extension_apitest.cc',
183         'browser/extensions/extension_browsertest.cc',
184         'browser/extensions/extension_crash_recovery_browsertest.cc',
185         'browser/extensions/extension_function_test_utils.cc',
186         'browser/extensions/extension_keybinding_apitest.cc',
187         'browser/extensions/notifications_apitest.cc',
188         'browser/extensions/window_open_interactive_apitest.cc',
189         'browser/extensions/extension_fullscreen_apitest.cc',
190         'browser/extensions/extension_pointer_lock_apitest.cc',
191         'browser/instant/instant_browsertest.cc',
192         'browser/instant/instant_extended_browsertest.cc',
193         'browser/instant/instant_test_utils.h',
194         'browser/instant/instant_test_utils.cc',
195         'browser/mouseleave_browsertest.cc',
196         'browser/notifications/desktop_notifications_unittest.cc',
197         'browser/notifications/desktop_notifications_unittest.h',
198         'browser/notifications/notification_browsertest.cc',
199         'browser/printing/print_dialog_cloud_interative_uitest.cc',
200         'browser/task_manager/task_manager_browsertest_util.cc',
201         'browser/ui/browser_focus_uitest.cc',
202         'browser/ui/cocoa/panels/panel_cocoa_browsertest.mm',
203         'browser/ui/fullscreen/fullscreen_controller_interactive_browsertest.cc',
204         'browser/ui/fullscreen/fullscreen_controller_state_interactive_browsertest.cc',
205         'browser/ui/gtk/bookmarks/bookmark_bar_gtk_interactive_uitest.cc',
206         'browser/ui/omnibox/action_box_browsertest.cc',
207         'browser/ui/omnibox/omnibox_view_browsertest.cc',
208         'browser/ui/panels/base_panel_browser_test.cc',
209         'browser/ui/panels/base_panel_browser_test.h',
210         'browser/ui/panels/detached_panel_browsertest.cc',
211         'browser/ui/panels/docked_panel_browsertest.cc',
212         'browser/ui/panels/panel_and_desktop_notification_browsertest.cc',
213         'browser/ui/panels/panel_browsertest.cc',
214         'browser/ui/panels/panel_drag_browsertest.cc',
215         'browser/ui/panels/panel_resize_browsertest.cc',
216         'browser/ui/panels/stacked_panel_browsertest.cc',
217         'browser/ui/panels/test_panel_active_state_observer.cc',
218         'browser/ui/panels/test_panel_active_state_observer.h',
219         'browser/ui/panels/test_panel_mouse_watcher.cc',
220         'browser/ui/panels/test_panel_mouse_watcher.h',
221         'browser/ui/panels/test_panel_notification_observer.cc',
222         'browser/ui/panels/test_panel_notification_observer.h',
223         'browser/ui/panels/test_panel_collection_squeeze_observer.cc',
224         'browser/ui/panels/test_panel_collection_squeeze_observer.h',
225         'browser/ui/startup/startup_browser_creator_interactive_uitest.cc',
226         'browser/ui/views/bookmarks/bookmark_bar_view_test.cc',
227         'browser/ui/views/button_dropdown_test.cc',
228         'browser/ui/views/constrained_window_views_browsertest.cc',
229         'browser/ui/views/find_bar_host_interactive_uitest.cc',
230         'browser/ui/views/keyboard_access_browsertest.cc',
231         'browser/ui/views/location_bar/star_view_browsertest.cc',
232         'browser/ui/views/menu_item_view_test.cc',
233         'browser/ui/views/menu_model_adapter_test.cc',
234         'browser/ui/views/panels/panel_view_browsertest.cc',
235         'browser/ui/views/ssl_client_certificate_selector_browsertest.cc',
236         'browser/ui/views/tabs/tab_drag_controller_interactive_uitest.cc',
237         'browser/ui/views/tabs/tab_drag_controller_interactive_uitest.h',
238         'browser/ui/views/tabs/tab_drag_controller_interactive_uitest_win.cc',
239         'test/base/chrome_test_launcher.cc',
240         'test/base/interactive_test_utils.cc',
241         'test/base/interactive_test_utils.h',
242         'test/base/interactive_test_utils_aura.cc',
243         'test/base/interactive_test_utils_aura.h',
244         'test/base/interactive_test_utils_gtk.cc',
245         'test/base/interactive_test_utils_mac.mm',
246         'test/base/interactive_test_utils_views.cc',
247         'test/base/interactive_test_utils_win.cc',
248         'test/base/view_event_test_base.cc',
249         'test/base/view_event_test_base.h',
250         'test/base/ui_controls.h',
251         'test/base/ui_controls_ash.cc',
252         'test/base/ui_controls_aura.h',
253         'test/base/ui_controls_aura.cc',
254         'test/base/ui_controls_aurawin.cc',
255         'test/base/ui_controls_aurax11.cc',
256         'test/base/ui_controls_gtk.cc',
257         'test/base/ui_controls_internal_win.cc',
258         'test/base/ui_controls_internal_win.h',
259         'test/base/ui_controls_mac.mm',
260         'test/base/ui_controls_win.cc',
261         'test/ppapi/ppapi_interactive_browsertest.cc',
262       ],
263       'conditions': [
264         ['use_x11==1', {
265           'dependencies': [
266             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
267           ],
268         }],
269         ['toolkit_uses_gtk == 1', {
270           'dependencies': [
271             '../build/linux/system.gyp:gtk',
272           ],
273           'sources!': [
274             'browser/ui/views/tabs/tab_drag_controller_interactive_uitest.cc',
275           ],
276         }],
277         ['toolkit_uses_gtk == 1 or chromeos==1 or (OS=="linux" and use_aura==1)', {
278           'dependencies': [
279             '../build/linux/system.gyp:ssl',
280           ],
281         }],
282         ['toolkit_uses_gtk == 1 and toolkit_views == 0', {
283           'sources!': [
284             # TODO(port)
285             'browser/ui/views/bookmarks/bookmark_bar_view_test.cc',
286             'browser/ui/views/button_dropdown_test.cc',
287             'browser/ui/views/constrained_window_views_browsertest.cc',
288             'browser/ui/views/crypto_module_password_dialog_view_unittest.cc',
289             'browser/ui/views/find_bar_host_interactive_uitest.cc',
290             'browser/ui/views/keyboard_access_browsertest.cc',
291             'browser/ui/views/menu_item_view_test.cc',
292             'browser/ui/views/menu_model_adapter_test.cc',
293             'test/base/view_event_test_base.cc',
294             'test/base/view_event_test_base.h',
295           ],
296         }],
297         ['OS=="linux" and toolkit_views==1', {
298           'sources!': [
299             # TODO(port)
300             'browser/ui/gtk/bookmarks/bookmark_bar_gtk_interactive_uitest.cc',
301           ],
302         }],
303         ['OS=="mac"', {
304           'sources!': [
305             # TODO(port)
306             'browser/ui/views/bookmarks/bookmark_bar_view_test.cc',
307             'browser/ui/views/button_dropdown_test.cc',
308             'browser/ui/views/constrained_window_views_browsertest.cc',
309             'browser/ui/views/find_bar_host_interactive_uitest.cc',
310             'browser/ui/views/keyboard_access_browsertest.cc',
311             'browser/ui/views/menu_item_view_test.cc',
312             'browser/ui/views/menu_model_adapter_test.cc',
313             'browser/ui/views/tabs/tab_drag_controller_interactive_uitest.cc',
314             'test/base/view_event_test_base.cc',
315             'test/base/view_event_test_base.h',
316           ],
317           'dependencies': [
318             'chrome'
319           ],
320           # See comment about the same line in chrome/chrome_tests.gypi.
321           'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']},
322         }],  # OS=="mac"
323         ['notifications==0', {
324           'sources/': [
325             ['exclude', '^browser/notifications/'],
326             ['exclude', '^browser/extensions/notifications_apitest.cc'],
327           ],
328         }],
329         ['toolkit_views==1', {
330           'dependencies': [
331             '../ui/views/views.gyp:views',
332             '../ui/views/views.gyp:views_test_support',
333           ],
334         }, { # else: toolkit_views == 0
335           'sources/': [
336             ['exclude', '^browser/ui/views/'],
337           ],
338         }],
339         ['use_ash==1', {
340           'dependencies': [
341             '../ash/ash.gyp:ash_test_support',
342           ],
343         }],
344         ['use_aura==1', {
345           'sources!': [
346             'browser/ui/views/tabs/tab_drag_controller_interactive_uitest_win.cc',
347             'test/base/ui_controls_win.cc',
348           ],
349         }],
350         ['chromeos==1', {
351           'sources': [
352             'browser/chromeos/cros/cros_in_process_browser_test.cc',
353             'browser/chromeos/cros/cros_in_process_browser_test.h',
354             'browser/chromeos/cros/cros_mock.cc',
355             'browser/chromeos/cros/cros_mock.h',
356             'browser/chromeos/input_method/textinput_browsertest.cc',
357             'browser/chromeos/login/login_browsertest.cc',
358             'browser/chromeos/login/mock_authenticator.cc',
359             'browser/chromeos/login/mock_authenticator.h',
360             'browser/chromeos/login/screen_locker_browsertest.cc',
361             'browser/chromeos/login/screen_locker_tester.cc',
362             'browser/chromeos/login/screen_locker_tester.h',
363             'browser/chromeos/login/wallpaper_manager_browsertest.cc',
364           ],
365           'sources!': [
366             # chromeos does not use cross-platform panels
367             'browser/ui/panels/detached_panel_browsertest.cc',
368             'browser/ui/panels/docked_panel_browsertest.cc',
369             'browser/ui/panels/panel_and_desktop_notification_browsertest.cc',
370             'browser/ui/panels/panel_browsertest.cc',
371             'browser/ui/panels/panel_drag_browsertest.cc',
372             'browser/ui/panels/panel_resize_browsertest.cc',
373             'browser/ui/views/panels/panel_view_browsertest.cc',
374             'browser/notifications/desktop_notifications_unittest.cc',
375           ],
376         }],
377         ['OS=="win"', {
378           'include_dirs': [
379             '../third_party/wtl/include',
380           ],
381           'dependencies': [
382             'chrome.gyp:chrome_version_resources',
383             '../third_party/isimpledom/isimpledom.gyp:isimpledom',
384             '../ui/ui.gyp:ui_resources',
385           ],
386           'sources': [
387             '../webkit/glue/resources/aliasb.cur',
388             '../webkit/glue/resources/cell.cur',
389             '../webkit/glue/resources/col_resize.cur',
390             '../webkit/glue/resources/copy.cur',
391             '../webkit/glue/resources/none.cur',
392             '../webkit/glue/resources/row_resize.cur',
393             '../webkit/glue/resources/vertical_text.cur',
394             '../webkit/glue/resources/zoom_in.cur',
395             '../webkit/glue/resources/zoom_out.cur',
397             'app/chrome_dll.rc',
398             'test/data/resource.rc',
400             # TODO:  It would be nice to have these pulled in
401             # automatically from direct_dependent_settings in
402             # their various targets (net.gyp:net_resources, etc.),
403             # but that causes errors in other targets when
404             # resulting .res files get referenced multiple times.
405             '<(SHARED_INTERMEDIATE_DIR)/chrome/browser_resources.rc',
406             '<(SHARED_INTERMEDIATE_DIR)/chrome/chrome_unscaled_resources.rc',
407             '<(SHARED_INTERMEDIATE_DIR)/chrome/common_resources.rc',
408             '<(SHARED_INTERMEDIATE_DIR)/chrome/extensions_api_resources.rc',
409             '<(SHARED_INTERMEDIATE_DIR)/chrome_version/other_version.rc',
410             '<(SHARED_INTERMEDIATE_DIR)/content/content_resources.rc',
411             '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc',
412             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.rc',
413             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_unscaled_resources.rc',
415             'browser/accessibility/accessibility_win_browsertest.cc',
416             'browser/ui/views/accessibility/browser_views_accessibility_browsertest.cc',
417           ],
418           'conditions': [
419             ['win_use_allocator_shim==1', {
420               'dependencies': [
421                  '../base/allocator/allocator.gyp:allocator',
422               ],
423             }],
424             ['use_aura==1', {
425               'sources/': [
426                 ['exclude', '^browser/accessibility/accessibility_win_browsertest.cc'],
427                 ['exclude', '^browser/ui/views/accessibility/browser_views_accessibility_browsertest.cc'],
428               ],
429             }],
430           ],
431           'msvs_settings': {
432             'VCLinkerTool': {
433               'conditions': [
434                 ['incremental_chrome_dll==1', {
435                   'UseLibraryDependencyInputs': "true",
436                 }],
437               ],
438             },
439           },
440         }, { # else: OS != "win"
441           'sources!': [
442             'browser/ui/views/ssl_client_certificate_selector_browsertest.cc',
443           ],
444         }],  # OS != "win"
445       ],  # conditions
446     },
447     {
448       # Third-party support sources for chromedriver_lib.
449       'target_name': 'chromedriver_support',
450       'type': 'static_library',
451       'sources': [
452         '../third_party/mongoose/mongoose.c',
453         '../third_party/mongoose/mongoose.h',
454         '../third_party/webdriver/atoms.cc',
455         '../third_party/webdriver/atoms.h',
456       ],
457     },
458     {
459       # chromedriver is the chromium implementation of WebDriver.
460       # See http://www.chromium.org/developers/testing/webdriver-for-chrome
461       'target_name': 'chromedriver_lib',
462       'type': 'static_library',
463       'dependencies': [
464         'browser',
465         'chrome',
466         'chrome_resources.gyp:chrome_resources',
467         'chrome_resources.gyp:chrome_strings',
468         'chromedriver_support',
469         'common',
470         'test_support_ui',
471         '../base/base.gyp:base',
472         '../build/temp_gyp/googleurl.gyp:googleurl',
473         '../net/net.gyp:net',
474         '../skia/skia.gyp:skia',
475         '../sync/sync.gyp:sync',
476         '../testing/gtest.gyp:gtest',
477         '../third_party/icu/icu.gyp:icui18n',
478         '../third_party/icu/icu.gyp:icuuc',
479         '../third_party/libxml/libxml.gyp:libxml',
480       ],
481       'include_dirs': [
482         '..',
483       ],
484       'sources': [
485         'test/webdriver/commands/alert_commands.cc',
486         'test/webdriver/commands/alert_commands.h',
487         'test/webdriver/commands/appcache_status_command.cc',
488         'test/webdriver/commands/appcache_status_command.h',
489         'test/webdriver/commands/browser_connection_commands.cc',
490         'test/webdriver/commands/browser_connection_commands.h',
491         'test/webdriver/commands/chrome_commands.cc',
492         'test/webdriver/commands/chrome_commands.h',
493         'test/webdriver/commands/command.cc',
494         'test/webdriver/commands/command.h',
495         'test/webdriver/commands/cookie_commands.cc',
496         'test/webdriver/commands/cookie_commands.h',
497         'test/webdriver/commands/create_session.cc',
498         'test/webdriver/commands/create_session.h',
499         'test/webdriver/commands/execute_async_script_command.cc',
500         'test/webdriver/commands/execute_async_script_command.h',
501         'test/webdriver/commands/execute_command.cc',
502         'test/webdriver/commands/execute_command.h',
503         'test/webdriver/commands/file_upload_command.cc',
504         'test/webdriver/commands/file_upload_command.h',
505         'test/webdriver/commands/find_element_commands.cc',
506         'test/webdriver/commands/find_element_commands.h',
507         'test/webdriver/commands/html5_location_commands.cc',
508         'test/webdriver/commands/html5_location_commands.h',
509         'test/webdriver/commands/html5_storage_commands.cc',
510         'test/webdriver/commands/html5_storage_commands.h',
511         'test/webdriver/commands/keys_command.cc',
512         'test/webdriver/commands/keys_command.h',
513         'test/webdriver/commands/log_command.cc',
514         'test/webdriver/commands/log_command.h',
515         'test/webdriver/commands/navigate_commands.cc',
516         'test/webdriver/commands/navigate_commands.h',
517         'test/webdriver/commands/mouse_commands.cc',
518         'test/webdriver/commands/mouse_commands.h',
519         'test/webdriver/commands/response.h',
520         'test/webdriver/commands/response.cc',
521         'test/webdriver/commands/screenshot_command.cc',
522         'test/webdriver/commands/screenshot_command.h',
523         'test/webdriver/commands/session_with_id.cc',
524         'test/webdriver/commands/session_with_id.h',
525         'test/webdriver/commands/set_timeout_commands.cc',
526         'test/webdriver/commands/set_timeout_commands.h',
527         'test/webdriver/commands/source_command.cc',
528         'test/webdriver/commands/source_command.h',
529         'test/webdriver/commands/target_locator_commands.cc',
530         'test/webdriver/commands/target_locator_commands.h',
531         'test/webdriver/commands/title_command.cc',
532         'test/webdriver/commands/title_command.h',
533         'test/webdriver/commands/url_command.cc',
534         'test/webdriver/commands/url_command.h',
535         'test/webdriver/commands/webdriver_command.cc',
536         'test/webdriver/commands/webdriver_command.h',
537         'test/webdriver/commands/webelement_commands.cc',
538         'test/webdriver/commands/webelement_commands.h',
539         'test/webdriver/commands/window_commands.cc',
540         'test/webdriver/commands/window_commands.h',
541         'test/webdriver/frame_path.cc',
542         'test/webdriver/frame_path.h',
543         'test/webdriver/http_response.cc',
544         'test/webdriver/http_response.h',
545         'test/webdriver/keycode_text_conversion.h',
546         'test/webdriver/keycode_text_conversion_gtk.cc',
547         'test/webdriver/keycode_text_conversion_mac.mm',
548         'test/webdriver/keycode_text_conversion_win.cc',
549         'test/webdriver/keycode_text_conversion_x.cc',
550         'test/webdriver/webdriver_automation.cc',
551         'test/webdriver/webdriver_automation.h',
552         'test/webdriver/webdriver_basic_types.cc',
553         'test/webdriver/webdriver_basic_types.h',
554         'test/webdriver/webdriver_capabilities_parser.cc',
555         'test/webdriver/webdriver_capabilities_parser.h',
556         'test/webdriver/webdriver_dispatch.cc',
557         'test/webdriver/webdriver_dispatch.h',
558         'test/webdriver/webdriver_element_id.cc',
559         'test/webdriver/webdriver_element_id.h',
560         'test/webdriver/webdriver_error.cc',
561         'test/webdriver/webdriver_error.h',
562         'test/webdriver/webdriver_key_converter.cc',
563         'test/webdriver/webdriver_key_converter.h',
564         'test/webdriver/webdriver_logging.cc',
565         'test/webdriver/webdriver_logging.h',
566         'test/webdriver/webdriver_session.cc',
567         'test/webdriver/webdriver_session.h',
568         'test/webdriver/webdriver_session_manager.cc',
569         'test/webdriver/webdriver_session_manager.h',
570         'test/webdriver/webdriver_switches.cc',
571         'test/webdriver/webdriver_switches.h',
572         'test/webdriver/webdriver_util.cc',
573         'test/webdriver/webdriver_util.h',
574         'test/webdriver/webdriver_util_mac.mm',
575       ],
576       'conditions': [
577         ['use_x11==1', {
578           'dependencies': [
579             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
580           ],
581         }],
582         ['toolkit_uses_gtk == 1', {
583           'dependencies': [
584             '../build/linux/system.gyp:gtk',
585           ],
586           'sources!': [
587             'test/webdriver/keycode_text_conversion_x.cc',
588           ],
589         }],
590         ['toolkit_uses_gtk == 0', {
591           'sources!': [
592             'test/webdriver/keycode_text_conversion_gtk.cc',
593           ],
594         }],
595         ['OS=="linux" and toolkit_views==1', {
596           'dependencies': [
597             '../ui/views/views.gyp:views',
598           ],
599         }],
600         ['os_posix == 1 and OS != "mac" and OS != "android"', {
601           'conditions': [
602             ['linux_use_tcmalloc==1', {
603               'dependencies': [
604                 '../base/allocator/allocator.gyp:allocator',
605               ],
606             }],
607           ],
608         }],
609       ],
610     },
611     {
612       'target_name': 'chromedriver',
613       'type': 'executable',
614       'dependencies': [
615         'chromedriver_lib',
616         '../base/base.gyp:base',
617         '../skia/skia.gyp:skia',
618         '../testing/gtest.gyp:gtest',
619       ],
620       'include_dirs': [
621         '..',
622       ],
623       'sources': [
624         'test/webdriver/webdriver_server.cc',
625       ],
626       'conditions': [
627         ['OS=="win"', {
628           'conditions': [
629             ['win_use_allocator_shim==1', {
630               'dependencies': [
631                 '<(allocator_target)',
632               ],
633             }],
634           ],
635           'link_settings': {
636             'libraries': [
637               '-lOleAcc.lib',
638               '-lws2_32.lib',
639             ],
640           },
641           'configurations': {
642             'Debug': {
643               'msvs_settings': {
644                 'VCLinkerTool': {
645                   'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
646                 },
647               },
648             },
649           },
650         }],
651       ]
652     },
653     {
654       'target_name': 'chromedriver_unittests',
655       'type': 'executable',
656       'dependencies': [
657         'chromedriver_lib',
658         '../base/base.gyp:run_all_unittests',
659         '../base/base.gyp:test_support_base',
660         '../testing/gtest.gyp:gtest',
661         '../skia/skia.gyp:skia',
662       ],
663       'include_dirs': [
664         '..',
665       ],
666       'sources': [
667         'test/webdriver/commands/set_timeout_commands_unittest.cc',
668         'test/webdriver/frame_path_unittest.cc',
669         'test/webdriver/http_response_unittest.cc',
670         'test/webdriver/keycode_text_conversion_unittest.cc',
671         'test/webdriver/webdriver_capabilities_parser_unittest.cc',
672         'test/webdriver/webdriver_dispatch_unittest.cc',
673         'test/webdriver/webdriver_key_converter_unittest.cc',
674         'test/webdriver/webdriver_test_util.cc',
675         'test/webdriver/webdriver_test_util.h',
676         'test/webdriver/webdriver_util_unittest.cc',
677       ],
678       'conditions': [
679         ['OS=="win"', {
680           'conditions': [
681             ['win_use_allocator_shim==1', {
682               'dependencies': [
683                 '<(allocator_target)',
684               ],
685             }],
686           ],
687           'link_settings': {
688             'libraries': [
689               '-lOleAcc.lib',
690               '-lws2_32.lib',
691             ],
692           },
693           'configurations': {
694             'Debug': {
695               'msvs_settings': {
696                 'VCLinkerTool': {
697                   'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
698                 },
699               },
700             },
701           },
702         }],
703       ],
704     },
705     {
706       'target_name': 'chromedriver2_lib',
707       'type': 'static_library',
708       'dependencies': [
709         '../base/base.gyp:base',
710         '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
711         '../build/temp_gyp/googleurl.gyp:googleurl',
712         '../net/net.gyp:net',
713         '../ui/ui.gyp:ui',
714       ],
715       'include_dirs': [
716         '..',
717         '<(INTERMEDIATE_DIR)',
718       ],
719       'sources': [
720         '<(INTERMEDIATE_DIR)/chrome/test/chromedriver/js.cc',
721         '<(INTERMEDIATE_DIR)/chrome/test/chromedriver/js.h',
722         '../third_party/webdriver/atoms.cc',
723         '../third_party/webdriver/atoms.h',
724         'test/chromedriver/basic_types.cc',
725         'test/chromedriver/basic_types.h',
726         'test/chromedriver/chrome.h',
727         'test/chromedriver/chrome_finder.cc',
728         'test/chromedriver/chrome_finder.h',
729         'test/chromedriver/chrome_finder_mac.mm',
730         'test/chromedriver/chrome_impl.cc',
731         'test/chromedriver/chrome_impl.h',
732         'test/chromedriver/chrome_android_impl.cc',
733         'test/chromedriver/chrome_android_impl.h',
734         'test/chromedriver/chrome_desktop_impl.cc',
735         'test/chromedriver/chrome_desktop_impl.h',
736         'test/chromedriver/chromedriver.cc',
737         'test/chromedriver/chromedriver.h',
738         'test/chromedriver/command.h',
739         'test/chromedriver/command_executor.h',
740         'test/chromedriver/command_executor_impl.cc',
741         'test/chromedriver/command_executor_impl.h',
742         'test/chromedriver/command_names.cc',
743         'test/chromedriver/command_names.h',
744         'test/chromedriver/commands.cc',
745         'test/chromedriver/commands.h',
746         'test/chromedriver/devtools_client.h',
747         'test/chromedriver/devtools_client_impl.cc',
748         'test/chromedriver/devtools_client_impl.h',
749         'test/chromedriver/devtools_event_listener.h',
750         'test/chromedriver/dom_tracker.cc',
751         'test/chromedriver/dom_tracker.h',
752         'test/chromedriver/element_util.cc',
753         'test/chromedriver/element_util.h',
754         'test/chromedriver/frame_tracker.cc',
755         'test/chromedriver/frame_tracker.h',
756         'test/chromedriver/key_converter.cc',
757         'test/chromedriver/key_converter.h',
758         'test/chromedriver/keycode_text_conversion.h',
759         'test/chromedriver/keycode_text_conversion_mac.mm',
760         'test/chromedriver/keycode_text_conversion_win.cc',
761         'test/chromedriver/keycode_text_conversion_x.cc',
762         'test/chromedriver/navigation_tracker.cc',
763         'test/chromedriver/navigation_tracker.h',
764         'test/chromedriver/net/net_util.cc',
765         'test/chromedriver/net/net_util.h',
766         'test/chromedriver/net/sync_websocket.h',
767         'test/chromedriver/net/sync_websocket_factory.cc',
768         'test/chromedriver/net/sync_websocket_factory.h',
769         'test/chromedriver/net/sync_websocket_impl.cc',
770         'test/chromedriver/net/sync_websocket_impl.h',
771         'test/chromedriver/net/url_request_context_getter.cc',
772         'test/chromedriver/net/url_request_context_getter.h',
773         'test/chromedriver/net/websocket.cc',
774         'test/chromedriver/net/websocket.h',
775         'test/chromedriver/session.cc',
776         'test/chromedriver/session.h',
777         'test/chromedriver/session_command.cc',
778         'test/chromedriver/session_command.h',
779         'test/chromedriver/session_map.h',
780         'test/chromedriver/status.cc',
781         'test/chromedriver/status.h',
782         'test/chromedriver/synchronized_map.h',
783         'test/chromedriver/ui_events.cc',
784         'test/chromedriver/ui_events.h',
785         'test/chromedriver/util.cc',
786         'test/chromedriver/util.h',
787         'test/chromedriver/version.cc',
788         'test/chromedriver/version.h',
789       ],
790       'actions': [
791         {
792           'action_name': 'embed_js_in_cpp',
793           'inputs': [
794             'test/chromedriver/embed_js_in_cpp.py',
795             'test/chromedriver/js/call_function.js',
796             'test/chromedriver/js/focus.js',
797             'test/chromedriver/js/get_element_region.js',
798             'test/chromedriver/js/is_option_element_toggleable.js',
799           ],
800           'outputs': [
801             '<(INTERMEDIATE_DIR)/chrome/test/chromedriver/js.cc',
802             '<(INTERMEDIATE_DIR)/chrome/test/chromedriver/js.h',
803           ],
804           'action': [ 'python',
805                       'test/chromedriver/embed_js_in_cpp.py',
806                       '--directory',
807                       '<(INTERMEDIATE_DIR)/chrome/test/chromedriver',
808                       'test/chromedriver/js/call_function.js',
809                       'test/chromedriver/js/focus.js',
810                       'test/chromedriver/js/get_element_region.js',
811                       'test/chromedriver/js/is_option_element_toggleable.js',
812           ],
813           'message': 'Generating sources for embedding js in chromedriver',
814         },
815       ],
816     },
817     # This is the new ChromeDriver based on DevTools.
818     {
819       'target_name': 'chromedriver2',
820       'type': 'loadable_module',
821       'dependencies': [
822         'chromedriver2_lib',
823         '../base/base.gyp:base',
824         'test/chromedriver/third_party/jni/jni.gyp:jni',
825       ],
826       'include_dirs': [
827         '..',
828       ],
829       'sources': [
830         'test/chromedriver/chromedriver_shared_library.cc',
831       ],
832     },
833     {
834       'target_name': 'chromedriver2_server_lib',
835       'type': 'static_library',
836       'dependencies': [
837         'chromedriver2_lib',
838         '../base/base.gyp:base',
839       ],
840       'include_dirs': [
841         '..',
842       ],
843       'sources': [
844         'test/chromedriver/server/http_handler.cc',
845         'test/chromedriver/server/http_handler.h',
846         'test/chromedriver/server/http_response.cc',
847         'test/chromedriver/server/http_response.h',
848       ],
849     },
850     {
851       'target_name': 'chromedriver2_server',
852       'type': 'executable',
853       'dependencies': [
854         'chromedriver2_server_lib',
855       ],
856       'include_dirs': [
857         '..',
858       ],
859       'sources': [
860         '../third_party/mongoose/mongoose.c',
861         '../third_party/mongoose/mongoose.h',
862         'test/chromedriver/server/chromedriver_server.cc',
863       ],
864     },
865     {
866       'target_name': 'chromedriver2_unittests',
867       'type': 'executable',
868       'dependencies': [
869         'chromedriver2_lib',
870         'chromedriver2_server_lib',
871         '../base/base.gyp:base',
872         '../base/base.gyp:run_all_unittests',
873         '../testing/gtest.gyp:gtest',
874         '../ui/ui.gyp:ui',
875       ],
876       'sources': [
877         'test/chromedriver/chrome_finder_unittest.cc',
878         'test/chromedriver/chrome_impl_unittest.cc',
879         'test/chromedriver/chromedriver_unittest.cc',
880         'test/chromedriver/command_executor_impl_unittest.cc',
881         'test/chromedriver/commands_unittest.cc',
882         'test/chromedriver/devtools_client_impl_unittest.cc',
883         'test/chromedriver/dom_tracker_unittest.cc',
884         'test/chromedriver/fake_session_accessor.cc',
885         'test/chromedriver/fake_session_accessor.h',
886         'test/chromedriver/frame_tracker_unittest.cc',
887         'test/chromedriver/navigation_tracker_unittest.cc',
888         'test/chromedriver/server/http_handler_unittest.cc',
889         'test/chromedriver/server/http_response_unittest.cc',
890         'test/chromedriver/session_command_unittest.cc',
891         'test/chromedriver/session_unittest.cc',
892         'test/chromedriver/status_unittest.cc',
893         'test/chromedriver/stub_chrome.cc',
894         'test/chromedriver/stub_chrome.h',
895         'test/chromedriver/synchronized_map_unittest.cc',
896       ],
897     },
898     # ChromeDriver2 tests that aren't run on the main buildbot. Available
899     # as an optional test type on trybots.
900     {
901       'target_name': 'chromedriver2_tests',
902       'type': 'executable',
903       'dependencies': [
904         'chromedriver2_lib',
905         '../base/base.gyp:base',
906         '../base/base.gyp:run_all_unittests',
907         '../build/temp_gyp/googleurl.gyp:googleurl',
908         '../net/net.gyp:http_server',
909         '../net/net.gyp:net',
910         '../net/net.gyp:net_test_support',
911         '../testing/gtest.gyp:gtest',
912       ],
913       'include_dirs': [
914         '..,'
915       ],
916       'sources': [
917         'test/chromedriver/key_converter_unittest.cc',
918         'test/chromedriver/keycode_text_conversion_unittest.cc',
919         'test/chromedriver/net/net_util_unittest.cc',
920         'test/chromedriver/net/sync_websocket_impl_unittest.cc',
921         'test/chromedriver/net/test_http_server.cc',
922         'test/chromedriver/net/test_http_server.h',
923         'test/chromedriver/net/websocket_unittest.cc',
924         'test/chromedriver/test_util.cc',
925         'test/chromedriver/test_util.h',
926       ],
927     },
928     {
929       # Executable that runs each browser test in a new process.
930       'target_name': 'browser_tests',
931       'type': 'executable',
932       'msvs_cygwin_shell': 0,
933       'msvs_cygwin_dirs': ['<(DEPTH)/third_party/cygwin'],
934       'dependencies': [
935         'browser',
936         'chrome_resources.gyp:chrome_resources',
937         'chrome_resources.gyp:chrome_strings',
938         'chrome_resources.gyp:packed_extra_resources',
939         'chrome_resources.gyp:packed_resources',
940         'common/extensions/api/api.gyp:api',
941         'renderer',
942         'test_support_common',
943         '../base/base.gyp:base',
944         '../base/base.gyp:base_i18n',
945         '../base/base.gyp:test_support_base',
946         '../device/device.gyp:device_bluetooth_mocks',
947         '../net/net.gyp:net',
948         '../net/net.gyp:net_test_support',
949         '../skia/skia.gyp:skia',
950         '../sync/sync.gyp:sync',
951         '../sync/sync.gyp:test_support_sync_api',
952         '../testing/gmock.gyp:gmock',
953         '../testing/gtest.gyp:gtest',
954         '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation',
955         '../third_party/cld/cld.gyp:cld',
956         '../third_party/icu/icu.gyp:icui18n',
957         '../third_party/icu/icu.gyp:icuuc',
958         '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase',
959         '../third_party/safe_browsing/safe_browsing.gyp:safe_browsing',
960         '../ui/web_dialogs/web_dialogs.gyp:web_dialogs_test_support',
961         '../v8/tools/gyp/v8.gyp:v8',
962         '../webkit/webkit.gyp:test_shell_test_support',
963         # Runtime dependencies
964         '../ppapi/ppapi_internal.gyp:ppapi_tests',
965         '../third_party/mesa/mesa.gyp:osmesa',
966       ],
967       'include_dirs': [
968         '..',
969       ],
970       'defines': [
971         'HAS_OUT_OF_PROC_TEST_RUNNER',
972       ],
973       'sources': [
974         '../apps/app_restore_service_browsertest.cc',
975         'app/breakpad_mac_stubs.mm',
976         'app/chrome_command_ids.h',
977         'app/chrome_dll.rc',
978         'app/chrome_dll_resource.h',
979         'app/chrome_version.rc.version',
980         'browser/accessibility/accessibility_extension_apitest.cc',
981         'browser/accessibility/browser_accessibility_state_browsertest.cc',
982         'browser/app_controller_mac_browsertest.mm',
983         'browser/autocomplete/autocomplete_browsertest.cc',
984         'browser/autofill/autofill_browsertest.cc',
985         'browser/autofill/risk/fingerprint_browsertest.cc',
986         'browser/autofill/autofill_external_delegate_browsertest.cc',
987         'browser/autofill/form_structure_browsertest.cc',
988         'browser/automation/automation_misc_browsertest.cc',
989         'browser/automation/automation_tab_helper_browsertest.cc',
990         'browser/browser_encoding_browsertest.cc',
991         'browser/browsing_data/browsing_data_database_helper_browsertest.cc',
992         'browser/browsing_data/browsing_data_helper_browsertest.h',
993         'browser/browsing_data/browsing_data_indexed_db_helper_browsertest.cc',
994         'browser/browsing_data/browsing_data_local_storage_helper_browsertest.cc',
995         'browser/browsing_data/browsing_data_remover_browsertest.cc',
996         'browser/captive_portal/captive_portal_browsertest.cc',
997         'browser/chrome_content_browser_client_browsertest.cc',
998         'browser/chrome_main_browsertest.cc',
999         'browser/chrome_plugin_browsertest.cc',
1000         'browser/chrome_switches_browsertest.cc',
1001         'browser/chromeos/accessibility/magnification_manager_browsertest.cc',
1002         'browser/chromeos/cros/cros_in_process_browser_test.cc',
1003         'browser/chromeos/cros/cros_in_process_browser_test.h',
1004         'browser/chromeos/cros/cros_mock.cc',
1005         'browser/chromeos/cros/cros_mock.h',
1006         'browser/chromeos/drive/drive_system_service_browsertest.cc',
1007         'browser/chromeos/drive/drive_test_util.cc',
1008         'browser/chromeos/drive/drive_test_util.h',
1009         'browser/chromeos/extensions/echo_private_apitest.cc',
1010         'browser/chromeos/extensions/external_filesystem_apitest.cc',
1011         'browser/chromeos/extensions/file_browser_event_router_browsertest.cc',
1012         'browser/chromeos/extensions/file_browser_handler_api_test.cc',
1013         'browser/chromeos/extensions/file_browser_notifications_browsertest.cc',
1014         'browser/chromeos/extensions/file_browser_private_apitest.cc',
1015         'browser/chromeos/extensions/file_browser_resource_throttle_browsertest.cc',
1016         'browser/chromeos/extensions/info_private_apitest.cc',
1017         'browser/chromeos/extensions/input_method_apitest_chromeos.cc',
1018         'browser/chromeos/extensions/networking_private_apitest.cc',
1019         'browser/chromeos/extensions/power/power_api_browsertest.cc',
1020         'browser/chromeos/extensions/wallpaper_private_apitest.cc',
1021         'browser/chromeos/kiosk_mode/mock_kiosk_mode_settings.cc',
1022         'browser/chromeos/kiosk_mode/mock_kiosk_mode_settings.h',
1023         'browser/chromeos/login/enrollment/enterprise_enrollment_screen_browsertest.cc',
1024         'browser/chromeos/login/enrollment/mock_enterprise_enrollment_screen.cc',
1025         'browser/chromeos/login/enrollment/mock_enterprise_enrollment_screen.h',
1026         'browser/chromeos/login/existing_user_controller_browsertest.cc',
1027         'browser/chromeos/login/login_utils_browsertest.cc',
1028         'browser/chromeos/login/mock_authenticator.cc',
1029         'browser/chromeos/login/mock_authenticator.h',
1030         'browser/chromeos/login/mock_eula_screen.cc',
1031         'browser/chromeos/login/mock_eula_screen.h',
1032         'browser/chromeos/login/mock_network_screen.cc',
1033         'browser/chromeos/login/mock_network_screen.h',
1034         'browser/chromeos/login/mock_screen_observer.cc',
1035         'browser/chromeos/login/mock_screen_observer.h',
1036         'browser/chromeos/login/mock_update_screen.cc',
1037         'browser/chromeos/login/mock_update_screen.h',
1038         'browser/chromeos/login/network_screen_browsertest.cc',
1039         'browser/chromeos/login/screen_locker_tester.cc',
1040         'browser/chromeos/login/screen_locker_tester.h',
1041         'browser/chromeos/login/test_login_utils.cc',
1042         'browser/chromeos/login/test_login_utils.h',
1043         'browser/chromeos/login/update_screen_browsertest.cc',
1044         'browser/chromeos/login/user_image_manager_browsertest.cc',
1045         'browser/chromeos/login/wizard_controller_browsertest.cc',
1046         'browser/chromeos/login/wizard_in_process_browser_test.cc',
1047         'browser/chromeos/login/wizard_in_process_browser_test.h',
1048         'browser/chromeos/media/media_player_browsertest.cc',
1049         'browser/chromeos/memory/oom_priority_manager_browsertest.cc',
1050         'browser/chromeos/process_proxy/process_proxy_browsertest.cc',
1051         'browser/chromeos/screensaver/screensaver_controller_browsertest.cc',
1052         'browser/chromeos/system/tray_accessibility_browsertest.cc',
1053         'browser/chromeos/ui/idle_logout_dialog_view_browsertest.cc',
1054         'browser/collected_cookies_browsertest.cc',
1055         'browser/content_settings/content_settings_browsertest.cc',
1056         'browser/crash_recovery_browsertest.cc',
1057         'browser/custom_handlers/protocol_handler_registry_browsertest.cc',
1058         'browser/devtools/devtools_sanity_browsertest.cc',
1059         'browser/do_not_track_browsertest.cc',
1060         'browser/download/download_browsertest.cc',
1061         'browser/download/download_danger_prompt_browsertest.cc',
1062         'browser/download/save_page_browsertest.cc',
1063         'browser/errorpage_browsertest.cc',
1064         'browser/extensions/active_tab_apitest.cc',
1065         'browser/extensions/activity_log_browsertest.cc',
1066         'browser/extensions/alert_apitest.cc',
1067         'browser/extensions/all_urls_apitest.cc',
1068         'browser/extensions/api/app/app_apitest.cc',
1069         'browser/extensions/api/app_window/app_window_apitest.cc',
1070         'browser/extensions/api/autotest_private/autotest_private_apitest.cc',
1071         'browser/extensions/api/bluetooth/bluetooth_apitest.cc',
1072         'browser/extensions/api/bookmark_manager_private/bookmark_manager_private_apitest.cc',
1073         'browser/extensions/api/bookmarks/bookmark_apitest.cc',
1074         'browser/extensions/api/browsing_data/browsing_data_test.cc',
1075         'browser/extensions/api/cloud_print_private/cloud_print_private_apitest.cc',
1076         'browser/extensions/api/content_settings/content_settings_apitest.cc',
1077         'browser/extensions/api/context_menus/context_menu_apitest.cc',
1078         'browser/extensions/api/cookies/cookies_apitest.cc',
1079         'browser/extensions/api/debugger/debugger_apitest.cc',
1080         'browser/extensions/api/declarative/declarative_apitest.cc',
1081         'browser/extensions/api/declarative_content/declarative_content_apitest.cc',
1082         'browser/extensions/api/developer_private/developer_private_apitest.cc',
1083         'browser/extensions/api/dial/dial_apitest.cc',
1084         'browser/extensions/api/dns/dns_apitest.cc',
1085         'browser/extensions/api/dns/mock_host_resolver_creator.cc',
1086         'browser/extensions/api/dns/mock_host_resolver_creator.h',
1087         'browser/extensions/api/downloads/downloads_api_unittest.cc',
1088         'browser/extensions/api/extension_action/browser_action_apitest.cc',
1089         'browser/extensions/api/extension_action/page_action_apitest.cc',
1090         'browser/extensions/api/extension_action/page_as_browser_action_apitest.cc',
1091         'browser/extensions/api/extension_action/script_badge_apitest.cc',
1092         'browser/extensions/api/file_system/file_system_apitest.cc',
1093         'browser/extensions/api/font_settings/font_settings_apitest.cc',
1094         'browser/extensions/api/history/history_apitest.cc',
1095         'browser/extensions/api/i18n/i18n_apitest.cc',
1096         'browser/extensions/api/identity/identity_apitest.cc',
1097         'browser/extensions/api/idle/idle_apitest.cc',
1098         'browser/extensions/api/idltest/idltest_apitest.cc',
1099         'browser/extensions/api/input/input_apitest.cc',
1100         'browser/extensions/api/input_ime/input_ime_apitest_chromeos.cc',
1101         'browser/extensions/api/managed_mode/managed_mode_apitest.cc',
1102         'browser/extensions/api/management/management_api_browsertest.cc',
1103         'browser/extensions/api/management/management_apitest.cc',
1104         'browser/extensions/api/management/management_browsertest.cc',
1105         'browser/extensions/api/media_galleries/media_galleries_apitest.cc',
1106         'browser/extensions/api/media_galleries_private/media_galleries_private_apitest.cc',
1107         'browser/extensions/api/media_galleries_private/media_galleries_watch_apitest.cc',
1108         'browser/extensions/api/messaging/native_messaging_apitest_posix.cc',
1109         'browser/extensions/api/metrics/metrics_apitest.cc',
1110         'browser/extensions/api/module/module_apitest.cc',
1111         'browser/extensions/api/notification/notification_apitest.cc',
1112         'browser/extensions/api/omnibox/omnibox_apitest.cc',
1113         'browser/extensions/api/page_capture/page_capture_apitest.cc',
1114         'browser/extensions/api/permissions/permissions_apitest.cc',
1115         'browser/extensions/api/preference/preference_apitest.cc',
1116         'browser/extensions/api/processes/processes_apitest.cc',
1117         'browser/extensions/api/proxy/proxy_apitest.cc',
1118         'browser/extensions/api/push_messaging/push_messaging_apitest.cc',
1119         'browser/extensions/api/record/record_api_test.cc',
1120         'browser/extensions/api/rtc_private/rtc_private_apitest.cc',
1121         'browser/extensions/api/runtime/runtime_apitest.cc',
1122         'browser/extensions/api/serial/serial_apitest.cc',
1123         'browser/extensions/api/session_restore/session_restore_apitest.cc',
1124         'browser/extensions/api/socket/socket_apitest.cc',
1125         'browser/extensions/api/sync_file_system/sync_file_system_apitest.cc',
1126         'browser/extensions/api/system_indicator/system_indicator_apitest.cc',
1127         'browser/extensions/api/system_info_cpu/system_info_cpu_apitest.cc',
1128         'browser/extensions/api/system_info_display/system_info_display_apitest.cc',
1129         'browser/extensions/api/system_info_memory/system_info_memory_apitest.cc',
1130         'browser/extensions/api/system_info_storage/system_info_storage_apitest.cc',
1131         'browser/extensions/api/tab_capture/tab_capture_apitest.cc',
1132         'browser/extensions/api/tabs/tabs_test.cc',
1133         'browser/extensions/api/terminal/terminal_private_apitest.cc',
1134         'browser/extensions/api/test/apitest_apitest.cc',
1135         'browser/extensions/api/top_sites/top_sites_apitest.cc',
1136         'browser/extensions/api/usb/usb_apitest.cc',
1137         'browser/extensions/api/web_navigation/web_navigation_apitest.cc',
1138         'browser/extensions/api/web_request/web_request_apitest.cc',
1139         'browser/extensions/api/web_socket_proxy_private/web_socket_proxy_private_apitest.cc',
1140         'browser/extensions/api/webstore_private/webstore_private_apitest.cc',
1141         'browser/extensions/app_background_page_apitest.cc',
1142         'browser/extensions/app_notification_browsertest.cc',
1143         'browser/extensions/app_process_apitest.cc',
1144         'browser/extensions/background_page_apitest.cc',
1145         'browser/extensions/background_scripts_apitest.cc',
1146         'browser/extensions/chrome_app_api_browsertest.cc',
1147         'browser/extensions/content_script_apitest.cc',
1148         'browser/extensions/content_security_policy_apitest.cc',
1149         'browser/extensions/convert_web_app_browsertest.cc',
1150         'browser/extensions/cross_origin_xhr_apitest.cc',
1151         'browser/extensions/crx_installer_browsertest.cc',
1152         'browser/extensions/docs/examples/apps/calculator_browsertest.cc',
1153         'browser/extensions/events_apitest.cc',
1154         'browser/extensions/execute_script_apitest.cc',
1155         'browser/extensions/extension_apitest.cc',
1156         'browser/extensions/extension_apitest.h',
1157         'browser/extensions/extension_bindings_apitest.cc',
1158         'browser/extensions/extension_blacklist_browsertest.cc',
1159         'browser/extensions/extension_browsertest.cc',
1160         'browser/extensions/extension_browsertest.h',
1161         'browser/extensions/extension_context_menu_browsertest.cc',
1162         'browser/extensions/extension_disabled_ui_browsertest.cc',
1163         'browser/extensions/extension_dom_clipboard_apitest.cc',
1164         'browser/extensions/extension_fileapi_apitest.cc',
1165         'browser/extensions/extension_function_test_utils.cc',
1166         'browser/extensions/extension_function_test_utils.h',
1167         'browser/extensions/extension_geolocation_apitest.cc',
1168         'browser/extensions/extension_get_views_apitest.cc',
1169         'browser/extensions/extension_icon_source_apitest.cc',
1170         'browser/extensions/extension_incognito_apitest.cc',
1171         'browser/extensions/extension_install_ui_browsertest.cc',
1172         'browser/extensions/extension_javascript_url_apitest.cc',
1173         'browser/extensions/extension_messages_apitest.cc',
1174         'browser/extensions/extension_override_apitest.cc',
1175         'browser/extensions/extension_resource_request_policy_apitest.cc',
1176         'browser/extensions/extension_startup_browsertest.cc',
1177         'browser/extensions/extension_storage_apitest.cc',
1178         'browser/extensions/extension_tabs_apitest.cc',
1179         'browser/extensions/extension_test_message_listener.cc',
1180         'browser/extensions/extension_test_message_listener.h',
1181         'browser/extensions/extension_toolbar_model_browsertest.cc',
1182         'browser/extensions/extension_url_rewrite_browsertest.cc',
1183         'browser/extensions/extension_websocket_apitest.cc',
1184         'browser/extensions/gpu_browsertest.cc',
1185         'browser/extensions/isolated_app_browsertest.cc',
1186         'browser/extensions/lazy_background_page_apitest.cc',
1187         'browser/extensions/lazy_background_page_test_util.h',
1188         'browser/extensions/mutation_observers_apitest.cc',
1189         'browser/extensions/options_page_apitest.cc',
1190         'browser/extensions/page_action_browsertest.cc',
1191         'browser/extensions/platform_app_browsertest.cc',
1192         'browser/extensions/platform_app_browsertest_util.cc',
1193         'browser/extensions/platform_app_browsertest_util.h',
1194         'browser/extensions/plugin_apitest.cc',
1195         'browser/extensions/process_management_browsertest.cc',
1196         'browser/extensions/requirements_checker_browsertest.cc',
1197         'browser/extensions/sandboxed_pages_apitest.cc',
1198         'browser/extensions/api/storage/settings_apitest.cc',
1199         'browser/extensions/stubs_apitest.cc',
1200         'browser/extensions/subscribe_page_action_browsertest.cc',
1201         'browser/extensions/system/system_apitest.cc',
1202         'browser/extensions/web_contents_browsertest.cc',
1203         'browser/extensions/web_view_browsertest.cc',
1204         'browser/extensions/webstore_standalone_install_browsertest.cc',
1205         'browser/extensions/window_open_apitest.cc',
1206         'browser/external_extension_browsertest.cc',
1207         'browser/fast_shutdown_browsertest.cc',
1208         'browser/first_run/first_run_browsertest.cc',
1209         'browser/first_run/try_chrome_dialog_view_browsertest.cc',
1210         'browser/geolocation/access_token_store_browsertest.cc',
1211         'browser/geolocation/geolocation_browsertest.cc',
1212         'browser/google_apis/fake_drive_service.cc',
1213         'browser/google_apis/fake_drive_service.h',
1214         'browser/history/history_browsertest.cc',
1215         'browser/history/multipart_browsertest.cc',
1216         'browser/history/redirect_browsertest.cc',
1217         'browser/iframe_browsertest.cc',
1218         'browser/importer/toolbar_importer_utils_browsertest.cc',
1219         'browser/infobars/infobar_extension_apitest.cc',
1220         'browser/infobars/infobars_browsertest.cc',
1221         'browser/intents/native_services_browsertest.cc',
1222         'browser/loadtimes_extension_bindings_browsertest.cc',
1223         'browser/locale_tests_browsertest.cc',
1224         'browser/logging_chrome_browsertest.cc',
1225         'browser/managed_mode/managed_mode_browsertest.cc',
1226         'browser/media/chrome_webrtc_browsertest.cc',
1227         'browser/media_gallery/media_galleries_dialog_controller_mock.cc',
1228         'browser/media_gallery/media_galleries_dialog_controller_mock.h',
1229         'browser/metrics/metrics_service_browsertest.cc',
1230         'browser/net/cookie_policy_browsertest.cc',
1231         'browser/net/ftp_browsertest.cc',
1232         'browser/net/load_timing_observer_browsertest.cc',
1233         'browser/net/predictor_browsertest.cc',
1234         'browser/net/proxy_browsertest.cc',
1235         'browser/net/websocket_browsertest.cc',
1236         'browser/notifications/message_center_notifications_browsertest.cc',
1237         'browser/page_cycler/page_cycler_browsertest.cc',
1238         'browser/performance_monitor/performance_monitor_browsertest.cc',
1239         'browser/policy/cloud_policy_browsertest.cc',
1240         'browser/policy/device_management_service_browsertest.cc',
1241         'browser/policy/device_status_collector_browsertest.cc',
1242         'browser/policy/policy_browsertest.cc',
1243         'browser/policy/policy_prefs_browsertest.cc',
1244         'browser/popup_blocker_browsertest.cc',
1245         'browser/prefs/pref_service_browsertest.cc',
1246         'browser/prerender/prefetch_browsertest.cc',
1247         'browser/prerender/prerender_browsertest.cc',
1248         'browser/printing/cloud_print/test/cloud_print_policy_browsertest.cc',
1249         'browser/printing/cloud_print/test/cloud_print_proxy_process_browsertest.cc',
1250         'browser/printing/print_preview_dialog_controller_browsertest.cc',
1251         'browser/printing/printing_layout_browsertest.cc',
1252         'browser/process_singleton_browsertest.cc',
1253         'browser/profiles/profile_browsertest.cc',
1254         'browser/profiles/profile_manager_browsertest.cc',
1255         'browser/referrer_policy_browsertest.cc',
1256         'browser/renderer_host/render_process_host_chrome_browsertest.cc',
1257         'browser/renderer_host/web_cache_manager_browsertest.cc',
1258         'browser/repost_form_warning_browsertest.cc',
1259         'browser/rlz/rlz_extension_apitest.cc',
1260         'browser/safe_browsing/local_safebrowsing_test_server.cc',
1261         'browser/safe_browsing/safe_browsing_blocking_page_test.cc',
1262         'browser/safe_browsing/safe_browsing_service_browsertest.cc',
1263         'browser/safe_browsing/safe_browsing_test.cc',
1264         'browser/service/service_process_control_browsertest.cc',
1265         'browser/sessions/better_session_restore_browsertest.cc',
1266         'browser/sessions/persistent_tab_restore_service_browsertest.cc',
1267         'browser/sessions/session_restore_browsertest.cc',
1268         'browser/sessions/tab_restore_browsertest.cc',
1269         'browser/speech/extension_api/tts_extension_apitest.cc',
1270         'browser/speech/speech_input_extension_apitest.cc',
1271         'browser/speech/speech_recognition_bubble_browsertest.cc',
1272         'browser/spellchecker/spellcheck_service_browsertest.cc',
1273         'browser/ssl/ssl_browser_tests.cc',
1274         'browser/ssl/ssl_client_certificate_selector_test.cc',
1275         'browser/ssl/ssl_client_certificate_selector_test.h',
1276         'browser/sync_file_system/mock_local_change_processor.cc',
1277         'browser/sync_file_system/mock_local_change_processor.h',
1278         'browser/sync_file_system/mock_remote_file_sync_service.cc',
1279         'browser/sync_file_system/mock_remote_file_sync_service.h',
1280         'browser/tab_contents/render_view_context_menu_browsertest.cc',
1281         'browser/tab_contents/render_view_context_menu_browsertest_util.cc',
1282         'browser/tab_contents/render_view_context_menu_browsertest_util.h',
1283         'browser/tab_contents/render_view_context_menu_test_util.cc',
1284         'browser/tab_contents/render_view_context_menu_test_util.h',
1285         'browser/tab_contents/spellchecker_submenu_observer_browsertest.cc',
1286         'browser/tab_contents/spelling_menu_observer_browsertest.cc',
1287         'browser/tab_contents/view_source_browsertest.cc',
1288         'browser/task_manager/task_manager_browsertest.cc',
1289         'browser/task_manager/task_manager_browsertest_util.cc',
1290         'browser/task_manager/task_manager_browsertest_util.h',
1291         'browser/task_manager/task_manager_notification_browsertest.cc',
1292         'browser/translate/translate_manager_browsertest.cc',
1293         'browser/ui/app_list/app_list_controller_browsertest.cc',
1294         'browser/ui/ash/caps_lock_delegate_chromeos_browsertest.cc',
1295         'browser/ui/ash/chrome_shell_delegate_browsertest.cc',
1296         'browser/ui/ash/launcher/chrome_launcher_controller_browsertest.cc',
1297         'browser/ui/ash/launcher/chrome_launcher_controller_per_app_browsertest.cc',
1298         'browser/ui/ash/launcher/launcher_favicon_loader_browsertest.cc',
1299         'browser/ui/ash/shelf_browsertest.cc',
1300         'browser/ui/ash/volume_controller_browsertest_chromeos.cc',
1301         'browser/ui/bookmarks/bookmark_browsertest.cc',
1302         'browser/ui/browser_browsertest.cc',
1303         'browser/ui/browser_close_browsertest.cc',
1304         'browser/ui/browser_command_controller_browsertest.cc',
1305         'browser/ui/browser_navigator_browsertest.cc',
1306         'browser/ui/browser_navigator_browsertest.h',
1307         'browser/ui/browser_navigator_browsertest_chromeos.cc',
1308         'browser/ui/cocoa/applescript/browsercrapplication+applescript_test.mm',
1309         'browser/ui/cocoa/applescript/window_applescript_test.mm',
1310         'browser/ui/cocoa/browser_window_cocoa_browsertest.mm',
1311         'browser/ui/cocoa/browser_window_controller_browsertest.mm',
1312         'browser/ui/cocoa/constrained_window/constrained_window_mac_browsertest.mm',
1313         'browser/ui/cocoa/content_settings/collected_cookies_mac_browsertest.mm',
1314         'browser/ui/cocoa/content_settings/content_setting_bubble_cocoa_unittest.mm',
1315         'browser/ui/cocoa/dev_tools_controller_browsertest.mm',
1316         'browser/ui/cocoa/extensions/extension_action_context_menu_browsertest.mm',
1317         'browser/ui/cocoa/extensions/extension_install_dialog_controller_browsertest.mm',
1318         'browser/ui/cocoa/extensions/extension_install_prompt_test_utils.h',
1319         'browser/ui/cocoa/extensions/extension_install_prompt_test_utils.mm',
1320         'browser/ui/cocoa/extensions/media_galleries_dialog_cocoa_browsertest.mm',
1321         'browser/ui/cocoa/find_bar/find_bar_browsertest.mm',
1322         'browser/ui/cocoa/location_bar/location_bar_view_mac_browsertest.mm',
1323         'browser/ui/cocoa/omnibox/omnibox_view_mac_browsertest.mm',
1324         'browser/ui/cocoa/one_click_signin_dialog_controller_browsertest.mm',
1325         'browser/ui/cocoa/ssl_client_certificate_selector_cocoa_browsertest.mm',
1326         'browser/ui/cocoa/tab_contents/previewable_contents_controller_browsertest.mm',
1327         'browser/ui/cocoa/view_id_util_browsertest.mm',
1328         'browser/ui/find_bar/find_bar_host_browsertest.cc',
1329         'browser/ui/fullscreen/fullscreen_controller_browsertest.cc',
1330         'browser/ui/global_error/global_error_service_browsertest.cc',
1331         'browser/ui/gtk/bubble/bubble_gtk_browsertest.cc',
1332         'browser/ui/gtk/confirm_bubble_gtk_browsertest.cc',
1333         'browser/ui/gtk/location_bar_view_gtk_browsertest.cc',
1334         'browser/ui/gtk/one_click_signin_bubble_gtk_browsertest.cc',
1335         'browser/ui/gtk/view_id_util_browsertest.cc',
1336         'browser/ui/intents/web_intent_picker_controller_browsertest.cc',
1337         'browser/ui/intents/web_intent_picker_delegate_mock.cc',
1338         'browser/ui/intents/web_intent_picker_delegate_mock.h',
1339         'browser/ui/login/login_prompt_browsertest.cc',
1340         'browser/ui/panels/panel_extension_browsertest.cc',
1341         'browser/ui/prefs/prefs_tab_helper_browsertest.cc',
1342         'browser/ui/startup/startup_browser_creator_browsertest.cc',
1343         'browser/ui/tab_modal_confirm_dialog_browsertest.cc',
1344         'browser/ui/tab_modal_confirm_dialog_browsertest.h',
1345         'browser/ui/views/avatar_menu_button_browsertest.cc',
1346         'browser/ui/views/browser_actions_container_browsertest.cc',
1347         'browser/ui/views/find_bar_controller_browsertest.cc',
1348         'browser/ui/views/frame/app_non_client_frame_view_ash_browsertest.cc',
1349         'browser/ui/views/frame/browser_non_client_frame_view_ash_browsertest.cc',
1350         'browser/ui/views/frame/browser_view_browsertest.cc',
1351         'browser/ui/views/immersive_mode_controller_browsertest.cc',
1352         'browser/ui/views/message_center/web_notification_tray_win_browsertest.cc',
1353         'browser/ui/views/select_file_dialog_extension_browsertest.cc',
1354         'browser/ui/views/sync/one_click_signin_bubble_view_browsertest.cc',
1355         'browser/ui/views/toolbar_view_browsertest.cc',
1356         'browser/ui/views/web_dialog_view_browsertest.cc',
1357         'browser/ui/webui/bidi_checker_web_ui_test.cc',
1358         'browser/ui/webui/bidi_checker_web_ui_test.h',
1359         'browser/ui/webui/bookmarks_ui_browsertest.cc',
1360         'browser/ui/webui/chrome_url_data_manager_browsertest.cc',
1361         'browser/ui/webui/constrained_web_dialog_ui_browsertest.cc',
1362         'browser/ui/webui/downloads_dom_handler_browsertest.cc',
1363         'browser/ui/webui/extensions/extension_settings_browsertest.js',
1364         'browser/ui/webui/help/help_browsertest.js',
1365         'browser/ui/webui/inspect_ui_browsertest.cc',
1366         'browser/ui/webui/net_internals/net_internals_ui_browsertest.cc',
1367         'browser/ui/webui/net_internals/net_internals_ui_browsertest.h',
1368         'browser/ui/webui/ntp/most_visited_browsertest.cc',
1369         'browser/ui/webui/ntp/new_tab_ui_browsertest.cc',
1370         'browser/ui/webui/options/autofill_options_browsertest.js',
1371         'browser/ui/webui/options/browser_options_browsertest.js',
1372         'browser/ui/webui/options/certificate_manager_browsertest.js',
1373         'browser/ui/webui/options/chromeos/guest_mode_options_ui_browsertest.cc',
1374         'browser/ui/webui/options/content_options_browsertest.js',
1375         'browser/ui/webui/options/content_settings_exception_area_browsertest.js',
1376         'browser/ui/webui/options/cookies_view_browsertest.js',
1377         'browser/ui/webui/options/edit_dictionary_browsertest.js',
1378         'browser/ui/webui/options/font_settings_browsertest.js',
1379         'browser/ui/webui/options/language_options_browsertest.js',
1380         'browser/ui/webui/options/language_options_dictionary_download_browsertest.js',
1381         'browser/ui/webui/options/options_browsertest.js',
1382         'browser/ui/webui/options/options_ui_browsertest.cc',
1383         'browser/ui/webui/options/options_ui_browsertest.h',
1384         'browser/ui/webui/options/password_manager_browsertest.js',
1385         'browser/ui/webui/options/preferences_browsertest.cc',
1386         'browser/ui/webui/options/preferences_browsertest.h',
1387         'browser/ui/webui/options/search_engine_manager_browsertest.js',
1388         'browser/ui/webui/options/settings_format_browsertest.js',
1389         'browser/ui/webui/policy_ui_browsertest.cc',
1390         'browser/ui/webui/print_preview/print_preview_ui_browsertest.cc',
1391         'browser/ui/webui/sync_setup_browsertest.js',
1392         'browser/ui/webui/web_ui_test_handler.cc',
1393         'browser/ui/webui/web_ui_test_handler.h',
1394         'browser/unload_browsertest.cc',
1395         'common/mac/mock_launchd.cc',
1396         'common/mac/mock_launchd.h',
1397         'common/time_format_browsertest.cc',
1398         'renderer/autofill/autofill_renderer_browsertest.cc',
1399         'renderer/autofill/form_autocomplete_browsertest.cc',
1400         'renderer/autofill/form_autofill_browsertest.cc',
1401         'renderer/autofill/password_autofill_manager_browsertest.cc',
1402         'renderer/autofill/password_generation_manager_browsertest.cc',
1403         'renderer/automation/automation_renderer_helper_browsertest.cc',
1404         'renderer/content_settings_observer_browsertest.cc',
1405         'renderer/page_click_tracker_browsertest.cc',
1406         'renderer/printing/print_web_view_helper_browsertest.cc',
1407         'renderer/safe_browsing/malware_dom_details_browsertest.cc',
1408         'renderer/safe_browsing/phishing_classifier_browsertest.cc',
1409         'renderer/safe_browsing/phishing_classifier_delegate_browsertest.cc',
1410         'renderer/safe_browsing/phishing_dom_feature_extractor_browsertest.cc',
1411         'renderer/safe_browsing/phishing_thumbnailer_browsertest.cc',
1412         'renderer/translate_helper_browsertest.cc',
1413         'test/base/chrome_render_view_test.cc',
1414         'test/base/chrome_render_view_test.h',
1415         'test/base/chrome_test_launcher.cc',
1416         'test/base/empty_browser_test.cc',
1417         'test/base/web_ui_browsertest.cc',
1418         'test/base/web_ui_browsertest.h',
1419         'test/data/chromeos/oobe_webui_browsertest.js',
1420         'test/base/in_process_browser_test_browsertest.cc',
1421         'test/base/tracing_browsertest.cc',
1422         'test/base/test_chrome_web_ui_controller_factory.cc',
1423         'test/base/test_chrome_web_ui_controller_factory.h',
1424         'test/base/test_chrome_web_ui_controller_factory_browsertest.cc',
1425         'test/data/webui/accessibility_audit_browsertest.js',
1426         'test/data/webui/assertions.js',
1427         'test/data/webui/async_gen.cc',
1428         'test/data/webui/async_gen.h',
1429         'test/data/webui/async_gen.js',
1430         'test/data/webui/certificate_viewer_dialog_test.js',
1431         'test/data/webui/certificate_viewer_ui_test-inl.h',
1432         'test/data/webui/chrome_send_browsertest.cc',
1433         'test/data/webui/chrome_send_browsertest.h',
1434         'test/data/webui/chrome_send_browsertest.js',
1435         'test/data/webui/history_browsertest.js',
1436         'test/data/webui/mock4js_browsertest.js',
1437         'test/data/webui/net_internals/bandwidth_view.js',
1438         'test/data/webui/net_internals/dns_view.js',
1439         'test/data/webui/net_internals/events_view.js',
1440         'test/data/webui/net_internals/hsts_view.js',
1441         'test/data/webui/net_internals/http_pipeline_view.js',
1442         'test/data/webui/net_internals/log_util.js',
1443         'test/data/webui/net_internals/log_view_painter.js',
1444         'test/data/webui/net_internals/main.js',
1445         'test/data/webui/net_internals/net_internals_test.js',
1446         'test/data/webui/net_internals/prerender_view.js',
1447         'test/data/webui/net_internals/test_view.js',
1448         'test/data/webui/net_internals/timeline_view.js',
1449         'test/data/webui/ntp4.js',
1450         'test/data/webui/ntp4_browsertest.cc',
1451         'test/data/webui/ntp4_browsertest.h',
1452         'test/data/webui/print_preview.cc',
1453         'test/data/webui/print_preview.h',
1454         'test/data/webui/print_preview.js',
1455         'test/data/webui/sandboxstatus_browsertest.js',
1456         'test/gpu/gpu_feature_browsertest.cc',
1457         'test/ppapi/ppapi_browsertest.cc',
1458         'test/security_tests/sandbox_browsertest.cc',
1459         # TODO(craig): Rename this and run from base_unittests when the test
1460         # is safe to run there. See http://crbug.com/78722 for details.
1461         '../base/files/file_path_watcher_browsertest.cc',
1462       ],
1463       'rules': [
1464         {
1465           'rule_name': 'js2webui',
1466           'extension': 'js',
1467           'msvs_external_rule': 1,
1468           'inputs': [
1469             '<(gypv8sh)',
1470             '<(PRODUCT_DIR)/v8_shell<(EXECUTABLE_SUFFIX)',
1471             '<(mock_js)',
1472             '<(accessibility_audit_js)',
1473             '<(test_api_js)',
1474             '<(js2gtest)',
1475           ],
1476           'outputs': [
1477             '<(INTERMEDIATE_DIR)/chrome/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT)-gen.cc',
1478             '<(PRODUCT_DIR)/test_data/chrome/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT).js',
1479           ],
1480           'process_outputs_as_sources': 1,
1481           'action': [
1482             'python',
1483             '<@(_inputs)',
1484             'webui',
1485             '<(RULE_INPUT_PATH)',
1486             'chrome/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT).js',
1487             '<@(_outputs)',
1488           ],
1489         },
1490       ],
1491       'conditions': [
1492         ['enable_one_click_signin==0', {
1493           'sources!': [
1494             'browser/ui/gtk/one_click_signin_bubble_gtk_browsertest.cc',
1495             'browser/ui/views/sync/one_click_signin_bubble_view_browsertest.cc',
1496           ]
1497         }],
1498         ['disable_nacl==0', {
1499           'sources':[
1500             'browser/extensions/extension_nacl_browsertest.cc',
1501             'browser/nacl_host/test/gdb_debug_stub_browsertest.cc',
1502           ],
1503           'conditions': [
1504             ['disable_nacl_untrusted==0', {
1505               'sources': [
1506                 'test/nacl/nacl_browsertest.cc',
1507                 'test/nacl/nacl_browsertest_uma.cc',
1508                 'test/nacl/nacl_browsertest_util.cc',
1509                 'test/nacl/nacl_browsertest_util.h',
1510               ],
1511               'dependencies': [
1512                 'test/data/nacl/nacl_test_data.gyp:*',
1513                 '../ppapi/native_client/native_client.gyp:nacl_irt',
1514                 '../ppapi/ppapi_untrusted.gyp:ppapi_nacl_tests',
1515               ],
1516             }],
1517             ['OS=="win" or OS=="linux"', {
1518               'sources': [
1519                 'browser/nacl_host/test/nacl_gdb_browsertest.cc',
1520               ],
1521               'dependencies': [
1522                 'browser/nacl_host/test/mock_nacl_gdb.gyp:mock_nacl_gdb',
1523               ],
1524             }],
1525             ['OS=="win"', {
1526               # TODO(halyavin) NaCl on Windows can't open debug stub socket
1527               # in browser process as needed by this test.
1528               # See http://crbug.com/157312.
1529               'sources!': [
1530                 'browser/nacl_host/test/gdb_debug_stub_browsertest.cc',
1531               ],
1532               'dependencies': [
1533                 'chrome.gyp:chrome_nacl_win64',
1534               ],
1535             }],
1536             ['chromeos==0', {
1537               'sources!': [
1538                 'test/data/chromeos/oobe_webui_browsertest.js',
1539               ],
1540             }],
1541           ],
1542         }],
1543         ['use_ash==1', {
1544           'dependencies': [
1545             '../ash/ash.gyp:ash_test_support',
1546           ],
1547         }],
1548         ['chromeos==0', {
1549           'sources/': [
1550             ['exclude', '^browser/chromeos'],
1551             ['exclude', '^browser/ui/webui/options/chromeos/'],
1552           ],
1553           'sources!': [
1554             'browser/extensions/api/rtc_private/rtc_private_apitest.cc',
1555             'browser/extensions/api/terminal/terminal_private_apitest.cc',
1556             'browser/policy/device_status_collector_browsertest.cc',
1557             'test/data/webui/certificate_viewer_dialog_test.js',
1558             'test/data/webui/certificate_viewer_ui_test-inl.h',
1559           ],
1560         }, { # chromeos==1
1561           'sources!': [
1562             'browser/printing/cloud_print/test/cloud_print_policy_browsertest.cc',
1563             'browser/printing/cloud_print/test/cloud_print_proxy_process_browsertest.cc',
1564             'browser/service/service_process_control_browsertest.cc',
1565             # chromeos does not use cross-platform panels
1566             'browser/ui/panels/panel_extension_browsertest.cc',
1567           ],
1568           'dependencies': [
1569             '../dbus/dbus.gyp:dbus_test_support',
1570             '../build/linux/system.gyp:dbus',
1571           ],
1572         }],
1573         ['file_manager_extension==0', {
1574           'sources!': [
1575             'browser/ui/views/select_file_dialog_extension_browsertest.cc',
1576           ],
1577         }],
1578         ['configuration_policy==0', {
1579           'sources/': [
1580             ['exclude', '^browser/policy/'],
1581           ],
1582           'sources!': [
1583             'browser/ui/webui/policy_ui_browsertest.cc',
1584           ],
1585         }],
1586         ['input_speech==0', {
1587           'sources/': [
1588             ['exclude', '^browser/speech/'],
1589             ['exclude', '^../content/browser/speech/'],
1590           ],
1591         }],
1592         ['safe_browsing==1', {
1593           'defines': [
1594             'FULL_SAFE_BROWSING',
1595           ],
1596         }],
1597         # TODO(sgurun) enable tests.
1598         ['safe_browsing==2', {
1599           'sources/': [
1600             ['exclude', '^browser/safe_browsing/'],
1601             ['exclude', '^renderer/safe_browsing/'],
1602           ],
1603         }],
1604         ['safe_browsing==0', {
1605           'sources/': [
1606             ['exclude', '^browser/safe_browsing/'],
1607             ['exclude', '^renderer/safe_browsing/'],
1608           ],
1609         }],
1610         ['enable_captive_portal_detection!=1', {
1611           'sources/': [
1612             ['exclude', '^browser/captive_portal/'],
1613           ],
1614         }],
1615         ['internal_pdf', {
1616           'dependencies': [
1617             '../pdf/pdf.gyp:pdf',
1618           ],
1619           'sources': [
1620             'browser/ui/pdf/pdf_browsertest.cc',
1621           ],
1622         }],
1623         ['OS!="linux" or toolkit_views==1', {
1624           'sources!': [
1625             'browser/ui/gtk/view_id_util_browsertest.cc',
1626           ],
1627         }],
1628         ['enable_rlz==0', {
1629           'sources!': [
1630             'browser/rlz/rlz_extension_apitest.cc',
1631           ],
1632         }],
1633         ['enable_webrtc==0', {
1634           'sources!': [
1635             'browser/media/chrome_webrtc_browsertest.cc',
1636           ],
1637         }],
1638         ['enable_web_intents==0', {
1639           'sources!': [
1640             'browser/intents/native_services_browsertest.cc',
1641             'browser/ui/intents/web_intent_picker_controller_browsertest.cc',
1642             'browser/ui/intents/web_intent_picker_delegate_mock.cc',
1643             'browser/ui/intents/web_intent_picker_delegate_mock.h',
1644           ],
1645         }],
1646         ['OS=="win"', {
1647           'sources': [
1648             '<(SHARED_INTERMEDIATE_DIR)/chrome/browser_resources.rc',
1649             '<(SHARED_INTERMEDIATE_DIR)/chrome/chrome_unscaled_resources.rc',
1650             '<(SHARED_INTERMEDIATE_DIR)/chrome/common_resources.rc',
1651             '<(SHARED_INTERMEDIATE_DIR)/chrome/extensions_api_resources.rc',
1652             '<(SHARED_INTERMEDIATE_DIR)/chrome_version/other_version.rc',
1653             '<(SHARED_INTERMEDIATE_DIR)/content/content_resources.rc',
1654             '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc',
1655             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.rc',
1656             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_unscaled_resources.rc',
1657           ],
1658           'include_dirs': [
1659             '<(DEPTH)/third_party/wtl/include',
1660           ],
1661           'dependencies': [
1662             'app_host',
1663             'browser_tests_exe_pdb_workaround',
1664             'chrome_version_resources',
1665             'security_tests',  # run time dependency
1666           ],
1667           'conditions': [
1668             ['win_use_allocator_shim==1', {
1669               'dependencies': [
1670                 '<(allocator_target)',
1671               ],
1672             }],
1673           ],
1674           'sources!': [
1675             # use_aura currently sets use_ash on Windows. So take these tests out
1676             # for win aura builds.
1677             # TODO: enable these for win_ash browser tests.
1678             'browser/chromeos/system/tray_accessibility_browsertest.cc',
1679             'browser/ui/ash/caps_lock_delegate_chromeos_browsertest.cc',
1680             'browser/ui/ash/chrome_shell_delegate_browsertest.cc',
1681             'browser/ui/ash/launcher/chrome_launcher_controller_per_app_browsertest.cc',
1682             'browser/ui/ash/launcher/chrome_launcher_controller_browsertest.cc',
1683             'browser/ui/ash/launcher/launcher_favicon_loader_browsertest.cc',
1684             'browser/ui/ash/shelf_browsertest.cc',
1685             'browser/ui/views/frame/app_non_client_frame_view_ash_browsertest.cc',
1686             'browser/ui/views/frame/browser_non_client_frame_view_ash_browsertest.cc',
1687           ],
1688         }, { # else: OS != "win"
1689           'sources!': [
1690             'app/chrome_command_ids.h',
1691             'app/chrome_dll.rc',
1692             'app/chrome_dll_resource.h',
1693             'app/chrome_version.rc.version',
1694             # TODO(port): http://crbug.com/45770
1695             'browser/printing/printing_layout_browsertest.cc',
1696             'browser/ui/views/message_center/web_notification_tray_win_browsertest.cc',
1697           ],
1698         }],
1699         ['toolkit_uses_gtk == 1', {
1700           'dependencies': [
1701             '../build/linux/system.gyp:gtk',
1702           ],
1703         }],
1704         ['toolkit_uses_gtk == 1 or chromeos==1 or (OS=="linux" and use_aura==1)', {
1705           'dependencies': [
1706             '../build/linux/system.gyp:ssl',
1707           ],
1708         }],
1709         ['OS=="mac"', {
1710           'include_dirs': [
1711             '../third_party/GTM',
1712           ],
1713           # TODO(mark): We really want this for all non-static library
1714           # targets, but when we tried to pull it up to the common.gypi
1715           # level, it broke other things like the ui, startup, and
1716           # page_cycler tests. *shrug*
1717           'xcode_settings': {
1718             'OTHER_LDFLAGS': [
1719               '-Wl,-ObjC',
1720             ],
1721           },
1722           # Other platforms only need
1723           # chrome_resources.gyp:{packed_extra_resources,packed_resources},
1724           # and can build this target standalone much faster.
1725           'dependencies': [
1726             'chrome'
1727           ],
1728           'sources': [
1729             'browser/spellchecker/spellcheck_message_filter_mac_browsertest.cc',
1730           ],
1731           'sources!': [
1732             # TODO(groby): This test depends on hunspell and we cannot run it on
1733             # Mac, which does not use hunspell by default.
1734             'browser/spellchecker/spellcheck_service_browsertest.cc',
1735             # TODO(rouslan): This test depends on the custom dictionary UI,
1736             # which is disabled on Mac.
1737             'browser/ui/webui/options/edit_dictionary_browsertest.js',
1738             # TODO(rouslan): This test depends on hunspell and we cannot run it
1739             # on Mac, which does use hunspell by default.
1740             'browser/ui/webui/options/language_options_dictionary_download_browsertest.js',
1741             # ProcessSingletonMac doesn't do anything.
1742             'browser/process_singleton_browsertest.cc',
1743             # This test depends on GetCommandLineForRelaunch, which is not
1744             # available on Mac.
1745             'browser/printing/cloud_print/test/cloud_print_policy_browsertest.cc',
1746           ],
1747         }],
1748         ['os_posix == 0 or chromeos == 1', {
1749           'sources!': [
1750             'common/time_format_browsertest.cc',
1751           ],
1752         }],
1753         ['os_posix == 1 and OS != "mac" and OS != "android"', {
1754           'conditions': [
1755             ['linux_use_tcmalloc==1', {
1756               'dependencies': [
1757                 '../base/allocator/allocator.gyp:allocator',
1758               ],
1759             }],
1760           ],
1761         }],
1762         ['toolkit_views==1', {
1763           'dependencies': [
1764             '../ui/views/views.gyp:views',
1765           ],
1766           'sources!': [
1767             # TODO(estade): port to views.
1768             'browser/ui/webui/constrained_web_dialog_ui_browsertest.cc',
1769           ],
1770         }, { # else: toolkit_views == 0
1771           'sources/': [
1772             ['exclude', '^../ui/views/'],
1773             ['exclude', '^browser/extensions/api/input/input_apitest.cc'],
1774             ['exclude', '^browser/ui/views/'],
1775           ],
1776         }],
1777         ['OS!="android" and OS!="ios"', {
1778           # npapi test plugin doesn't build on android or ios
1779           'dependencies': [
1780             # build time dependency.
1781             '../v8/tools/gyp/v8.gyp:v8_shell#host',
1782             '../webkit/webkit.gyp:copy_npapi_test_plugin',
1783           ],
1784         }],
1785         ['enable_app_list==0', {
1786           'sources/': [
1787             ['exclude', '^browser/ui/app_list/'],
1788           ],
1789         }],
1790         ['enable_message_center==0 or use_ash==1', {
1791           'sources!': [
1792             'browser/notifications/message_center_notifications_browsertest.cc',
1793             'browser/ui/views/message_center/web_notification_tray_win_browsertest.cc',
1794           ],
1795         }],
1796       ],  # conditions
1797     },  # target browser_tests
1798     {
1799       # Executable that runs each perf browser test in a new process.
1800       'target_name': 'performance_browser_tests',
1801       'type': 'executable',
1802       'msvs_cygwin_shell': 0,
1803       'msvs_cygwin_dirs': ['<(DEPTH)/third_party/cygwin'],
1804       'dependencies': [
1805         'browser',
1806         'chrome_resources.gyp:chrome_resources',
1807         'chrome_resources.gyp:chrome_strings',
1808         'chrome_resources.gyp:packed_extra_resources',
1809         'chrome_resources.gyp:packed_resources',
1810         'renderer',
1811         'test_support_common',
1812         '../base/base.gyp:base',
1813         '../base/base.gyp:base_i18n',
1814         '../base/base.gyp:test_support_base',
1815         '../net/net.gyp:net',
1816         '../net/net.gyp:net_test_support',
1817         '../skia/skia.gyp:skia',
1818         '../sync/sync.gyp:sync',
1819         '../testing/gmock.gyp:gmock',
1820         '../testing/gtest.gyp:gtest',
1821         '../third_party/cld/cld.gyp:cld',
1822         '../third_party/icu/icu.gyp:icui18n',
1823         '../third_party/icu/icu.gyp:icuuc',
1824         '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase',
1825         '../v8/tools/gyp/v8.gyp:v8',
1826         # Runtime dependencies
1827         '../third_party/mesa/mesa.gyp:osmesa',
1828       ],
1829       'include_dirs': [
1830         '..',
1831       ],
1832       'defines': [
1833         'HAS_OUT_OF_PROC_TEST_RUNNER',
1834       ],
1835       'sources': [
1836         'app/breakpad_mac_stubs.mm',
1837         'app/chrome_command_ids.h',
1838         'app/chrome_dll.rc',
1839         'app/chrome_dll_resource.h',
1840         'app/chrome_version.rc.version',
1841         'test/base/chrome_render_view_test.cc',
1842         'test/base/chrome_render_view_test.h',
1843         'test/base/chrome_test_launcher.cc',
1844         'test/perf/browser_perf_test.cc',
1845         'test/perf/browser_perf_test.h',
1846         'test/perf/rendering/latency_tests.cc',
1847         'test/perf/rendering/throughput_tests.cc',
1848       ],
1849       'rules': [
1850         {
1851           'rule_name': 'js2webui',
1852           'extension': 'js',
1853           'msvs_external_rule': 1,
1854           'inputs': [
1855             '<(gypv8sh)',
1856             '<(PRODUCT_DIR)/v8_shell<(EXECUTABLE_SUFFIX)',
1857             '<(mock_js)',
1858             '<(accessibility_audit_js)',
1859             '<(test_api_js)',
1860             '<(js2gtest)',
1861           ],
1862           'outputs': [
1863             '<(INTERMEDIATE_DIR)/chrome/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT)-gen.cc',
1864             '<(PRODUCT_DIR)/test_data/chrome/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT).js',
1865           ],
1866           'process_outputs_as_sources': 1,
1867           'action': [
1868             'python',
1869             '<@(_inputs)',
1870             'webui',
1871             '<(RULE_INPUT_PATH)',
1872             'chrome/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT).js',
1873             '<@(_outputs)',
1874           ],
1875         },
1876       ],
1877       'conditions': [
1878         ['OS=="win"', {
1879           'sources': [
1880             '<(SHARED_INTERMEDIATE_DIR)/chrome/browser_resources.rc',
1881             '<(SHARED_INTERMEDIATE_DIR)/chrome/chrome_unscaled_resources.rc',
1882             '<(SHARED_INTERMEDIATE_DIR)/chrome/common_resources.rc',
1883             '<(SHARED_INTERMEDIATE_DIR)/chrome/extensions_api_resources.rc',
1884             '<(SHARED_INTERMEDIATE_DIR)/chrome_version/other_version.rc',
1885             '<(SHARED_INTERMEDIATE_DIR)/content/content_resources.rc',
1886             '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc',
1887             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.rc',
1888             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_unscaled_resources.rc',
1889           ],
1890           'include_dirs': [
1891             '<(DEPTH)/third_party/wtl/include',
1892           ],
1893           'dependencies': [
1894             'chrome_version_resources',
1895           ],
1896           'conditions': [
1897             ['win_use_allocator_shim==1', {
1898               'dependencies': [
1899                 '<(allocator_target)',
1900               ],
1901             }],
1902           ],
1903           'configurations': {
1904             'Debug_Base': {
1905               'msvs_settings': {
1906                 'VCLinkerTool': {
1907                   'LinkIncremental': '<(msvs_debug_link_nonincremental)',
1908                 },
1909               },
1910             },
1911           }
1912         }, { # else: OS != "win"
1913           'sources!': [
1914             'app/chrome_command_ids.h',
1915             'app/chrome_dll.rc',
1916             'app/chrome_dll_resource.h',
1917             'app/chrome_version.rc.version',
1918           ],
1919         }],
1920         ['use_x11==1', {
1921           'dependencies': [
1922             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
1923           ],
1924         }],
1925         ['toolkit_uses_gtk == 1', {
1926           'dependencies': [
1927             '../build/linux/system.gyp:gtk',
1928           ],
1929         }],
1930         ['toolkit_uses_gtk == 1 or chromeos==1 or (OS=="linux" and use_aura==1)', {
1931           'dependencies': [
1932             '../build/linux/system.gyp:ssl',
1933           ],
1934         }],
1935         ['OS=="mac"', {
1936           'include_dirs': [
1937             '../third_party/GTM',
1938           ],
1939           # TODO(mark): We really want this for all non-static library
1940           # targets, but when we tried to pull it up to the common.gypi
1941           # level, it broke other things like the ui, startup, and
1942           # page_cycler tests. *shrug*
1943           'xcode_settings': {
1944             'OTHER_LDFLAGS': [
1945               '-Wl,-ObjC',
1946             ],
1947           },
1948           # Other platforms only need
1949           # chrome_resources.gyp:{packed_extra_resources,packed_resources},
1950           # and can build this target standalone much faster.
1951           'dependencies': [
1952             'chrome'
1953           ],
1954         }],
1955         ['os_posix == 1 and OS != "mac" and OS != "android"', {
1956           'conditions': [
1957             ['linux_use_tcmalloc==1', {
1958               'dependencies': [
1959                 '../base/allocator/allocator.gyp:allocator',
1960               ],
1961             }],
1962           ],
1963         }],
1964       ],  # conditions
1965     },  # target performance_browser_tests
1966     {
1967       # To run the tests from page_load_test.cc on Linux, we need to:
1968       #
1969       #   a) Build with Breakpad (GYP_DEFINES="linux_chromium_breakpad=1")
1970       #   b) Run with CHROME_HEADLESS=1 to generate crash dumps.
1971       #   c) Strip the binary if it's a debug build. (binary may be over 2GB)
1972       'target_name': 'reliability_tests',
1973       'type': 'executable',
1974       'dependencies': [
1975         'browser',
1976         'chrome',
1977         'chrome_resources.gyp:theme_resources',
1978         'test_support_common',
1979         'test_support_ui',
1980         '../skia/skia.gyp:skia',
1981         '../testing/gtest.gyp:gtest',
1982         '../third_party/WebKit/Source/WebKit/chromium/WebKit.gyp:webkit',
1983       ],
1984       'include_dirs': [
1985         '..',
1986       ],
1987       'sources': [
1988         'test/reliability/page_load_test.cc',
1989       ],
1990       'conditions': [
1991         ['OS=="win" and buildtype=="Official"', {
1992           'configurations': {
1993             'Release': {
1994               'msvs_settings': {
1995                 'VCCLCompilerTool': {
1996                   'WholeProgramOptimization': 'false',
1997                 },
1998               },
1999             },
2000           },
2001         },],
2002         ['OS=="win" and win_use_allocator_shim==1', {
2003           'dependencies': [
2004             '<(allocator_target)',
2005           ],
2006           'configurations': {
2007             'Debug': {
2008               'msvs_settings': {
2009                 'VCLinkerTool': {
2010                   'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
2011                 },
2012               },
2013             },
2014           },
2015         },],
2016         ['toolkit_uses_gtk == 1', {
2017           'dependencies': [
2018             '../build/linux/system.gyp:gtk',
2019           ],
2020         },],
2021       ],
2022     },
2023     {
2024       'target_name': 'performance_ui_tests',
2025       'type': 'executable',
2026       'dependencies': [
2027         'chrome',
2028         'chrome_resources.gyp:chrome_resources',
2029         'chrome_resources.gyp:chrome_strings',
2030         'debugger',
2031         'test_support_common',
2032         'test_support_ui',
2033         '../base/base.gyp:base',
2034         '../skia/skia.gyp:skia',
2035         '../testing/gtest.gyp:gtest',
2036       ],
2037       'sources': [
2038         # TODO(darin): Move other UIPerfTests here.
2039         'test/perf/dom_checker_uitest.cc',
2040         'test/perf/feature_startup_test.cc',
2041         'test/perf/frame_rate/frame_rate_tests.cc',
2042         'test/perf/indexeddb_uitest.cc',
2043         'test/perf/memory_test.cc',
2044         'test/perf/page_cycler_test.cc',
2045         'test/perf/shutdown_test.cc',
2046         'test/perf/startup_test.cc',
2047         'test/perf/tab_switching_test.cc',
2048         'test/perf/url_fetch_test.cc',
2049       ],
2050       'conditions': [
2051         ['OS=="win" and buildtype=="Official"', {
2052           'configurations': {
2053             'Release': {
2054               'msvs_settings': {
2055                 'VCCLCompilerTool': {
2056                   'WholeProgramOptimization': 'false',
2057                 },
2058               },
2059             },
2060           },
2061         }],
2062         ['OS=="win"', {
2063           'conditions': [
2064             ['win_use_allocator_shim==1', {
2065               'dependencies': [
2066                 '<(allocator_target)',
2067               ],
2068             }],
2069           ],
2070           'configurations': {
2071             'Debug_Base': {
2072               'msvs_settings': {
2073                 'VCLinkerTool': {
2074                   'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
2075                 },
2076               },
2077             },
2078           },
2079         }],
2080         ['OS=="mac"', {
2081           'sources': [
2082             'test/perf/mach_ports_test.cc',
2083           ],
2084         }],
2085         ['use_x11==1', {
2086           'dependencies': [
2087             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
2088           ],
2089         }],
2090         ['toolkit_uses_gtk == 1', {
2091           'dependencies': [
2092             '../build/linux/system.gyp:gtk',
2093           ],
2094         }],
2095         ['os_posix == 1 and OS != "mac" and OS != "android"', {
2096           'conditions': [
2097             ['linux_use_tcmalloc==1', {
2098               'dependencies': [
2099                 '../base/allocator/allocator.gyp:allocator',
2100               ],
2101             }],
2102           ],
2103         }],
2104         ['toolkit_views==1', {
2105           'dependencies': [
2106             '../ui/views/views.gyp:views',
2107           ],
2108         }],
2109       ],
2110     },
2111     {
2112       'target_name': 'sync_integration_tests',
2113       'type': 'executable',
2114       'dependencies': [
2115         'browser',
2116         'chrome',
2117         'chrome_resources.gyp:chrome_resources',
2118         'chrome_resources.gyp:chrome_strings',
2119         'chrome_resources.gyp:packed_extra_resources',
2120         'chrome_resources.gyp:packed_resources',
2121         'common',
2122         'common/extensions/api/api.gyp:api',
2123         'renderer',
2124         'test_support_common',
2125         '../net/net.gyp:net',
2126         '../printing/printing.gyp:printing',
2127         '../skia/skia.gyp:skia',
2128         '../sync/sync.gyp:sync',
2129         '../sync/sync.gyp:test_support_sync_testserver',
2130         '../testing/gmock.gyp:gmock',
2131         '../testing/gtest.gyp:gtest',
2132         '../third_party/icu/icu.gyp:icui18n',
2133         '../third_party/icu/icu.gyp:icuuc',
2134         '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase',
2135         '../third_party/npapi/npapi.gyp:npapi',
2136         '../third_party/WebKit/Source/WebKit/chromium/WebKit.gyp:webkit',
2137       ],
2138       'include_dirs': [
2139         '..',
2140         '<(INTERMEDIATE_DIR)',
2141         '<(protoc_out_dir)',
2142       ],
2143       # TODO(phajdan.jr): Only temporary, to make transition easier.
2144       'defines': [
2145         'HAS_OUT_OF_PROC_TEST_RUNNER',
2146       ],
2147       'sources': [
2148         'app/chrome_command_ids.h',
2149         'app/chrome_dll.rc',
2150         'app/chrome_dll_resource.h',
2151         'app/chrome_version.rc.version',
2152         'test/base/chrome_test_launcher.cc',
2153         'test/data/resource.rc',
2154         'browser/sync/test/integration/apps_helper.cc',
2155         'browser/sync/test/integration/apps_helper.h',
2156         'browser/sync/test/integration/autofill_helper.cc',
2157         'browser/sync/test/integration/autofill_helper.h',
2158         'browser/sync/test/integration/bookmarks_helper.cc',
2159         'browser/sync/test/integration/bookmarks_helper.h',
2160         'browser/sync/test/integration/cross_platform_sync_test.cc',
2161         'browser/sync/test/integration/dictionary_helper.cc',
2162         'browser/sync/test/integration/dictionary_helper.h',
2163         'browser/sync/test/integration/dictionary_load_observer.cc',
2164         'browser/sync/test/integration/dictionary_load_observer.h',
2165         'browser/sync/test/integration/enable_disable_test.cc',
2166         'browser/sync/test/integration/extension_settings_helper.cc',
2167         'browser/sync/test/integration/extension_settings_helper.h',
2168         'browser/sync/test/integration/extensions_helper.cc',
2169         'browser/sync/test/integration/extensions_helper.h',
2170         'browser/sync/test/integration/migration_errors_test.cc',
2171         'browser/sync/test/integration/multiple_client_bookmarks_sync_test.cc',
2172         'browser/sync/test/integration/multiple_client_dictionary_sync_test.cc',
2173         'browser/sync/test/integration/multiple_client_passwords_sync_test.cc',
2174         'browser/sync/test/integration/multiple_client_preferences_sync_test.cc',
2175         'browser/sync/test/integration/multiple_client_sessions_sync_test.cc',
2176         'browser/sync/test/integration/multiple_client_typed_urls_sync_test.cc',
2177         'browser/sync/test/integration/passwords_helper.cc',
2178         'browser/sync/test/integration/passwords_helper.h',
2179         'browser/sync/test/integration/preferences_helper.cc',
2180         'browser/sync/test/integration/preferences_helper.h',
2181         'browser/sync/test/integration/search_engines_helper.cc',
2182         'browser/sync/test/integration/search_engines_helper.h',
2183         'browser/sync/test/integration/sessions_helper.cc',
2184         'browser/sync/test/integration/sessions_helper.h',
2185         'browser/sync/test/integration/single_client_apps_sync_test.cc',
2186         'browser/sync/test/integration/single_client_bookmarks_sync_test.cc',
2187         'browser/sync/test/integration/single_client_dictionary_sync_test.cc',
2188         'browser/sync/test/integration/single_client_extensions_sync_test.cc',
2189         'browser/sync/test/integration/single_client_passwords_sync_test.cc',
2190         'browser/sync/test/integration/single_client_preferences_sync_test.cc',
2191         'browser/sync/test/integration/single_client_search_engines_sync_test.cc',
2192         'browser/sync/test/integration/single_client_sessions_sync_test.cc',
2193         'browser/sync/test/integration/single_client_themes_sync_test.cc',
2194         'browser/sync/test/integration/single_client_typed_urls_sync_test.cc',
2195         'browser/sync/test/integration/sync_app_helper.cc',
2196         'browser/sync/test/integration/sync_app_helper.h',
2197         'browser/sync/test/integration/sync_datatype_helper.cc',
2198         'browser/sync/test/integration/sync_datatype_helper.h',
2199         'browser/sync/test/integration/sync_errors_test.cc',
2200         'browser/sync/test/integration/sync_extension_helper.cc',
2201         'browser/sync/test/integration/sync_extension_helper.h',
2202         'browser/sync/test/integration/sync_test.cc',
2203         'browser/sync/test/integration/sync_test.h',
2204         'browser/sync/test/integration/themes_helper.cc',
2205         'browser/sync/test/integration/themes_helper.h',
2206         'browser/sync/test/integration/two_client_apps_sync_test.cc',
2207         'browser/sync/test/integration/two_client_autofill_sync_test.cc',
2208         'browser/sync/test/integration/two_client_bookmarks_sync_test.cc',
2209         'browser/sync/test/integration/two_client_dictionary_sync_test.cc',
2210         'browser/sync/test/integration/two_client_extension_settings_and_app_settings_sync_test.cc',
2211         'browser/sync/test/integration/two_client_extensions_sync_test.cc',
2212         'browser/sync/test/integration/two_client_passwords_sync_test.cc',
2213         'browser/sync/test/integration/two_client_preferences_sync_test.cc',
2214         'browser/sync/test/integration/two_client_search_engines_sync_test.cc',
2215         'browser/sync/test/integration/two_client_sessions_sync_test.cc',
2216         'browser/sync/test/integration/two_client_themes_sync_test.cc',
2217         'browser/sync/test/integration/two_client_typed_urls_sync_test.cc',
2218         'browser/sync/test/integration/typed_urls_helper.cc',
2219         'browser/sync/test/integration/typed_urls_helper.h',
2220       ],
2221       'conditions': [
2222         ['toolkit_uses_gtk == 1', {
2223            'dependencies': [
2224              '../build/linux/system.gyp:gtk',
2225            ],
2226         }],
2227         ['toolkit_uses_gtk == 1 or chromeos==1 or (OS=="linux" and use_aura==1)', {
2228           'dependencies': [
2229             '../build/linux/system.gyp:ssl',
2230           ],
2231         }],
2232         ['OS=="mac"', {
2233           # The sync_integration_tests do not run on mac without this flag.
2234           # Search for comments about "xcode_settings" elsewhere in this file.
2235           'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']},
2236         }],
2237         ['OS=="win"', {
2238           'sources': [
2239             '<(SHARED_INTERMEDIATE_DIR)/chrome/browser_resources.rc',
2240             '<(SHARED_INTERMEDIATE_DIR)/chrome/chrome_unscaled_resources.rc',
2241             '<(SHARED_INTERMEDIATE_DIR)/chrome/common_resources.rc',
2242             '<(SHARED_INTERMEDIATE_DIR)/chrome/extensions_api_resources.rc',
2243             '<(SHARED_INTERMEDIATE_DIR)/chrome_version/other_version.rc',
2244             '<(SHARED_INTERMEDIATE_DIR)/content/content_resources.rc',
2245             '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc',
2246             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.rc',
2247             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_unscaled_resources.rc',
2248           ],
2249           'include_dirs': [
2250             '<(DEPTH)/third_party/wtl/include',
2251           ],
2252           'dependencies': [
2253             'chrome_version_resources',
2254           ],
2255           'conditions': [
2256             ['win_use_allocator_shim==1', {
2257               'dependencies': [
2258                 '<(allocator_target)',
2259               ],
2260             }],
2261           ],
2262           'configurations': {
2263             'Debug': {
2264               'msvs_settings': {
2265                 'VCLinkerTool': {
2266                   'LinkIncremental': '<(msvs_debug_link_nonincremental)',
2267                 },
2268               },
2269             },
2270           },
2271         }, { # else: OS != "win"
2272           'sources!': [
2273             'app/chrome_dll.rc',
2274             'app/chrome_version.rc.version',
2275             'test/data/resource.rc',
2276           ],
2277         }],
2278         ['toolkit_views==1', {
2279           'dependencies': [
2280             '../ui/views/views.gyp:views',
2281           ],
2282         }],
2283       ],
2284     },
2285     {
2286       'target_name': 'sync_performance_tests',
2287       'type': 'executable',
2288       'dependencies': [
2289         'browser',
2290         'chrome',
2291         'common/extensions/api/api.gyp:api',
2292         'test_support_common',
2293         '../skia/skia.gyp:skia',
2294         '../sync/sync.gyp:sync',
2295         '../sync/sync.gyp:test_support_sync_testserver',
2296         '../testing/gmock.gyp:gmock',
2297         '../testing/gtest.gyp:gtest',
2298       ],
2299       'include_dirs': [
2300         '..',
2301         '<(INTERMEDIATE_DIR)',
2302         '<(protoc_out_dir)',
2303       ],
2304       'defines': [
2305         'HAS_OUT_OF_PROC_TEST_RUNNER',
2306       ],
2307       'sources': [
2308         'app/chrome_command_ids.h',
2309         'app/chrome_dll.rc',
2310         'app/chrome_dll_resource.h',
2311         'app/chrome_version.rc.version',
2312         'browser/sync/test/integration/autofill_helper.cc',
2313         'browser/sync/test/integration/autofill_helper.h',
2314         'browser/sync/test/integration/bookmarks_helper.cc',
2315         'browser/sync/test/integration/bookmarks_helper.h',
2316         'browser/sync/test/integration/dictionary_helper.cc',
2317         'browser/sync/test/integration/dictionary_helper.h',
2318         'browser/sync/test/integration/dictionary_load_observer.cc',
2319         'browser/sync/test/integration/dictionary_load_observer.h',
2320         'browser/sync/test/integration/extensions_helper.cc',
2321         'browser/sync/test/integration/extensions_helper.h',
2322         'browser/sync/test/integration/passwords_helper.cc',
2323         'browser/sync/test/integration/passwords_helper.h',
2324         'browser/sync/test/integration/performance/autofill_sync_perf_test.cc',
2325         'browser/sync/test/integration/performance/bookmarks_sync_perf_test.cc',
2326         'browser/sync/test/integration/performance/dictionary_sync_perf_test.cc',
2327         'browser/sync/test/integration/performance/extensions_sync_perf_test.cc',
2328         'browser/sync/test/integration/performance/sync_timing_helper.cc',
2329         'browser/sync/test/integration/performance/sync_timing_helper.h',
2330         'browser/sync/test/integration/performance/passwords_sync_perf_test.cc',
2331         'browser/sync/test/integration/performance/sessions_sync_perf_test.cc',
2332         'browser/sync/test/integration/performance/typed_urls_sync_perf_test.cc',
2333         'browser/sync/test/integration/sessions_helper.cc',
2334         'browser/sync/test/integration/sessions_helper.h',
2335         'browser/sync/test/integration/sync_datatype_helper.cc',
2336         'browser/sync/test/integration/sync_datatype_helper.h',
2337         'browser/sync/test/integration/sync_extension_helper.cc',
2338         'browser/sync/test/integration/sync_extension_helper.h',
2339         'browser/sync/test/integration/sync_test.cc',
2340         'browser/sync/test/integration/sync_test.h',
2341         'browser/sync/test/integration/typed_urls_helper.cc',
2342         'browser/sync/test/integration/typed_urls_helper.h',
2343         'test/base/chrome_test_launcher.cc',
2344         'test/data/resource.rc',
2345       ],
2346       'conditions': [
2347         ['toolkit_uses_gtk == 1', {
2348            'dependencies': [
2349              '../build/linux/system.gyp:gtk',
2350            ],
2351         }],
2352         ['toolkit_uses_gtk == 1 or chromeos==1 or (OS=="linux" and use_aura==1)', {
2353           'dependencies': [
2354             '../build/linux/system.gyp:ssl',
2355           ],
2356         }],
2357         ['OS=="mac"', {
2358           # The sync_performance_tests do not run on mac without this flag.
2359           # Search for comments about "xcode_settings" elsewhere in this file.
2360           'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']},
2361         }],
2362         ['OS=="win"', {
2363           'sources': [
2364             '<(SHARED_INTERMEDIATE_DIR)/chrome/browser_resources.rc',
2365             '<(SHARED_INTERMEDIATE_DIR)/chrome/chrome_unscaled_resources.rc',
2366             '<(SHARED_INTERMEDIATE_DIR)/chrome/common_resources.rc',
2367             '<(SHARED_INTERMEDIATE_DIR)/chrome/extensions_api_resources.rc',
2368             '<(SHARED_INTERMEDIATE_DIR)/chrome_version/other_version.rc',
2369           ],
2370           'include_dirs': [
2371             '<(DEPTH)/third_party/wtl/include',
2372           ],
2373           'dependencies': [
2374             'chrome_version_resources',
2375           ],
2376           'conditions': [
2377             ['win_use_allocator_shim==1', {
2378               'dependencies': [
2379                 '<(allocator_target)',
2380               ],
2381             }],
2382           ],
2383           'configurations': {
2384             'Debug': {
2385               'msvs_settings': {
2386                 'VCLinkerTool': {
2387                   'LinkIncremental': '<(msvs_debug_link_nonincremental)',
2388                 },
2389               },
2390             },
2391           },
2392         }, { # else: OS != "win"
2393           'sources!': [
2394             'app/chrome_dll.rc',
2395             'app/chrome_version.rc.version',
2396             'test/data/resource.rc',
2397           ],
2398         }],
2399         ['toolkit_views==1', {
2400           'dependencies': [
2401             '../ui/views/views.gyp:views',
2402           ],
2403         }],
2404       ],
2405     },
2406     {
2407       # Executable that contains all the tests to be run on the GPU bots.
2408       'target_name': 'gpu_tests',
2409       'type': 'executable',
2410       'dependencies': [
2411         # Runtime dependencies
2412         '../third_party/mesa/mesa.gyp:osmesa',
2413       ],
2414       'includes': [
2415         'test/gpu/test_support_gpu.gypi'
2416       ],
2417       'sources': [
2418         'test/gpu/gpu_feature_browsertest.cc',
2419         'test/gpu/webgl_infobar_browsertest.cc',
2420       ],
2421     },
2422     {
2423       # Executable that contains a subset of the gpu tests which are run with a
2424       # software rasterizer.
2425       'target_name': 'soft_gpu_tests',
2426       'type': 'executable',
2427       'includes': [
2428         'test/gpu/test_support_gpu.gypi'
2429       ],
2430       'sources': [
2431         'test/gpu/gpu_pixel_browsertest.cc',
2432       ],
2433     },
2434   ],
2435   'conditions': [
2436     ['OS=="mac"', {
2437       'targets': [
2438         {
2439           # This is the mac equivalent of the security_tests target below. It
2440           # generates a framework bundle which bundles tests to be run in a
2441           # renderer process. The test code is built as a framework so it can be
2442           # run in the context of a renderer without shipping the code to end
2443           # users.
2444           'target_name': 'renderer_sandbox_tests',
2445           'type': 'shared_library',
2446           'product_name': 'Renderer Sandbox Tests',
2447           'mac_bundle': 1,
2448           'xcode_settings': {
2449             'INFOPLIST_FILE': 'test/security_tests/sandbox_tests_mac-Info.plist',
2450           },
2451           'sources': [
2452             'test/security_tests/renderer_sandbox_tests_mac.mm',
2453           ],
2454           'include_dirs': [
2455             '..',
2456           ],
2457           'link_settings': {
2458             'libraries': [
2459               '$(SDKROOT)/System/Library/Frameworks/Cocoa.framework',
2460             ],
2461           },
2462         },  # target renderer_sandbox_tests
2463         {
2464           # Tests for Mac app launcher.
2465           'target_name': 'app_mode_app_tests',
2466           'type': 'executable',
2467           'product_name': 'app_mode_app_tests',
2468           'dependencies': [
2469             '../base/base.gyp:test_support_base',
2470             '../chrome/common_constants.gyp:common_constants',
2471             '../testing/gtest.gyp:gtest',
2472             'chrome.gyp:chrome',  # run time dependency
2473             'app_mode_app_support',
2474           ],
2475           'sources': [
2476             'common/mac/app_mode_chrome_locator_unittest.mm',
2477             'test/base/app_mode_app_tests.cc',
2478           ],
2479           'include_dirs': [
2480             '..',
2481           ],
2482           'link_settings': {
2483             'libraries': [
2484               '$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework',
2485               '$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
2486             ],
2487           },
2488         },  # target app_mode_app_tests
2489       ],
2490     }],
2491     ['OS!="mac"', {
2492       'targets': [
2493         {
2494           'target_name': 'perf_tests',
2495           'type': 'executable',
2496           'include_dirs': [
2497             '<(SHARED_INTERMEDIATE_DIR)',  # Needed by key_systems.cc.
2498           ],
2499           'dependencies': [
2500             'browser',
2501             'chrome_resources.gyp:chrome_resources',
2502             'chrome_resources.gyp:chrome_strings',
2503             'common',
2504             'renderer',
2505             '../content/content.gyp:content_gpu',
2506             '../content/content.gyp:test_support_content',
2507             '../base/base.gyp:base',
2508             '../base/base.gyp:test_support_base',
2509             '../base/base.gyp:test_support_perf',
2510             '../skia/skia.gyp:skia',
2511             '../testing/gtest.gyp:gtest',
2512             '../webkit/support/webkit_support.gyp:glue',
2513             '../third_party/widevine/cdm/widevine_cdm.gyp:widevine_cdm_version_h',
2514           ],
2515           'sources': [
2516             'browser/net/sqlite_persistent_cookie_store_perftest.cc',
2517             'common/json_value_serializer_perftest.cc',
2518             'test/perf/perftests.cc',
2519             'test/perf/url_parse_perftest.cc',
2521             # TODO(boliu): Move this to a separate components_perftest target
2522             # under components/.
2523             '../components/visitedlink/test/visitedlink_perftest.cc',
2524           ],
2525           'conditions': [
2526             ['use_x11==1', {
2527               'dependencies': [
2528                 '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
2529               ],
2530             }],
2531             ['toolkit_uses_gtk == 1', {
2532               'dependencies': [
2533                 '../build/linux/system.gyp:gtk',
2534               ],
2535             }],
2536             ['OS=="win"', {
2537               'configurations': {
2538                 'Debug_Base': {
2539                   'msvs_settings': {
2540                     'VCLinkerTool': {
2541                       'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
2542                     },
2543                   },
2544                 },
2545               },
2546               'conditions': [
2547                 ['win_use_allocator_shim==1', {
2548                   'dependencies': [
2549                     '<(allocator_target)',
2550                   ],
2551                 }],
2552               ],
2553             }],
2554             ['toolkit_views==1', {
2555               'dependencies': [
2556                 '../ui/views/views.gyp:views',
2557               ],
2558             }],
2559             ['os_posix == 1 and OS != "mac" and OS != "android"', {
2560               'conditions': [
2561                 ['linux_use_tcmalloc==1', {
2562                   'dependencies': [
2563                     '../base/allocator/allocator.gyp:allocator',
2564                   ],
2565                 }],
2566               ],
2567             }],
2568           ],
2569         },
2570       ],
2571     },],  # OS!="mac"
2572     ['OS=="win"', {
2573       'targets': [
2574         {
2575           'target_name': 'security_tests',
2576           'type': 'shared_library',
2577           'include_dirs': [
2578             '..',
2579           ],
2580           'sources': [
2581             'test/security_tests/ipc_security_tests.cc',
2582             'test/security_tests/ipc_security_tests.h',
2583             'test/security_tests/security_tests.cc',
2584             '../sandbox/win/tests/validation_tests/commands.cc',
2585             '../sandbox/win/tests/validation_tests/commands.h',
2586           ],
2587         },
2588       ]},  # 'targets'
2589     ],  # OS=="win"
2590     ['OS=="linux" or OS=="win"', {
2591       'targets': [
2592         {
2593           'target_name': 'generate_profile',
2594           'type': 'executable',
2595           'dependencies': [
2596             'test_support_common',
2597             'browser',
2598             'renderer',
2599             'chrome_resources.gyp:packed_resources',
2600             '../base/base.gyp:base',
2601             '../net/net.gyp:net_test_support',
2602             '../skia/skia.gyp:skia',
2603             '../sync/sync.gyp:sync',
2604           ],
2605           'include_dirs': [
2606             '..',
2607           ],
2608           'sources': [
2609             'tools/profiles/generate_profile.cc',
2610             'tools/profiles/thumbnail-inl.h',
2611           ],
2612           'conditions': [
2613             ['OS=="win"', {
2614               'conditions': [
2615                 ['win_use_allocator_shim==1', {
2616                   'dependencies': [
2617                     '<(allocator_target)',
2618                   ],
2619                 }],
2620               ],
2621               'configurations': {
2622                 'Debug_Base': {
2623                   'msvs_settings': {
2624                     'VCLinkerTool': {
2625                       'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
2626                     },
2627                   },
2628                 },
2629               },
2630             }],
2631           ],
2632         },
2633       ]},  # 'targets'
2634     ],
2635     # If you change this condition, make sure you also change it in all.gyp
2636     # for the chromium_builder_qa target.
2637     ['enable_automation==1 and (OS=="mac" or OS=="win" or (os_posix==1 and target_arch==python_arch))', {
2638       'targets': [
2639         {
2640           # Documentation: http://dev.chromium.org/developers/testing/pyauto
2641           'target_name': 'pyautolib',
2642           'type': 'loadable_module',
2643           'product_prefix': '_',
2644           'dependencies': [
2645             'chrome',
2646             'chrome_resources.gyp:chrome_resources',
2647             'chrome_resources.gyp:chrome_strings',
2648             'chrome_resources.gyp:theme_resources',
2649             'debugger',
2650             'test_support_common',
2651             '../skia/skia.gyp:skia',
2652             '../sync/sync.gyp:sync',
2653             '../testing/gtest.gyp:gtest',
2654           ],
2655           'export_dependent_settings': [
2656             'test_support_common',
2657           ],
2658           'include_dirs': [
2659             '..',
2660           ],
2661           'cflags': [
2662              '-Wno-uninitialized',
2663              '-Wno-self-assign',  # to keep clang happy for generated code.
2664           ],
2665           'sources': [
2666             'test/automation/proxy_launcher.cc',
2667             'test/automation/proxy_launcher.h',
2668             'test/pyautolib/pyautolib.cc',
2669             'test/pyautolib/pyautolib.h',
2670             'test/ui/ui_test.cc',
2671             'test/ui/ui_test.h',
2672             'test/ui/ui_test_suite.cc',
2673             'test/ui/ui_test_suite.h',
2674             '<(INTERMEDIATE_DIR)/pyautolib_wrap.cc',
2675             '<@(pyautolib_sources)',
2676           ],
2677           'xcode_settings': {
2678             # Link with python2.6. Using -L/usr/lib and -lpython2.6 does not
2679             # work with the -isysroot argument passed in. Even if it did,
2680             # the linker shouldn't use any other lib not in the 10.5 sdk.
2681             'OTHER_LDFLAGS': [
2682               '/usr/lib/libpython2.6.dylib'
2683             ],
2684           },
2685           'msvs_disabled_warnings': [4211],
2686           'conditions': [
2687             # Disable the type profiler. _POSIX_C_SOURCE and _XOPEN_SOURCE
2688             # conflict between <Python.h> and <typeinfo>.
2689             ['OS=="linux" and clang_type_profiler==1', {
2690               'cflags_cc!': [
2691                 '-fintercept-allocation-functions',
2692               ],
2693             }],
2694             ['os_posix == 1 and OS!="mac"', {
2695               'include_dirs': [
2696                 '..',
2697                 '<(sysroot)/usr/include/python<(python_ver)',
2698               ],
2699               'link_settings': {
2700                 'libraries': [
2701                   '-lpython<(python_ver)',
2702                 ],
2703               },
2704             }],
2705             ['toolkit_uses_gtk == 1', {
2706               'dependencies': [
2707                 '../build/linux/system.gyp:gtk',
2708               ],
2709             }],
2710             ['OS=="mac"', {
2711               'include_dirs': [
2712                 '..',
2713                 '/usr/include/python2.6',
2714               ],
2715             }],
2716             ['OS=="win"', {
2717               'product_extension': 'pyd',
2718               'include_dirs': [
2719                 '..',
2720                 '../third_party/python_26/include',
2721               ],
2722               'msvs_settings': {
2723                 'VCLinkerTool': {
2724                   'AdditionalLibraryDirectories': [
2725                     '<(DEPTH)/third_party/python_26/libs',
2726                   ],
2727                   'AdditionalDependencies': [
2728                     'python26.lib',
2729                   ],
2730                 },
2731               }
2732             }],
2733             ['clang == 1', {
2734               'xcode_settings': {
2735                 'WARNING_CFLAGS': [
2736                   # swig creates code with self assignments.
2737                   '-Wno-self-assign',
2738                 ],
2739               },
2740               'cflags': [
2741                 '-Wno-self-assign',
2742               ],
2743             }],
2744             ['asan==1', {
2745               'cflags!': [ '-fsanitize=address' ],
2746               'xcode_settings': { 'OTHER_CFLAGS!': [ '-fsanitize=address' ] },
2747             }],
2748           ],
2749           'actions': [
2750             {
2751               'variables' : {
2752                 'swig_args': [ '-I..',
2753                                '-python',
2754                                '-c++',
2755                                '-threads',
2756                                '-outdir',
2757                                '<(PRODUCT_DIR)',
2758                                '-o',
2759                                '<(INTERMEDIATE_DIR)/pyautolib_wrap.cc',
2760                 ],
2761                 'conditions': [
2762                   ['chromeos==1', {
2763                     'swig_args': [
2764                       '-DOS_CHROMEOS',
2765                     ]
2766                   }],
2767                 ],
2768               },
2769               'action_name': 'pyautolib_swig',
2770               'inputs': [
2771                 'test/pyautolib/argc_argv.i',
2772                 'test/pyautolib/pyautolib.i',
2773                 '<@(pyautolib_sources)',
2774               ],
2775               'outputs': [
2776                 '<(INTERMEDIATE_DIR)/pyautolib_wrap.cc',
2777                 '<(PRODUCT_DIR)/pyautolib.py',
2778               ],
2779               'action': [ 'python',
2780                           '../tools/swig/swig.py',
2781                           '<@(swig_args)',
2782                           'test/pyautolib/pyautolib.i',
2783               ],
2784               'message': 'Generating swig wrappers for pyautolib.',
2785               'msvs_cygwin_shell': 1,
2786             },
2787           ],  # actions
2788         },  # target 'pyautolib'
2789         {
2790           # Required for WebRTC PyAuto tests.
2791           'target_name': 'webrtc_test_tools',
2792           'type': 'none',
2793           'dependencies': [
2794             'pyautolib',
2795             '../third_party/libjingle/libjingle.gyp:peerconnection_server',
2796             '../third_party/webrtc/tools/tools.gyp:frame_analyzer',
2797             '../third_party/webrtc/tools/tools.gyp:rgba_to_i420_converter',
2798           ],
2799         },  # target 'webrtc_test_tools'
2800       ]  # targets
2801     }],
2802     # To enable the coverage targets, do
2803     #    GYP_DEFINES='coverage=1' gclient sync
2804     # To match the coverage buildbot more closely, do this:
2805     #    GYP_DEFINES='coverage=1 enable_svg=0 fastbuild=1' gclient sync
2806     # (and, on MacOS, be sure to switch your SDK from "Base SDK" to "Mac OS X
2807     # 10.6")
2808     # (but on Windows, don't set the fastbuild=1 because it removes the PDB
2809     # generation which is necessary for code coverage.)
2810     ['coverage!=0',
2811       { 'targets': [
2812         {
2813           ### Coverage BUILD AND RUN.
2814           ### Not named coverage_build_and_run for historical reasons.
2815           'target_name': 'coverage',
2816           'dependencies': [ 'coverage_build', 'coverage_run' ],
2817           # do NOT place this in the 'all' list; most won't want it.
2818           # In gyp, booleans are 0/1 not True/False.
2819           'suppress_wildcard': 1,
2820           'type': 'none',
2821           'actions': [
2822             {
2823               'message': 'Coverage is now complete.',
2824               # MSVS must have an input file and an output file.
2825               'inputs': [ '<(PRODUCT_DIR)/coverage.info' ],
2826               'outputs': [ '<(PRODUCT_DIR)/coverage-build-and-run.stamp' ],
2827               'action_name': 'coverage',
2828               # Wish gyp had some basic builtin commands (e.g. 'touch').
2829               'action': [ 'python', '-c',
2830                           'import os; ' \
2831                           'open(' \
2832                           '\'<(PRODUCT_DIR)\' + os.path.sep + ' \
2833                           '\'coverage-build-and-run.stamp\'' \
2834                           ', \'w\').close()' ],
2835               # Use outputs of this action as inputs for the main target build.
2836               # Seems as a misnomer but makes this happy on Linux (scons).
2837               'process_outputs_as_sources': 1,
2838             },
2839           ],  # 'actions'
2840         },
2841         ### Coverage BUILD.  Compile only; does not run the bundles.
2842         ### Intended as the build phase for our coverage bots.
2843         ###
2844         ### Builds unit test bundles needed for coverage.
2845         ### Outputs this list of bundles into coverage_bundles.py.
2846         ###
2847         ### If you want to both build and run coverage from your IDE,
2848         ### use the 'coverage' target.
2849         {
2850           'target_name': 'coverage_build',
2851           # do NOT place this in the 'all' list; most won't want it.
2852           # In gyp, booleans are 0/1 not True/False.
2853           'suppress_wildcard': 1,
2854           'type': 'none',
2855           'dependencies': [
2856             'automated_ui_tests',
2857             '../base/base.gyp:base_unittests',
2858             # browser_tests's use of subprocesses chokes gcov on 10.6?
2859             # Disabling for now (enabled on linux/windows below).
2860             # 'browser_tests',
2861             '../ipc/ipc.gyp:ipc_tests',
2862             '../media/media.gyp:media_unittests',
2863             '../net/net.gyp:net_unittests',
2864             '../printing/printing.gyp:printing_unittests',
2865             '../remoting/remoting.gyp:remoting_unittests',
2866             '../sql/sql.gyp:sql_unittests',
2867             '../content/content.gyp:content_unittests',
2868             'unit_tests',
2869             '../sync/sync.gyp:sync_unit_tests',
2870           ],  # 'dependencies'
2871           'conditions': [
2872             ['OS=="win"', {
2873               'dependencies': [
2874                 # Courgette has not been ported from Windows.
2875                 # Note build/win/chrome_win.croc uniquely has the
2876                 # courgette source directory in an include path.
2877                 '../courgette/courgette.gyp:courgette_unittests',
2878                 'browser_tests',
2879                 ]}],
2880             ['OS=="linux"', {
2881               'dependencies': [
2882                 # Win bot needs to be turned into an interactive bot.
2883                 'interactive_ui_tests',
2884                 # Disabled from running in coverage_posix.py.
2885                 # We need to build this during compile step, so enabling here.
2886                 'browser_tests',
2887                 '../courgette/courgette.gyp:courgette_unittests',
2888                 '../crypto/crypto.gyp:crypto_unittests',
2889                 'chromedriver_unittests',
2890                 '../build/temp_gyp/googleurl.gyp:googleurl_unittests',
2891                 'gpu_tests',
2892                 '../jingle/jingle.gyp:jingle_unittests',
2893                 '../net/net.gyp:net_perftests',
2894                 'performance_ui_tests',
2895                 'reliability_tests',
2896                 'sync_integration_tests',
2897                 '../third_party/WebKit/Source/WebKit/chromium/WebKitUnitTests.gyp:webkit_unit_tests',
2898                 'pyautolib',
2899                 '../content/content.gyp:content_browsertests',
2900               ]}],
2901             ['OS=="mac"', {
2902               'dependencies': [
2903               # Placeholder; empty for now.
2904               ]}],
2905           ],  # 'conditions'
2906           'actions': [
2907             {
2908               # 'message' for Linux/scons in particular.  Scons
2909               # requires the 'coverage' target be run from within
2910               # src/chrome.
2911               'message': 'Compiling coverage bundles.',
2912               # MSVS must have an input file and an output file.
2913               #
2914               # TODO(jrg):
2915               # Technically I want inputs to be the list of
2916               # executables created in <@(_dependencies) but use of
2917               # that variable lists the dep by dep name, not their
2918               # output executable name.
2919               # Is there a better way to force this action to run, always?
2920               #
2921               # If a test bundle is added to this coverage_build target it
2922               # necessarily means this file (chrome_tests.gypi) is changed,
2923               # so the action is run (coverage_bundles.py is generated).
2924               # Exceptions to that rule are theoretically possible
2925               # (e.g. re-gyp with a GYP_DEFINES set).
2926               # Else it's the same list of bundles as last time.  They are
2927               # built (since on the deps list) but the action may not run.
2928               # For now, things work, but it's less than ideal.
2929               'inputs': [ 'chrome_tests.gypi' ],
2930               'outputs': [ '<(PRODUCT_DIR)/coverage_bundles.py' ],
2931               'action_name': 'coverage_build',
2932               'action': [ 'python', '-c',
2933                           'import os; '
2934                           'f = open(' \
2935                           '\'<(PRODUCT_DIR)\' + os.path.sep + ' \
2936                           '\'coverage_bundles.py\'' \
2937                           ', \'w\'); ' \
2938                           'deplist = \'' \
2939                           '<@(_dependencies)' \
2940                           '\'.split(\' \'); ' \
2941                           'f.write(str(deplist)); ' \
2942                           'f.close()'],
2943               # Use outputs of this action as inputs for the main target build.
2944               # Seems as a misnomer but makes this happy on Linux (scons).
2945               'process_outputs_as_sources': 1,
2946             },
2947           ],  # 'actions'
2948         },
2949         ### Coverage RUN.  Does not compile the bundles.  Mirrors the
2950         ### run_coverage_bundles buildbot phase.  If you update this
2951         ### command update the mirror in
2952         ### $BUILDBOT/scripts/master/factory/chromium_commands.py.
2953         ### If you want both build and run, use the 'coverage' target.
2954         {
2955           'target_name': 'coverage_run',
2956           # do NOT place this in the 'all' list; most won't want it.
2957           # In gyp, booleans are 0/1 not True/False.
2958           'suppress_wildcard': 1,
2959           'type': 'none',
2960           'actions': [
2961             {
2962               # 'message' for Linux/scons in particular.  Scons
2963               # requires the 'coverage' target be run from within
2964               # src/chrome.
2965               'message': 'Running the coverage script.  NOT building anything.',
2966               # MSVS must have an input file and an output file.
2967               'inputs': [ '<(PRODUCT_DIR)/coverage_bundles.py' ],
2968               'outputs': [ '<(PRODUCT_DIR)/coverage.info' ],
2969               'action_name': 'coverage_run',
2970               'action': [ 'python',
2971                           '../tools/code_coverage/coverage_posix.py',
2972                           '--directory',
2973                           '<(PRODUCT_DIR)',
2974                           '--src_root',
2975                           '..',
2976                           '--bundles',
2977                           '<(PRODUCT_DIR)/coverage_bundles.py'],
2978               # Use outputs of this action as inputs for the main target build.
2979               # Seems as a misnomer but makes this happy on Linux (scons).
2980               'process_outputs_as_sources': 1,
2981             },
2982           ],  # 'actions'
2983         },
2984       ]
2985     }],  # 'coverage!=0'
2986     ['OS == "android"', {
2987       'targets': [
2988         {
2989           'target_name': 'chromium_testshell_test_apk',
2990           'type': 'none',
2991           'dependencies': [
2992             'chrome_java',
2993             'chromium_testshell_java',
2994             '../base/base.gyp:base',
2995             '../base/base.gyp:base_java_test_support',
2996             '../content/content.gyp:content_java_test_support',
2997             '../sync/sync.gyp:sync_javatests',
2998             '../tools/android/forwarder/forwarder.gyp:forwarder',
2999           ],
3000           'variables': {
3001             'package_name': 'chromium_testshell_test',
3002             'apk_name': 'ChromiumTestShellTest',
3003             'java_in_dir': './android/testshell/javatests',
3004             'resource_dir': '../res',
3005             'additional_src_dirs': ['android/javatests/src'],
3006             'is_test_apk': 1,
3007           },
3008           'includes': [ '../build/java_apk.gypi' ],
3009         },
3010       ],
3011     }],
3012     ['test_isolation_mode != "noop"', {
3013       'targets': [
3014         {
3015           'target_name': 'browser_tests_run',
3016           'type': 'none',
3017           'dependencies': [
3018             'browser_tests',
3019             'chrome',
3020             '../webkit/webkit.gyp:pull_in_DumpRenderTree',
3021           ],
3022           'includes': [
3023             '../build/isolate.gypi',
3024             'browser_tests.isolate',
3025           ],
3026           'sources': [
3027             'browser_tests.isolate',
3028           ],
3029         },
3030         {
3031           'target_name': 'sync_integration_tests_run',
3032           'type': 'none',
3033           'dependencies': [
3034             'sync_integration_tests',
3035           ],
3036           'conditions': [
3037             ['use_x11 == 1', {
3038               'dependencies': [
3039                 '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
3040               ],
3041             }],
3042           ],
3043           'includes': [
3044             '../build/isolate.gypi',
3045             'sync_integration_tests.isolate',
3046           ],
3047           'sources': [
3048             'sync_integration_tests.isolate',
3049           ],
3050         },
3051       ],
3052     }],
3053     ['OS=="win"', {
3054       'targets' : [
3055         {
3056           # This target is only depended upon in Windows.
3057           'target_name': 'automated_ui_tests_exe_pdb_workaround',
3058           'type': 'static_library',
3059           'sources': [ 'empty_pdb_workaround.cc' ],
3060           'msvs_settings': {
3061             'VCCLCompilerTool': {
3062               # This *in the compile phase* must match the pdb name that's
3063               # output by the final link. See empty_pdb_workaround.cc for
3064               # more details.
3065               'DebugInformationFormat': '3',
3066               'ProgramDataBaseFileName': '<(PRODUCT_DIR)/automated_ui_tests.exe.pdb',
3067             },
3068           },
3069         },
3070         {
3071           # This target is only depended upon in Windows.
3072           'target_name': 'browser_tests_exe_pdb_workaround',
3073           'type': 'static_library',
3074           'sources': [ 'empty_pdb_workaround.cc' ],
3075           'msvs_settings': {
3076             'VCCLCompilerTool': {
3077               # This *in the compile phase* must match the pdb name that's
3078               # output by the final link. See empty_pdb_workaround.cc for
3079               # more details.
3080               'DebugInformationFormat': '3',
3081               'ProgramDataBaseFileName': '<(PRODUCT_DIR)/browser_tests.exe.pdb',
3082             },
3083           },
3084         },
3085       ],
3086     }],
3087   ],  # 'conditions'