Change the separator of the keyboard overlay data to allow labels containing spaces.
[chromium-blink-merge.git] / chrome / chrome_tests.gypi
blobdfba2fd3924aaf89796eebccce60853d392e67cd
1 # Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
6   'variables' : {
7     'pyautolib_sources': [
8       'app/chrome_command_ids.h',
9       'app/chrome_dll_resource.h',
10       'common/automation_constants.h',
11       'common/pref_names.cc',
12       'common/pref_names.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     ],
18   },
19   'targets': [
20     {
21       # This target contains mocks and test utilities that don't belong in
22       # production libraries but are used by more than one test executable.
23       'target_name': 'test_support_common',
24       'type': '<(library)',
25       'dependencies': [
26         'browser',
27         'common',
28         'renderer',
29         'chrome_resources',
30         'chrome_strings',
31         'app/policy/cloud_policy_codegen.gyp:policy',
32         'browser/sync/protocol/sync_proto.gyp:sync_proto_cpp',
33         'theme_resources',
34         '../base/base.gyp:test_support_base',
35         '../content/content.gyp:content_gpu',
36         '../ipc/ipc.gyp:test_support_ipc',
37         '../media/media.gyp:media_test_support',
38         # 'test/test_url_request_context_getter.h' brings in this requirement.
39         '../net/net.gyp:net_test_support',
40         '../skia/skia.gyp:skia',
41         '../testing/gmock.gyp:gmock',
42         '../testing/gtest.gyp:gtest',
43       ],
44       'export_dependent_settings': [
45         'renderer',
46         'app/policy/cloud_policy_codegen.gyp:policy',
47       ],
48       'include_dirs': [
49         '..',
50       ],
51       'sources': [
52         'app/breakpad_mac_stubs.mm',
53         'browser/autofill/autofill_common_test.cc',
54         'browser/autofill/autofill_common_test.h',
55         'browser/autofill/data_driven_test.cc',
56         'browser/autofill/data_driven_test.h',
57         # The only thing used from browser is Browser::Type.
58         'browser/extensions/test_extension_prefs.cc',
59         'browser/extensions/test_extension_prefs.h',
60         'browser/mock_browsing_data_appcache_helper.cc',
61         'browser/mock_browsing_data_appcache_helper.h',
62         'browser/mock_browsing_data_database_helper.cc',
63         'browser/mock_browsing_data_database_helper.h',
64         'browser/mock_browsing_data_indexed_db_helper.cc',
65         'browser/mock_browsing_data_indexed_db_helper.h',
66         'browser/mock_browsing_data_local_storage_helper.cc',
67         'browser/mock_browsing_data_local_storage_helper.h',
68         # TODO:  these should live here but are currently used by
69         # production code code in libbrowser (in chrome.gyp).
70         #'browser/net/url_request_mock_http_job.cc',
71         #'browser/net/url_request_mock_http_job.h',
72         'browser/net/url_request_mock_net_error_job.cc',
73         'browser/net/url_request_mock_net_error_job.h',
74         'browser/notifications/notification_test_util.cc',
75         'browser/notifications/notification_test_util.h',
76         'browser/prefs/pref_observer_mock.cc',
77         'browser/prefs/pref_observer_mock.h',
78         'browser/prefs/pref_service_mock_builder.cc',
79         'browser/prefs/pref_service_mock_builder.h',
80         'browser/prefs/testing_pref_store.cc',
81         'browser/prefs/testing_pref_store.h',
82         'browser/sessions/session_service_test_helper.cc',
83         'browser/sessions/session_service_test_helper.h',
84         'browser/sync/profile_sync_service_mock.cc',
85         'browser/sync/profile_sync_service_mock.h',
86         'browser/sync/syncable/syncable_mock.cc',
87         'browser/sync/syncable/syncable_mock.h',
88         'browser/ui/browser.h',
89         'browser/ui/cocoa/browser_test_helper.cc',
90         'browser/ui/cocoa/browser_test_helper.h',
91         'browser/ui/tab_contents/test_tab_contents_wrapper.cc',
92         'browser/ui/tab_contents/test_tab_contents_wrapper.h',
93         'common/net/test_url_fetcher_factory.cc',
94         'common/net/test_url_fetcher_factory.h',
95         'common/pref_store_observer_mock.cc',
96         'common/pref_store_observer_mock.h',
97         'renderer/mock_keyboard.cc',
98         'renderer/mock_keyboard.h',
99         'renderer/mock_keyboard_driver_win.cc',
100         'renderer/mock_keyboard_driver_win.h',
101         'renderer/mock_printer.cc',
102         'renderer/mock_printer.h',
103         'renderer/mock_render_process.cc',
104         'renderer/mock_render_process.h',
105         'renderer/mock_render_thread.cc',
106         'renderer/mock_render_thread.h',
107         'renderer/safe_browsing/mock_feature_extractor_clock.cc',
108         'renderer/safe_browsing/mock_feature_extractor_clock.h',
109         'test/automation/autocomplete_edit_proxy.cc',
110         'test/automation/autocomplete_edit_proxy.h',
111         'test/automation/automation_handle_tracker.cc',
112         'test/automation/automation_handle_tracker.h',
113         'test/automation/automation_json_requests.cc',
114         'test/automation/automation_json_requests.h',
115         'test/automation/automation_proxy.cc',
116         'test/automation/automation_proxy.h',
117         'test/automation/browser_proxy.cc',
118         'test/automation/browser_proxy.h',
119         'test/automation/dom_element_proxy.cc',
120         'test/automation/dom_element_proxy.h',
121         'test/automation/extension_proxy.cc',
122         'test/automation/extension_proxy.h',
123         'test/automation/javascript_execution_controller.cc',
124         'test/automation/javascript_execution_controller.h',
125         'test/automation/javascript_message_utils.h',
126         'test/automation/tab_proxy.cc',
127         'test/automation/tab_proxy.h',
128         'test/automation/window_proxy.cc',
129         'test/automation/window_proxy.h',
130         'test/bookmark_load_observer.cc',
131         'test/bookmark_load_observer.h',
132         'test/chrome_process_util.cc',
133         'test/chrome_process_util.h',
134         'test/chrome_process_util_mac.cc',
135         'test/in_process_browser_test.cc',
136         'test/in_process_browser_test.h',
137         'test/model_test_utils.cc',
138         'test/model_test_utils.h',
139         'test/profile_mock.cc',
140         'test/profile_mock.h',
141         'test/signaling_task.cc',
142         'test/signaling_task.h',
143         'test/test_browser_window.cc',
144         'test/test_browser_window.h',
145         'test/test_launcher_utils.cc',
146         'test/test_launcher_utils.h',
147         'test/test_location_bar.cc',
148         'test/test_location_bar.h',
149         'test/test_switches.cc',
150         'test/test_switches.h',
151         'test/test_url_request_context_getter.cc',
152         'test/test_url_request_context_getter.h',
153         'test/testing_browser_process.cc',
154         'test/testing_browser_process.h',
155         'test/testing_browser_process_test.h',
156         'test/testing_pref_service.cc',
157         'test/testing_pref_service.h',
158         'test/testing_profile.cc',
159         'test/testing_profile.h',
160         'test/thread_observer_helper.h',
161         'test/thread_test_helper.cc',
162         'test/thread_test_helper.h',
163         'test/ui_test_utils.cc',
164         'test/ui_test_utils.h',
165         'test/ui_test_utils_linux.cc',
166         'test/ui_test_utils_mac.mm',
167         'test/ui_test_utils_win.cc',
168         'test/unit/chrome_test_suite.cc',
169         'test/unit/chrome_test_suite.h',
170         'test/values_test_util.cc',
171         'test/values_test_util.h',
172         '../content/browser/geolocation/arbitrator_dependency_factories_for_test.cc',
173         '../content/browser/geolocation/arbitrator_dependency_factories_for_test.h',
174         '../content/browser/geolocation/mock_location_provider.cc',
175         '../content/browser/geolocation/mock_location_provider.h',
176         '../content/browser/renderer_host/mock_render_process_host.cc',
177         '../content/browser/renderer_host/mock_render_process_host.h',
178         '../content/browser/renderer_host/test_backing_store.cc',
179         '../content/browser/renderer_host/test_backing_store.h',
180         '../content/browser/renderer_host/test_render_view_host.cc',
181         '../content/browser/renderer_host/test_render_view_host.h',
182         '../content/browser/tab_contents/test_tab_contents.cc',
183         '../content/browser/tab_contents/test_tab_contents.h',
184         '../content/common/notification_observer_mock.cc',
185         '../content/common/notification_observer_mock.h',
186       ],
187       'conditions': [
188         ['OS=="linux"', {
189           'dependencies': [
190             '../build/linux/system.gyp:gtk',
191             '../build/linux/system.gyp:nss',
192           ],
193         }],
194         ['OS=="win"', {
195           'include_dirs': [
196             '<(DEPTH)/third_party/wtl/include',
197           ],
198         }],
199       ],
200     },
201     {
202       'target_name': 'test_support_ui',
203       'type': '<(library)',
204       'dependencies': [
205         'test_support_common',
206         'chrome_resources',
207         'chrome_strings',
208         'theme_resources',
209         '../skia/skia.gyp:skia',
210         '../testing/gtest.gyp:gtest',
211       ],
212       'export_dependent_settings': [
213         'test_support_common',
214       ],
215       'include_dirs': [
216         '..',
217       ],
218       'sources': [
219         'test/automated_ui_tests/automated_ui_test_base.cc',
220         'test/automated_ui_tests/automated_ui_test_base.h',
221         'test/automation/proxy_launcher.cc',
222         'test/automation/proxy_launcher.h',
223         'test/ui/javascript_test_util.cc',
224         'test/ui/npapi_test_helper.cc',
225         'test/ui/npapi_test_helper.h',
226         'test/ui/run_all_unittests.cc',
227         'test/ui/ui_layout_test.cc',
228         'test/ui/ui_layout_test.h',
229         'test/ui/ui_perf_test.cc',
230         'test/ui/ui_perf_test.h',
231         'test/ui/ui_test.cc',
232         'test/ui/ui_test.h',
233         'test/ui/ui_test_suite.cc',
234         'test/ui/ui_test_suite.h',
235       ],
236       'conditions': [
237         ['OS=="win"', {
238           'dependencies': [
239             'chrome.gyp:crash_service',  # run time dependency
240           ],
241         }],
242         ['OS=="linux"', {
243           'dependencies': [
244             '../build/linux/system.gyp:gtk',
245           ],
246         }],
247       ],
248     },
249     {
250       'target_name': 'test_support_sync',
251       'type': '<(library)',
252       'dependencies': [
253         '../testing/gmock.gyp:gmock',
254         '../testing/gtest.gyp:gtest',
255         'sync',
256       ],
257       'include_dirs': [
258         '..',
259       ],
260       'sources': [
261         'browser/sync/js_test_util.cc',
262         'browser/sync/js_test_util.h',
263       ],
264     },
265     {
266       'target_name': 'test_support_sync_notifier',
267       'type': '<(library)',
268       'dependencies': [
269         '../testing/gmock.gyp:gmock',
270         'sync_notifier',
271       ],
272       'include_dirs': [
273         '..',
274       ],
275       'sources': [
276         'browser/sync/notifier/mock_sync_notifier_observer.cc',
277         'browser/sync/notifier/mock_sync_notifier_observer.h',
278       ],
279     },
280     {
281       'target_name': 'test_support_unit',
282       'type': '<(library)',
283       'dependencies': [
284         'test_support_common',
285         'chrome_resources',
286         'chrome_strings',
287         '../skia/skia.gyp:skia',
288         '../testing/gtest.gyp:gtest',
289       ],
290       'include_dirs': [
291         '..',
292       ],
293       'sources': [
294         'test/unit/run_all_unittests.cc',
295       ],
296       'conditions': [
297         ['OS=="linux"', {
298           'dependencies': [
299             # Needed for the following #include chain:
300             #   test/unit/run_all_unittests.cc
301             #   test/unit/chrome_test_suite.h
302             #   gtk/gtk.h
303             '../build/linux/system.gyp:gtk',
304           ],
305         }],
306       ],
307     },
308     {
309       'target_name': 'automated_ui_tests',
310       'type': 'executable',
311       'msvs_guid': 'D2250C20-3A94-4FB9-AF73-11BC5B73884B',
312       'dependencies': [
313         'browser',
314         'renderer',
315         'test_support_common',
316         'test_support_ui',
317         'theme_resources',
318         '../base/base.gyp:base',
319         '../skia/skia.gyp:skia',
320         '../third_party/libxml/libxml.gyp:libxml',
321         '../testing/gtest.gyp:gtest',
322       ],
323       'include_dirs': [
324         '..',
325       ],
326       'sources': [
327         'test/automated_ui_tests/automated_ui_test_interactive_test.cc',
328         'test/automated_ui_tests/automated_ui_tests.cc',
329         'test/automated_ui_tests/automated_ui_tests.h',
330       ],
331       'conditions': [
332         ['OS=="win" and buildtype=="Official"', {
333           'configurations': {
334             'Release': {
335               'msvs_settings': {
336                 'VCCLCompilerTool': {
337                   'WholeProgramOptimization': 'false',
338                 },
339               },
340             },
341           },
342         },],
343         ['OS=="linux"', {
344           'dependencies': [
345             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
346           ],
347         }],
348         ['OS=="win"', {
349           'include_dirs': [
350             '<(DEPTH)/third_party/wtl/include',
351           ],
352           'conditions': [
353             ['win_use_allocator_shim==1', {
354               'dependencies': [
355                 '<(allocator_target)',
356               ],
357             }],
358           ],
359         }],
360       ],
361     },
362     {
363       'target_name': 'interactive_ui_tests',
364       'type': 'executable',
365       'msvs_guid': '018D4F38-6272-448F-A864-976DA09F05D0',
366       'dependencies': [
367         'browser/sync/protocol/sync_proto.gyp:sync_proto_cpp',
368         'chrome',
369         'chrome_resources',
370         'chrome_strings',
371         'debugger',
372         'syncapi',
373         'test_support_common',
374         'test_support_ui',
375         '../third_party/hunspell/hunspell.gyp:hunspell',
376         '../net/net.gyp:net_resources',
377         '../net/net.gyp:net_test_support',
378         '../skia/skia.gyp:skia',
379         '../third_party/icu/icu.gyp:icui18n',
380         '../third_party/libpng/libpng.gyp:libpng',
381         '../third_party/zlib/zlib.gyp:zlib',
382         '../testing/gtest.gyp:gtest',
383         '../third_party/npapi/npapi.gyp:npapi',
384         # run time dependency
385         '../webkit/support/webkit_support.gyp:webkit_resources',
386       ],
387       'include_dirs': [
388         '..',
389       ],
390       'defines': [ 'ALLOW_IN_PROC_BROWSER_TEST' ],
391       'sources': [
392         'browser/accessibility/accessibility_mac_uitest.mm',
393         'browser/autocomplete/autocomplete_edit_view_browsertest.cc',
394         'browser/autofill/autofill_browsertest.cc',
395         'browser/browser_focus_uitest.cc',
396         'browser/browser_keyevents_browsertest.cc',
397         'browser/collected_cookies_uitest.cc',
398         'browser/debugger/devtools_sanity_unittest.cc',
399         'browser/ui/gtk/bookmarks/bookmark_bar_gtk_interactive_uitest.cc',
400         'browser/instant/instant_browsertest.cc',
401         'browser/notifications/notifications_interactive_uitest.cc',
402         'browser/ui/views/bookmarks/bookmark_bar_view_test.cc',
403         'browser/ui/views/find_bar_host_interactive_uitest.cc',
404         'browser/ui/views/tabs/tab_dragging_test.cc',
405         'test/interactive_ui/fast_shutdown_interactive_uitest.cc',
406         'test/interactive_ui/infobars_uitest.cc',
407         'test/interactive_ui/keyboard_access_uitest.cc',
408         'test/interactive_ui/mouseleave_interactive_uitest.cc',
409         'test/interactive_ui/npapi_interactive_test.cc',
410         'test/interactive_ui/view_event_test_base.cc',
411         'test/interactive_ui/view_event_test_base.h',
412         'test/out_of_proc_test_runner.cc',
413         'test/unit/chrome_test_suite.h',
414       ],
415       'conditions': [
416         ['OS=="linux"', {
417           'dependencies': [
418             '../build/linux/system.gyp:gtk',
419             '../build/linux/system.gyp:nss',
420             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
421           ],
422         }],
423         ['OS=="linux" and toolkit_views==0', {
424           'sources!': [
425             # TODO(port)
426             'browser/ui/views/bookmarks/bookmark_bar_view_test.cc',
427             'browser/ui/views/find_bar_host_interactive_uitest.cc',
428             'browser/ui/views/tabs/tab_dragging_test.cc',
429             'browser/ui/views/tabs/tab_strip_interactive_uitest.cc',
430             'test/interactive_ui/npapi_interactive_test.cc',
431             'test/interactive_ui/view_event_test_base.cc',
432             'test/interactive_ui/view_event_test_base.h',
433           ],
434         }],
435         ['OS=="linux" and toolkit_views==1', {
436           'sources!': [
437             'browser/ui/gtk/bookmarks/bookmark_bar_gtk_interactive_uitest.cc',
438             # TODO(port)
439             'test/interactive_ui/npapi_interactive_test.cc',
440           ],
441         }],
442         ['target_arch!="arm"', {
443           'dependencies': [
444             # run time dependency
445             '../webkit/webkit.gyp:npapi_test_plugin',
446           ],
447         }],  # target_arch
448         ['OS=="mac"', {
449           'sources!': [
450             # TODO(port)
451             'browser/debugger/devtools_sanity_unittest.cc',
452             'browser/ui/views/bookmarks/bookmark_bar_view_test.cc',
453             'browser/ui/views/find_bar_host_interactive_uitest.cc',
454             'browser/ui/views/tabs/tab_dragging_test.cc',
455             'browser/ui/views/tabs/tab_strip_interactive_uitest.cc',
456             'test/interactive_ui/npapi_interactive_test.cc',
457             'test/interactive_ui/view_event_test_base.cc',
458             'test/interactive_ui/view_event_test_base.h',
459           ],
460           # See comment about the same line in chrome/chrome_tests.gypi.
461           'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']},
462         }],  # OS=="mac"
463         ['toolkit_views==1', {
464           'dependencies': [
465             '../views/views.gyp:views',
466           ],
467         }],
468         ['OS=="win"', {
469           'include_dirs': [
470             '../third_party/wtl/include',
471           ],
472           'dependencies': [
473             '../app/app.gyp:app_resources',
474             'chrome.gyp:chrome_dll_version',
475             'chrome.gyp:installer_util_strings',
476             '../sandbox/sandbox.gyp:sandbox',
477             '../third_party/iaccessible2/iaccessible2.gyp:iaccessible2',
478             '../third_party/isimpledom/isimpledom.gyp:isimpledom',
479           ],
480           'sources': [
481             '../webkit/glue/resources/aliasb.cur',
482             '../webkit/glue/resources/cell.cur',
483             '../webkit/glue/resources/col_resize.cur',
484             '../webkit/glue/resources/copy.cur',
485             '../webkit/glue/resources/row_resize.cur',
486             '../webkit/glue/resources/vertical_text.cur',
487             '../webkit/glue/resources/zoom_in.cur',
488             '../webkit/glue/resources/zoom_out.cur',
490             'app/chrome_dll.rc',
491             'test/data/resource.rc',
493             # TODO:  It would be nice to have these pulled in
494             # automatically from direct_dependent_settings in
495             # their various targets (net.gyp:net_resources, etc.),
496             # but that causes errors in other targets when
497             # resulting .res files get referenced multiple times.
498             '<(SHARED_INTERMEDIATE_DIR)/app/app_resources/app_resources.rc',
499             '<(SHARED_INTERMEDIATE_DIR)/chrome/autofill_resources.rc',
500             '<(SHARED_INTERMEDIATE_DIR)/chrome/browser_resources.rc',
501             '<(SHARED_INTERMEDIATE_DIR)/chrome/common_resources.rc',
502             '<(SHARED_INTERMEDIATE_DIR)/chrome/renderer_resources.rc',
503             '<(SHARED_INTERMEDIATE_DIR)/chrome/theme_resources.rc',
504             '<(SHARED_INTERMEDIATE_DIR)/chrome_dll_version/chrome_dll_version.rc',
505             '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc',
506             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.rc',
507             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_resources.rc',
509             'browser/accessibility/accessibility_win_browsertest.cc',
510             'browser/accessibility/browser_views_accessibility_browsertest.cc',
511           ],
512           'conditions': [
513             ['win_use_allocator_shim==1', {
514               'dependencies': [
515                  '../base/allocator/allocator.gyp:allocator',
516               ],
517             }],
518           ],
519           'configurations': {
520             'Debug_Base': {
521               'msvs_settings': {
522                 'VCLinkerTool': {
523                   'LinkIncremental': '<(msvs_debug_link_nonincremental)',
524                 },
525               },
526             },
527           },  # configurations
528         }],  # OS=="win"
529       ],  # conditions
530     },
531     {
532       'target_name': 'ui_tests',
533       'type': 'executable',
534       'msvs_guid': '76235B67-1C27-4627-8A33-4B2E1EF93EDE',
535       'dependencies': [
536         'chrome',
537         'browser',
538         'common',
539         'chrome_resources',
540         'chrome_strings',
541         'profile_import',
542         'test_support_ui',
543         '../app/app.gyp:app_base',
544         '../base/base.gyp:base',
545         '../net/net.gyp:net',
546         '../net/net.gyp:net_test_support',
547         '../build/temp_gyp/googleurl.gyp:googleurl',
548         '../skia/skia.gyp:skia',
549         '../testing/gmock.gyp:gmock',
550         '../testing/gtest.gyp:gtest',
551         '../third_party/icu/icu.gyp:icui18n',
552         '../third_party/icu/icu.gyp:icuuc',
553         '../third_party/libxml/libxml.gyp:libxml',
554         # run time dependencies
555         'chrome_mesa',
556         'default_plugin/default_plugin.gyp:default_plugin',
557         '../ppapi/ppapi.gyp:ppapi_tests',
558         '../third_party/WebKit/Source/WebKit/chromium/WebKit.gyp:copy_TestNetscapePlugIn',
559       ],
560       'include_dirs': [
561         '..',
562       ],
563       'sources': [
564         'app/chrome_main_uitest.cc',
565         'browser/browser_encoding_uitest.cc',
566         'browser/download/save_page_uitest.cc',
567         'browser/errorpage_uitest.cc',
568         'browser/default_plugin_uitest.cc',
569         'browser/history/multipart_uitest.cc',
570         'browser/history/redirect_uitest.cc',
571         'browser/iframe_uitest.cc',
572         'browser/images_uitest.cc',
573         'browser/locale_tests_uitest.cc',
574         'browser/media_uitest.cc',
575         'browser/metrics/metrics_service_uitest.cc',
576         'browser/prefs/pref_service_uitest.cc',
577         'browser/printing/printing_layout_uitest.cc',
578         'browser/process_singleton_linux_uitest.cc',
579         'browser/process_singleton_uitest.cc',
580         'browser/repost_form_warning_uitest.cc',
581         'browser/sanity_uitest.cc',
582         'browser/session_history_uitest.cc',
583         'browser/sessions/session_restore_uitest.cc',
584         'browser/tab_contents/view_source_uitest.cc',
585         'browser/tab_restore_uitest.cc',
586         'browser/unload_uitest.cc',
587         'browser/ui/login/login_prompt_uitest.cc',
588         'browser/ui/tests/browser_uitest.cc',
589         'browser/ui/views/find_bar_host_uitest.cc',
590         'browser/ui/webui/bookmarks_ui_uitest.cc',
591         'browser/ui/webui/new_tab_ui_uitest.cc',
592         'browser/ui/webui/options/options_ui_uitest.cc',
593         'browser/ui/webui/print_preview_ui_uitest.cc',
594         'common/logging_chrome_uitest.cc',
595         'renderer/external_extension_uitest.cc',
596         'test/automation/automation_proxy_uitest.cc',
597         'test/automation/automation_proxy_uitest.h',
598         'test/automation/extension_proxy_uitest.cc',
599         'test/automated_ui_tests/automated_ui_test_test.cc',
600         'test/chrome_process_util_uitest.cc',
601         'test/gpu/gpu_uitest.cc',
602         'test/ui/dom_checker_uitest.cc',
603         'test/ui/dromaeo_benchmark_uitest.cc',
604         'test/ui/history_uitest.cc',
605         'test/ui/layout_plugin_uitest.cc',
606         'test/ui/named_interface_uitest.cc',
607         'test/ui/npapi_uitest.cc',
608         'test/ui/omnibox_uitest.cc',
609         'test/ui/ppapi_uitest.cc',
610         'test/ui/sandbox_uitests.cc',
611         'test/ui/sunspider_uitest.cc',
612         'test/ui/v8_benchmark_uitest.cc',
613         '../content/browser/appcache/appcache_ui_test.cc',
614         '../content/browser/in_process_webkit/dom_storage_uitest.cc',
615         '../content/browser/renderer_host/resource_dispatcher_host_uitest.cc',
616         '../content/worker/worker_uitest.cc',
617       ],
618       'conditions': [
619         ['target_arch!="arm"', {
620           'dependencies': [
621             '../webkit/webkit.gyp:copy_npapi_test_plugin',
622           ],
623         }],
624         ['OS=="linux"', {
625           'dependencies': [
626             '../build/linux/system.gyp:gtk',
627             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
628           ],
629         }, { # else: OS != "linux"
630           'sources!': [
631             'browser/process_singleton_linux_uitest.cc',
632           ],
633         }],
634         ['toolkit_views==1', {
635           'dependencies': [
636             '../views/views.gyp:views',
637           ],
638         }],
639         ['OS=="mac"', {
640           # See the comment in this section of the unit_tests target for an
641           # explanation (crbug.com/43791 - libwebcore.a is too large to mmap).
642           'dependencies+++': [
643             '../third_party/WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp:webcore',
644           ],
645           'sources!': [
646             # ProcessSingletonMac doesn't do anything.
647             'browser/process_singleton_uitest.cc',
648           ],
649         }],
650         ['OS=="win"', {
651           'include_dirs': [
652             '<(DEPTH)/third_party/wtl/include',
653           ],
654           'dependencies': [
655             'security_tests',  # run time dependency
656             'test_support_common',
657             '../google_update/google_update.gyp:google_update',
658           ],
659           'conditions': [
660             ['win_use_allocator_shim==1', {
661               'dependencies': [
662                 '<(allocator_target)',
663               ],
664             }],
665           ],
666           'link_settings': {
667             'libraries': [
668               '-lOleAcc.lib',
669             ],
670           },
671           'configurations': {
672             'Debug_Base': {
673               'msvs_settings': {
674                 'VCLinkerTool': {
675                   'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
676                 },
677               },
678             },
679           },
680           'sources!': [
681             # TODO(dtu): port to windows http://crosbug.com/8515
682             'test/ui/named_interface_uitest.cc',
683           ],
684         }, { # else: OS != "win"
685           'sources!': [
686             # TODO(port): http://crbug.com/45770
687             'browser/printing/printing_layout_uitest.cc',
688           ],
689         }],
690         ['OS=="linux" or OS=="freebsd"', {
691           'conditions': [
692             ['linux_use_tcmalloc==1', {
693               'dependencies': [
694                 '../base/allocator/allocator.gyp:allocator',
695               ],
696             }],
697           ],
698         }],
699         ['chromeos==1', {
700           'sources!': [
701               # TODO(thestig): Enable when print preview is ready for CrOS.
702              'browser/ui/webui/print_preview_ui_uitest.cc',
703           ],
704         }],
705       ],
706     },
707     {
708       # chromedriver is the chromium impelmentation of the WebDriver
709       # wire protcol.  A description of the WebDriver and examples can
710       # be found at: http://seleniumhq.org/docs/09_webdriver.html.
711       # The documention of the protocol implemented is at:
712       # http://code.google.com/p/selenium/wiki/JsonWireProtocol
713       'target_name': 'chromedriver_lib',
714       'type': '<(library)',
715       'dependencies': [
716         'browser',
717         'chrome',
718         'chrome_resources',
719         'chrome_strings',
720         'common',
721         'syncapi',
722         'test_support_ui',
723         '../base/base.gyp:base',
724         '../build/temp_gyp/googleurl.gyp:googleurl',
725         '../net/net.gyp:net',
726         '../skia/skia.gyp:skia',
727         '../testing/gtest.gyp:gtest',
728         '../third_party/icu/icu.gyp:icui18n',
729         '../third_party/icu/icu.gyp:icuuc',
730         '../third_party/libxml/libxml.gyp:libxml',
731       ],
732       'include_dirs': [
733         '..',
734       ],
735       'sources': [
736         '../third_party/mongoose/mongoose.h',
737         '../third_party/mongoose/mongoose.c',
738         '../third_party/webdriver/atoms.h',
739         'test/webdriver/automation.h',
740         'test/webdriver/automation.cc',
741         'test/webdriver/cookie.h',
742         'test/webdriver/cookie.cc',
743         'test/webdriver/dispatch.h',
744         'test/webdriver/dispatch.cc',
745         'test/webdriver/error_codes.h',
746         'test/webdriver/frame_path.h',
747         'test/webdriver/frame_path.cc',
748         'test/webdriver/http_response.h',
749         'test/webdriver/http_response.cc',
750         'test/webdriver/keycode_text_conversion.h',
751         'test/webdriver/keycode_text_conversion_linux.cc',
752         'test/webdriver/keycode_text_conversion_mac.mm',
753         'test/webdriver/keycode_text_conversion_win.cc',
754         'test/webdriver/keymap.h',
755         'test/webdriver/keymap.cc',
756         'test/webdriver/session.h',
757         'test/webdriver/session.cc',
758         'test/webdriver/session_manager.h',
759         'test/webdriver/session_manager.cc',
760         'test/webdriver/utility_functions.h',
761         'test/webdriver/utility_functions.cc',
762         'test/webdriver/webdriver_key_converter.h',
763         'test/webdriver/webdriver_key_converter.cc',
764         'test/webdriver/web_element_id.h',
765         'test/webdriver/web_element_id.cc',
766         'test/webdriver/commands/command.h',
767         'test/webdriver/commands/command.cc',
768         'test/webdriver/commands/cookie_commands.h',
769         'test/webdriver/commands/cookie_commands.cc',
770         'test/webdriver/commands/create_session.h',
771         'test/webdriver/commands/create_session.cc',
772         'test/webdriver/commands/execute_command.h',
773         'test/webdriver/commands/execute_command.cc',
774         'test/webdriver/commands/find_element_commands.h',
775         'test/webdriver/commands/find_element_commands.cc',
776         'test/webdriver/commands/implicit_wait_command.h',
777         'test/webdriver/commands/implicit_wait_command.cc',
778         'test/webdriver/commands/navigate_commands.h',
779         'test/webdriver/commands/navigate_commands.cc',
780         'test/webdriver/commands/mouse_commands.h',
781         'test/webdriver/commands/mouse_commands.cc',
782         'test/webdriver/commands/response.cc',
783         'test/webdriver/commands/response.h',
784         'test/webdriver/commands/screenshot_command.h',
785         'test/webdriver/commands/screenshot_command.cc',
786         'test/webdriver/commands/session_with_id.h',
787         'test/webdriver/commands/session_with_id.cc',
788         'test/webdriver/commands/source_command.h',
789         'test/webdriver/commands/source_command.cc',
790         'test/webdriver/commands/speed_command.h',
791         'test/webdriver/commands/speed_command.cc',
792         'test/webdriver/commands/target_locator_commands.h',
793         'test/webdriver/commands/target_locator_commands.cc',
794         'test/webdriver/commands/title_command.h',
795         'test/webdriver/commands/title_command.cc',
796         'test/webdriver/commands/url_command.h',
797         'test/webdriver/commands/url_command.cc',
798         'test/webdriver/commands/webdriver_command.h',
799         'test/webdriver/commands/webdriver_command.cc',
800         'test/webdriver/commands/webelement_commands.h',
801         'test/webdriver/commands/webelement_commands.cc',
802       ],
803       'conditions': [
804         ['OS=="linux"', {
805           'dependencies': [
806             '../build/linux/system.gyp:gtk',
807             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
808           ],
809         }],
810         ['OS=="linux" and toolkit_views==1', {
811           'dependencies': [
812             '../views/views.gyp:views',
813           ],
814         }],
815         ['OS=="linux" or OS=="freebsd"', {
816           'conditions': [
817             ['linux_use_tcmalloc==1', {
818               'dependencies': [
819                 '../base/allocator/allocator.gyp:allocator',
820               ],
821             }],
822           ],
823         }],
824       ],
825     },
826     {
827       'target_name': 'chromedriver',
828       'type': 'executable',
829       'msvs_guid': '3F9C9B6D-BBB6-480F-B038-23BF35A432DC',
830       'dependencies': [
831         'chromedriver_lib',
832         '../skia/skia.gyp:skia',
833         '../testing/gtest.gyp:gtest',
834       ],
835       'include_dirs': [
836         '..',
837       ],
838       'sources': [
839         'test/webdriver/server.cc',
840       ],
841       'conditions': [
842         ['OS=="win"', {
843           'conditions': [
844             ['win_use_allocator_shim==1', {
845               'dependencies': [
846                 '<(allocator_target)',
847               ],
848             }],
849           ],
850           'link_settings': {
851             'libraries': [
852               '-lOleAcc.lib',
853               '-lws2_32.lib',
854             ],
855           },
856           'configurations': {
857             'Debug': {
858               'msvs_settings': {
859                 'VCLinkerTool': {
860                   'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
861                 },
862               },
863             },
864           },
865         }],
866       ]
867     },
868     {
869       'target_name': 'chromedriver_unittests',
870       'type': 'executable',
871       'msvs_guid': 'E24B445D-96E3-4272-BB54-AACBC6D3FE7E',
872       'dependencies': [
873         'chromedriver_lib',
874         '../base/base.gyp:test_support_base',
875         '../testing/gtest.gyp:gtest',
876         '../skia/skia.gyp:skia',
877       ],
878       'include_dirs': [
879         '..',
880       ],
881       'sources': [
882         '../base/test/run_all_unittests.cc',
883         'test/webdriver/commands/implicit_wait_command_unittest.cc',
884         'test/webdriver/cookie_unittest.cc',
885         'test/webdriver/dispatch_unittest.cc',
886         'test/webdriver/frame_path_unittest.cc',
887         'test/webdriver/http_response_unittest.cc',
888         'test/webdriver/keycode_text_conversion_unittest.cc',
889         'test/webdriver/utility_functions_unittest.cc',
890         'test/webdriver/webdriver_key_converter_unittest.cc',
891       ],
892       'conditions': [
893         ['OS=="win"', {
894           'conditions': [
895             ['win_use_allocator_shim==1', {
896               'dependencies': [
897                 '<(allocator_target)',
898               ],
899             }],
900           ],
901           'link_settings': {
902             'libraries': [
903               '-lOleAcc.lib',
904               '-lws2_32.lib',
905             ],
906           },
907           'configurations': {
908             'Debug': {
909               'msvs_settings': {
910                 'VCLinkerTool': {
911                   'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
912                 },
913               },
914             },
915           },
916         }],
917       ],
918     },
919     {
920       'target_name': 'nacl_security_tests',
921       'type': 'shared_library',
922       'msvs_guid': 'D705E8B8-4750-4F1F-BC8F-A7806872F504',
923       'include_dirs': [
924         '..'
925       ],
926       'sources': [
927        # mostly OS dependent files below...
928       ],
929       'conditions': [
930         ['OS=="mac"', {
931           # Only the Mac version uses gtest (linking issues on other platforms).
932           'dependencies': [
933             '../testing/gtest.gyp:gtest'
934           ],
935           'sources': [
936             'test/nacl_security_tests/commands_posix.cc',
937             'test/nacl_security_tests/commands_posix.h',
938             'test/nacl_security_tests/nacl_security_tests_posix.h',
939             'test/nacl_security_tests/nacl_security_tests_mac.cc',
940           ],
941           'xcode_settings': {
942              'DYLIB_INSTALL_NAME_BASE': '@executable_path/',
943           },
944         },],
945         ['OS=="linux"', {
946           'sources': [
947             'test/nacl_security_tests/commands_posix.cc',
948             'test/nacl_security_tests/commands_posix.h',
949             'test/nacl_security_tests/nacl_security_tests_posix.h',
950             'test/nacl_security_tests/nacl_security_tests_linux.cc',
951           ],
952         },],
953         ['OS=="win"', {
954           'sources': [
955             '../sandbox/tests/validation_tests/commands.cc',
956             '../sandbox/tests/validation_tests/commands.h',
957             '../sandbox/tests/common/controller.h',
958             'test/nacl_security_tests/nacl_security_tests_win.h',
959             'test/nacl_security_tests/nacl_security_tests_win.cc',
960           ],
961         },],
962         # Set fPIC in case it isn't set.
963         ['(OS=="linux" or OS=="openbsd" or OS=="freebsd" or OS=="solaris")'
964          'and (target_arch=="x64" or target_arch=="arm") and linux_fpic!=1', {
965           'cflags': ['-fPIC'],
966         },],
967       ],
968     },
969     {
970       'target_name': 'nacl_sandbox_tests',
971       'type': 'executable',
972       'msvs_guid': '3087FC25-2C24-44B2-8253-44065EB47ACD',
973       'dependencies': [
974         'chrome',
975         'browser',
976         'common',
977         'chrome_resources',
978         'chrome_strings',
979         'test_support_ui',
980         '../base/base.gyp:base',
981         '../build/temp_gyp/googleurl.gyp:googleurl',
982         '../net/net.gyp:net',
983         '../skia/skia.gyp:skia',
984         '../testing/gtest.gyp:gtest',
985         '../third_party/icu/icu.gyp:icui18n',
986         '../third_party/icu/icu.gyp:icuuc',
987         '../third_party/libxml/libxml.gyp:libxml',
988       ],
989       'include_dirs': [
990         '..',
991       ],
992       'sources': [
993         'test/nacl/nacl_test.cc',
994         'test/nacl/nacl_sandbox_test.cc'
995       ],
996       'conditions': [
997         ['OS=="win"', {
998           'dependencies': [
999             'chrome_nacl_win64',
1000             'nacl_security_tests', # run time dependency
1001             'nacl_security_tests64', # run time dependency
1002             'test_support_common',
1003             '../google_update/google_update.gyp:google_update',
1004             '../views/views.gyp:views',
1005             # run time dependency
1006             '../webkit/webkit.gyp:copy_npapi_test_plugin',
1007           ],
1008           'conditions': [
1009             ['win_use_allocator_shim==1', {
1010               'dependencies': [
1011                 '<(allocator_target)',
1012               ],
1013             }],
1014           ],
1015           'link_settings': {
1016             'libraries': [
1017               '-lOleAcc.lib',
1018             ],
1019           },
1020           'configurations': {
1021             'Debug_Base': {
1022               'msvs_settings': {
1023                 'VCLinkerTool': {
1024                   'LinkIncremental': '<(msvs_debug_link_nonincremental)',
1025                 },
1026               },
1027             },
1028           },
1029         }],
1030         ['OS=="mac"', {
1031           'dependencies': [
1032             'nacl_security_tests', # run time dependency
1033           ],
1034         }],
1035       ],
1036     },
1037     {
1038       'target_name': 'nacl_ui_tests',
1039       'type': 'executable',
1040       'msvs_guid': '43E2004F-CD62-4595-A8A6-31E9BFA1EE5E',
1041       'dependencies': [
1042         'chrome',
1043         'browser',
1044         'common',
1045         'chrome_resources',
1046         'chrome_strings',
1047         'test_support_ui',
1048         '../base/base.gyp:base',
1049         '../build/temp_gyp/googleurl.gyp:googleurl',
1050         '../net/net.gyp:net',
1051         '../skia/skia.gyp:skia',
1052         '../testing/gtest.gyp:gtest',
1053         '../third_party/icu/icu.gyp:icui18n',
1054         '../third_party/icu/icu.gyp:icuuc',
1055       ],
1056       'include_dirs': [
1057         '..',
1058       ],
1059       'sources': [
1060         'test/nacl/nacl_test.cc',
1061         'test/nacl/nacl_ui_test.cc',
1062       ],
1063       'conditions': [
1064         ['OS=="win"', {
1065           'dependencies': [
1066             'chrome_nacl_win64',
1067             'security_tests',  # run time dependency
1068             'test_support_common',
1069             '../google_update/google_update.gyp:google_update',
1070             # run time dependency
1071             '../webkit/webkit.gyp:copy_npapi_test_plugin',
1072           ],
1073           'conditions': [
1074             ['win_use_allocator_shim==1', {
1075               'dependencies': [
1076                 '<(allocator_target)',
1077               ],
1078             }],
1079           ],
1080           'link_settings': {
1081             'libraries': [
1082               '-lOleAcc.lib',
1083             ],
1084           },
1085           'configurations': {
1086             'Debug_Base': {
1087               'msvs_settings': {
1088                 'VCLinkerTool': {
1089                   'LinkIncremental': '<(msvs_debug_link_nonincremental)',
1090                 },
1091               },
1092             },
1093           },
1094         }],
1095         ['toolkit_views==1', {
1096           'dependencies': [
1097             '../views/views.gyp:views',
1098           ],
1099         }],
1100       ],
1101     },
1102     {
1103       'target_name': 'unit_tests',
1104       'type': 'executable',
1105       'msvs_guid': 'ECFC2BEC-9FC0-4AD9-9649-5F26793F65FC',
1106       'dependencies': [
1107         'browser',
1108         'browser/sync/protocol/sync_proto.gyp:sync_proto_cpp',
1109         'chrome',
1110         'chrome_resources',
1111         'chrome_strings',
1112         'common',
1113         'profile_import',
1114         'renderer',
1115         'service',
1116         'test_support_common',
1117         'test_support_sync',
1118         'test_support_unit',
1119         'utility',
1120         '../app/app.gyp:app_base',
1121         '../app/app.gyp:app_resources',
1122         '../content/content.gyp:content_gpu',
1123         '../gpu/gpu.gyp:gpu_unittest_utils',
1124         '../ipc/ipc.gyp:ipc',
1125         '../media/media.gyp:media_test_support',
1126         '../net/net.gyp:net_resources',
1127         '../net/net.gyp:net_test_support',
1128         '../printing/printing.gyp:printing',
1129         '../webkit/support/webkit_support.gyp:webkit_resources',
1130         '../skia/skia.gyp:skia',
1131         '../testing/gmock.gyp:gmock',
1132         '../testing/gtest.gyp:gtest',
1133         '../third_party/bzip2/bzip2.gyp:bzip2',
1134         '../third_party/cld/cld.gyp:cld',
1135         '../third_party/expat/expat.gyp:expat',
1136         '../third_party/icu/icu.gyp:icui18n',
1137         '../third_party/icu/icu.gyp:icuuc',
1138         '../third_party/libjingle/libjingle.gyp:libjingle',
1139         '../third_party/libxml/libxml.gyp:libxml',
1140         '../third_party/npapi/npapi.gyp:npapi',
1141         '../third_party/WebKit/Source/WebKit/chromium/WebKit.gyp:webkit',
1142         '../ui/gfx/gl/gl.gyp:gl',
1143       ],
1144       'include_dirs': [
1145         '..',
1146       ],
1147       'defines': [
1148         'CLD_WINDOWS',
1149       ],
1150       'direct_dependent_settings': {
1151         'defines': [
1152           'CLD_WINDOWS',
1153         ],
1154       },
1155       'sources': [
1156         '<(protoc_out_dir)/chrome/browser/history/in_memory_url_index_cache.pb.cc',
1157         'app/breakpad_mac_stubs.mm',
1158         'app/chrome_dll.rc',
1159         # All unittests in browser, common, renderer and service.
1160         'browser/about_flags_unittest.cc',
1161         'browser/accessibility/browser_accessibility_mac_unittest.mm',
1162         'browser/accessibility/browser_accessibility_manager_unittest.cc',
1163         'browser/accessibility/browser_accessibility_win_unittest.cc',
1164         'browser/app_controller_mac_unittest.mm',
1165         'browser/autocomplete_history_manager_unittest.cc',
1166         'browser/autocomplete/autocomplete_edit_unittest.cc',
1167         'browser/autocomplete/autocomplete_edit_view_mac_unittest.mm',
1168         'browser/autocomplete/autocomplete_popup_view_gtk_unittest.cc',
1169         'browser/autocomplete/autocomplete_popup_view_mac_unittest.mm',
1170         'browser/autocomplete/autocomplete_result_unittest.cc',
1171         'browser/autocomplete/autocomplete_unittest.cc',
1172         'browser/autocomplete/history_contents_provider_unittest.cc',
1173         'browser/autocomplete/history_quick_provider_unittest.cc',
1174         'browser/autocomplete/history_url_provider_unittest.cc',
1175         'browser/autocomplete/keyword_provider_unittest.cc',
1176         'browser/autocomplete/search_provider_unittest.cc',
1177         'browser/autofill/address_unittest.cc',
1178         'browser/autofill/address_field_unittest.cc',
1179         'browser/autofill/autofill_country_unittest.cc',
1180         'browser/autofill/autofill_download_unittest.cc',
1181         'browser/autofill/autofill_field_unittest.cc',
1182         'browser/autofill/autofill_ie_toolbar_import_win_unittest.cc',
1183         'browser/autofill/autofill_manager_unittest.cc',
1184         'browser/autofill/autofill_merge_unittest.cc',
1185         'browser/autofill/autofill_metrics_unittest.cc',
1186         'browser/autofill/autofill_profile_unittest.cc',
1187         'browser/autofill/autofill_type_unittest.cc',
1188         'browser/autofill/autofill_xml_parser_unittest.cc',
1189         'browser/autofill/contact_info_unittest.cc',
1190         'browser/autofill/credit_card_field_unittest.cc',
1191         'browser/autofill/credit_card_unittest.cc',
1192         'browser/autofill/form_field_unittest.cc',
1193         'browser/autofill/form_structure_unittest.cc',
1194         'browser/autofill/name_field_unittest.cc',
1195         'browser/autofill/personal_data_manager_unittest.cc',
1196         'browser/autofill/phone_field_unittest.cc',
1197         'browser/autofill/phone_number_unittest.cc',
1198         'browser/autofill/select_control_handler_unittest.cc',
1199         'browser/automation/automation_provider_unittest.cc',
1200         'browser/background_application_list_model_unittest.cc',
1201         'browser/background_contents_service_unittest.cc',
1202         'browser/background_mode_manager_unittest.cc',
1203         'browser/background_page_tracker_unittest.cc',
1204         'browser/bookmarks/bookmark_codec_unittest.cc',
1205         'browser/bookmarks/bookmark_context_menu_controller_unittest.cc',
1206         'browser/bookmarks/bookmark_html_writer_unittest.cc',
1207         'browser/bookmarks/bookmark_index_unittest.cc',
1208         'browser/bookmarks/bookmark_model_test_utils.cc',
1209         'browser/bookmarks/bookmark_model_test_utils.h',
1210         'browser/bookmarks/bookmark_model_unittest.cc',
1211         'browser/bookmarks/bookmark_node_data_unittest.cc',
1212         'browser/bookmarks/bookmark_utils_unittest.cc',
1213         'browser/browser_about_handler_unittest.cc',
1214         'browser/browser_commands_unittest.cc',
1215         'browser/browsing_data_appcache_helper_unittest.cc',
1216         'browser/browsing_data_database_helper_unittest.cc',
1217         'browser/browsing_data_indexed_db_helper_unittest.cc',
1218         'browser/browsing_data_local_storage_helper_unittest.cc',
1219         'browser/chrome_browser_application_mac_unittest.mm',
1220         'browser/chromeos/customization_document_unittest.cc',
1221         'browser/chromeos/external_metrics_unittest.cc',
1222         'browser/chromeos/gview_request_interceptor_unittest.cc',
1223         'browser/chromeos/input_method/input_method_util_unittest.cc',
1224         'browser/chromeos/language_preferences_unittest.cc',
1225         'browser/chromeos/login/authenticator_unittest.cc',
1226         'browser/chromeos/login/cookie_fetcher_unittest.cc',
1227         'browser/chromeos/login/cryptohome_op_unittest.cc',
1228         'browser/chromeos/login/google_authenticator_unittest.cc',
1229         'browser/chromeos/login/mock_auth_attempt_state_resolver.h',
1230         'browser/chromeos/login/mock_auth_response_handler.cc',
1231         'browser/chromeos/login/mock_login_status_consumer.h',
1232         'browser/chromeos/login/mock_url_fetchers.h',
1233         'browser/chromeos/login/mock_url_fetchers.cc',
1234         'browser/chromeos/login/mock_user_manager.h',
1235         'browser/chromeos/login/online_attempt_unittest.cc',
1236         'browser/chromeos/login/owner_key_utils_unittest.cc',
1237         'browser/chromeos/login/owner_manager_unittest.cc',
1238         'browser/chromeos/login/ownership_service_unittest.cc',
1239         'browser/chromeos/login/parallel_authenticator_unittest.cc',
1240         'browser/chromeos/login/signed_settings_unittest.cc',
1241         'browser/chromeos/login/signed_settings_helper_unittest.cc',
1242         'browser/chromeos/login/signed_settings_temp_storage_unittest.cc',
1243         'browser/chromeos/login/user_controller_unittest.cc',
1244         'browser/chromeos/login/wizard_accessibility_handler_unittest.cc',
1245         'browser/chromeos/network_message_observer_unittest.cc',
1246         'browser/chromeos/notifications/desktop_notifications_unittest.cc',
1247         'browser/chromeos/offline/offline_load_page_unittest.cc',
1248         'browser/chromeos/plugin_selection_policy_unittest.cc',
1249         'browser/chromeos/proxy_config_service_impl_unittest.cc',
1250         'browser/chromeos/status/input_method_menu_unittest.cc',
1251         'browser/chromeos/version_loader_unittest.cc',
1252         'browser/content_setting_bubble_model_unittest.cc',
1253         'browser/content_setting_image_model_unittest.cc',
1254         'browser/debugger/devtools_remote_listen_socket_unittest.cc',
1255         'browser/debugger/devtools_remote_listen_socket_unittest.h',
1256         'browser/debugger/devtools_remote_message_unittest.cc',
1257         'browser/diagnostics/diagnostics_model_unittest.cc',
1258         'browser/cocoa/keystone_glue_unittest.mm',
1259         'browser/command_updater_unittest.cc',
1260         'browser/content_settings/content_settings_pattern_unittest.cc',
1261         'browser/content_settings/content_settings_provider_unittest.cc',
1262         'browser/content_settings/host_content_settings_map_unittest.cc',
1263         'browser/content_settings/content_settings_mock_provider.cc',
1264         'browser/content_settings/content_settings_mock_provider.h',
1265         'browser/content_settings/content_settings_policy_provider_unittest.cc',
1266         'browser/content_settings/content_settings_pref_provider_unittest.cc',
1267         'browser/content_settings/stub_settings_observer.cc',
1268         'browser/content_settings/stub_settings_observer.h',
1269         'browser/cookies_tree_model_unittest.cc',
1270         'browser/debugger/devtools_manager_unittest.cc',
1271         'browser/download/base_file_unittest.cc',
1272         'browser/download/download_file_unittest.cc',
1273         'browser/download/download_manager_unittest.cc',
1274         'browser/download/download_request_infobar_delegate_unittest.cc',
1275         'browser/download/download_request_limiter_unittest.cc',
1276         'browser/download/download_status_updater_unittest.cc',
1277         'browser/download/download_util_unittest.cc',
1278         'browser/download/mock_download_manager.h',
1279         'browser/download/save_package_unittest.cc',
1280         'browser/enumerate_modules_model_unittest_win.cc',
1281         'browser/extensions/convert_user_script_unittest.cc',
1282         'browser/extensions/convert_web_app_unittest.cc',
1283         'browser/extensions/default_apps_unittest.cc',
1284         'browser/extensions/extension_event_router_forwarder_unittest.cc',
1285         'browser/extensions/extension_icon_manager_unittest.cc',
1286         'browser/extensions/extension_info_map_unittest.cc',
1287         'browser/extensions/extension_menu_manager_unittest.cc',
1288         'browser/extensions/extension_pref_value_map_unittest.cc',
1289         'browser/extensions/extension_prefs_unittest.cc',
1290         'browser/extensions/extension_process_manager_unittest.cc',
1291         'browser/extensions/extension_omnibox_unittest.cc',
1292         'browser/extensions/extension_service_unittest.cc',
1293         'browser/extensions/extension_service_unittest.h',
1294         'browser/extensions/extension_special_storage_policy_unittest.cc',
1295         'browser/extensions/extension_ui_unittest.cc',
1296         'browser/extensions/extension_updater_unittest.cc',
1297         'browser/extensions/extension_webnavigation_unittest.cc',
1298         'browser/extensions/extensions_quota_service_unittest.cc',
1299         'browser/extensions/external_policy_extension_loader_unittest.cc',
1300         'browser/extensions/file_reader_unittest.cc',
1301         'browser/extensions/image_loading_tracker_unittest.cc',
1302         'browser/extensions/key_identifier_conversion_views_unittest.cc',
1303         'browser/extensions/sandboxed_extension_unpacker_unittest.cc',
1304         'browser/extensions/user_script_listener_unittest.cc',
1305         'browser/extensions/user_script_master_unittest.cc',
1306         'browser/first_run/first_run_unittest.cc',
1307         'browser/geolocation/geolocation_content_settings_map_unittest.cc',
1308         'browser/geolocation/geolocation_exceptions_table_model_unittest.cc',
1309         'browser/geolocation/geolocation_permission_context_unittest.cc',
1310         'browser/geolocation/geolocation_settings_state_unittest.cc',
1311         'browser/global_keyboard_shortcuts_mac_unittest.mm',
1312         'browser/google/google_update_settings_unittest.cc',
1313         'browser/google/google_url_tracker_unittest.cc',
1314         'browser/ui/gtk/bookmarks/bookmark_bar_gtk_unittest.cc',
1315         'browser/ui/gtk/bookmarks/bookmark_editor_gtk_unittest.cc',
1316         'browser/ui/gtk/bookmarks/bookmark_utils_gtk_unittest.cc',
1317         'browser/ui/gtk/gtk_chrome_shrinkable_hbox_unittest.cc',
1318         'browser/ui/gtk/gtk_expanded_container_unittest.cc',
1319         'browser/ui/gtk/gtk_theme_service_unittest.cc',
1320         'browser/ui/gtk/reload_button_gtk_unittest.cc',
1321         'browser/ui/gtk/status_icons/status_tray_gtk_unittest.cc',
1322         'browser/ui/gtk/tabs/tab_renderer_gtk_unittest.cc',
1323         'browser/history/expire_history_backend_unittest.cc',
1324         'browser/history/history_backend_unittest.cc',
1325         'browser/history/history_querying_unittest.cc',
1326         'browser/history/history_types_unittest.cc',
1327         'browser/history/history_unittest.cc',
1328         'browser/history/history_unittest_base.cc',
1329         'browser/history/history_unittest_base.h',
1330         'browser/history/in_memory_url_index_unittest.cc',
1331         'browser/history/query_parser_unittest.cc',
1332         'browser/history/snippet_unittest.cc',
1333         'browser/history/starred_url_database_unittest.cc',
1334         'browser/history/text_database_manager_unittest.cc',
1335         'browser/history/text_database_unittest.cc',
1336         'browser/history/thumbnail_database_unittest.cc',
1337         'browser/history/top_sites_unittest.cc',
1338         'browser/history/url_database_unittest.cc',
1339         'browser/history/visit_database_unittest.cc',
1340         'browser/history/visit_tracker_unittest.cc',
1341         'browser/importer/firefox_importer_unittest.cc',
1342         'browser/importer/firefox_importer_unittest_messages_internal.h',
1343         'browser/importer/firefox_importer_unittest_utils.h',
1344         'browser/importer/firefox_importer_unittest_utils_mac.cc',
1345         'browser/importer/firefox_importer_utils_unittest.cc',
1346         'browser/importer/firefox_profile_lock_unittest.cc',
1347         'browser/importer/firefox_proxy_settings_unittest.cc',
1348         'browser/importer/importer_unittest.cc',
1349         'browser/importer/safari_importer_unittest.mm',
1350         'browser/importer/toolbar_importer_unittest.cc',
1351         'browser/instant/instant_loader_manager_unittest.cc',
1352         'browser/instant/promo_counter_unittest.cc',
1353         'browser/keychain_mock_mac.cc',
1354         'browser/keychain_mock_mac.h',
1355         'browser/mach_broker_mac_unittest.cc',
1356         'browser/metrics/metrics_log_unittest.cc',
1357         'browser/metrics/metrics_response_unittest.cc',
1358         'browser/metrics/metrics_service_unittest.cc',
1359         'browser/metrics/thread_watcher_unittest.cc',
1360         'browser/mock_plugin_exceptions_table_model.cc',
1361         'browser/mock_plugin_exceptions_table_model.h',
1362         'browser/net/connection_tester_unittest.cc',
1363         'browser/net/gaia/token_service_unittest.cc',
1364         'browser/net/gaia/token_service_unittest.h',
1365         'browser/net/chrome_net_log_unittest.cc',
1366         'browser/net/load_timing_observer_unittest.cc',
1367         'browser/net/passive_log_collector_unittest.cc',
1368         'browser/net/predictor_unittest.cc',
1369         'browser/net/pref_proxy_config_service_unittest.cc',
1370         'browser/net/quoted_printable_unittest.cc',
1371         'browser/net/resolve_proxy_msg_helper_unittest.cc',
1372         'browser/net/sqlite_persistent_cookie_store_unittest.cc',
1373         'browser/net/url_fixer_upper_unittest.cc',
1374         'browser/net/url_info_unittest.cc',
1375         'browser/notifications/desktop_notification_service_unittest.cc',
1376         'browser/notifications/desktop_notifications_unittest.h',
1377         'browser/notifications/desktop_notifications_unittest.cc',
1378         'browser/notifications/notification_exceptions_table_model_unittest.cc',
1379         'browser/notifications/notifications_prefs_cache_unittest.cc',
1380         'browser/parsers/metadata_parser_filebase_unittest.cc',
1381         'browser/password_manager/encryptor_unittest.cc',
1382         'browser/password_manager/encryptor_password_mac_unittest.cc',
1383         'browser/password_manager/login_database_unittest.cc',
1384         'browser/password_manager/password_form_data.cc',
1385         'browser/password_manager/password_form_manager_unittest.cc',
1386         'browser/password_manager/password_manager_unittest.cc',
1387         'browser/password_manager/password_store_default_unittest.cc',
1388         'browser/password_manager/password_store_mac_unittest.cc',
1389         'browser/password_manager/password_store_win_unittest.cc',
1390         'browser/plugin_exceptions_table_model_unittest.cc',
1391         'browser/policy/asynchronous_policy_loader_unittest.cc',
1392         'browser/policy/asynchronous_policy_provider_unittest.cc',
1393         'browser/policy/asynchronous_policy_test_base.cc',
1394         'browser/policy/asynchronous_policy_test_base.h',
1395         'browser/policy/cloud_policy_controller_unittest.cc',
1396         'browser/policy/config_dir_policy_provider_unittest.cc',
1397         'browser/policy/configuration_policy_pref_store_unittest.cc',
1398         'browser/policy/configuration_policy_provider_mac_unittest.cc',
1399         'browser/policy/configuration_policy_provider_win_unittest.cc',
1400         'browser/policy/device_policy_cache_unittest.cc',
1401         'browser/policy/device_token_fetcher_unittest.cc',
1402         'browser/policy/file_based_policy_provider_unittest.cc',
1403         'browser/policy/device_management_backend_mock.cc',
1404         'browser/policy/device_management_backend_mock.h',
1405         'browser/policy/device_management_service_unittest.cc',
1406         'browser/policy/managed_prefs_banner_base_unittest.cc',
1407         'browser/policy/mock_configuration_policy_provider.cc',
1408         'browser/policy/mock_configuration_policy_provider.h',
1409         'browser/policy/mock_configuration_policy_store.cc',
1410         'browser/policy/mock_configuration_policy_store.h',
1411         'browser/policy/mock_device_management_backend.cc',
1412         'browser/policy/mock_device_management_backend.h',
1413         'browser/policy/policy_map_unittest.cc',
1414         'browser/policy/policy_path_parser_unittest.cc',
1415         'browser/policy/user_policy_cache_unittest.cc',
1416         'browser/preferences_mock_mac.cc',
1417         'browser/preferences_mock_mac.h',
1418         'browser/prefs/command_line_pref_store_unittest.cc',
1419         'browser/prefs/overlay_persistent_pref_store_unittest.cc',
1420         'browser/prefs/pref_change_registrar_unittest.cc',
1421         'browser/prefs/pref_member_unittest.cc',
1422         'browser/prefs/pref_notifier_impl_unittest.cc',
1423         'browser/prefs/pref_service_unittest.cc',
1424         'browser/prefs/pref_set_observer_unittest.cc',
1425         'browser/prefs/pref_value_map_unittest.cc',
1426         'browser/prefs/pref_value_store_unittest.cc',
1427         'browser/prefs/proxy_config_dictionary_unittest.cc',
1428         'browser/prefs/proxy_prefs_unittest.cc',
1429         'browser/prefs/session_startup_pref_unittest.cc',
1430         'browser/prerender/prerender_manager_unittest.cc',
1431         'browser/prerender/prerender_resource_handler_unittest.cc',
1432         'browser/printing/cloud_print/cloud_print_setup_source_unittest.cc',
1433         'browser/printing/print_dialog_cloud_unittest.cc',
1434         'browser/printing/print_job_unittest.cc',
1435         'browser/printing/print_preview_tab_controller_unittest.cc',
1436         'browser/process_info_snapshot_mac_unittest.cc',
1437         'browser/process_singleton_mac_unittest.cc',
1438         'browser/profiles/profile_manager_unittest.cc',
1439         'browser/remoting/directory_add_request_unittest.cc',
1440         'browser/renderer_host/gtk_key_bindings_handler_unittest.cc',
1441         'browser/renderer_host/render_widget_host_view_mac_unittest.mm',
1442         'browser/renderer_host/web_cache_manager_unittest.cc',
1443         'browser/resources_util_unittest.cc',
1444         'browser/rlz/rlz_unittest.cc',
1445         'browser/safe_browsing/bloom_filter_unittest.cc',
1446         'browser/safe_browsing/chunk_range_unittest.cc',
1447         'browser/safe_browsing/client_side_detection_host_unittest.cc',
1448         'browser/safe_browsing/client_side_detection_service_unittest.cc',
1449         'browser/safe_browsing/malware_details_unittest.cc',
1450         'browser/safe_browsing/prefix_set_unittest.cc',
1451         'browser/safe_browsing/protocol_manager_unittest.cc',
1452         'browser/safe_browsing/protocol_parser_unittest.cc',
1453         'browser/safe_browsing/safe_browsing_blocking_page_unittest.cc',
1454         'browser/safe_browsing/safe_browsing_database_unittest.cc',
1455         'browser/safe_browsing/safe_browsing_store_file_unittest.cc',
1456         'browser/safe_browsing/safe_browsing_store_unittest.cc',
1457         'browser/safe_browsing/safe_browsing_store_unittest_helper.cc',
1458         'browser/safe_browsing/safe_browsing_util_unittest.cc',
1459         'browser/search_engines/search_host_to_urls_map_unittest.cc',
1460         'browser/search_engines/search_provider_install_data_unittest.cc',
1461         'browser/search_engines/template_url_fetcher_unittest.cc',
1462         'browser/search_engines/template_url_model_test_util.cc',
1463         'browser/search_engines/template_url_model_test_util.h',
1464         'browser/search_engines/template_url_model_unittest.cc',
1465         'browser/search_engines/template_url_parser_unittest.cc',
1466         'browser/search_engines/template_url_prepopulate_data_unittest.cc',
1467         'browser/search_engines/template_url_scraper_unittest.cc',
1468         'browser/search_engines/template_url_unittest.cc',
1469         'browser/sessions/session_backend_unittest.cc',
1470         'browser/sessions/session_service_unittest.cc',
1471         'browser/shell_integration_unittest.cc',
1472         'browser/speech/speech_input_bubble_controller_unittest.cc',
1473         'browser/spellchecker_platform_engine_unittest.cc',
1474         'browser/ssl/ssl_host_state_unittest.cc',
1475         'browser/status_icons/status_icon_unittest.cc',
1476         'browser/status_icons/status_tray_unittest.cc',
1477         'browser/sync/abstract_profile_sync_service_test.cc',
1478         'browser/sync/abstract_profile_sync_service_test.h',
1479         'browser/sync/engine/read_node_mock.cc',
1480         'browser/sync/engine/read_node_mock.h',
1481         'browser/sync/glue/autofill_data_type_controller_unittest.cc',
1482         'browser/sync/glue/autofill_model_associator_unittest.cc',
1483         'browser/sync/glue/autofill_profile_model_associator_unittest.cc',
1484         'browser/sync/glue/bookmark_data_type_controller_unittest.cc',
1485         'browser/sync/glue/change_processor_mock.cc',
1486         'browser/sync/glue/change_processor_mock.h',
1487         'browser/sync/glue/data_type_controller_mock.cc',
1488         'browser/sync/glue/data_type_controller_mock.h',
1489         'browser/sync/glue/data_type_manager_impl_unittest.cc',
1490         'browser/sync/glue/data_type_manager_impl2_unittest.cc',
1491         'browser/sync/glue/data_type_manager_mock.cc',
1492         'browser/sync/glue/data_type_manager_mock.h',
1493         'browser/sync/glue/database_model_worker_unittest.cc',
1494         'browser/sync/glue/extension_data_unittest.cc',
1495         'browser/sync/glue/extension_data_type_controller_unittest.cc',
1496         'browser/sync/glue/extension_util_unittest.cc',
1497         'browser/sync/glue/http_bridge_unittest.cc',
1498         'browser/sync/glue/model_associator_mock.cc',
1499         'browser/sync/glue/model_associator_mock.h',
1500         'browser/sync/glue/preference_data_type_controller_unittest.cc',
1501         'browser/sync/glue/preference_model_associator_unittest.cc',
1502         'browser/sync/glue/session_model_associator_unittest.cc',
1503         'browser/sync/glue/sync_backend_host_mock.cc',
1504         'browser/sync/glue/sync_backend_host_mock.h',
1505         'browser/sync/glue/theme_data_type_controller_unittest.cc',
1506         'browser/sync/glue/theme_util_unittest.cc',
1507         'browser/sync/glue/typed_url_model_associator_unittest.cc',
1508         'browser/sync/glue/ui_model_worker_unittest.cc',
1509         'browser/sync/profile_sync_factory_impl_unittest.cc',
1510         'browser/sync/profile_sync_factory_mock.cc',
1511         'browser/sync/profile_sync_factory_mock.h',
1512         'browser/sync/profile_sync_service_autofill_unittest.cc',
1513         'browser/sync/profile_sync_service_bookmark_unittest.cc',
1514         'browser/sync/profile_sync_service_password_unittest.cc',
1515         'browser/sync/profile_sync_service_preference_unittest.cc',
1516         'browser/sync/profile_sync_service_session_unittest.cc',
1517         'browser/sync/profile_sync_service_startup_unittest.cc',
1518         'browser/sync/profile_sync_service_typed_url_unittest.cc',
1519         'browser/sync/profile_sync_service_unittest.cc',
1520         'browser/sync/profile_sync_test_util.cc',
1521         'browser/sync/profile_sync_test_util.h',
1522         'browser/sync/signin_manager_unittest.cc',
1523         'browser/sync/sync_setup_wizard_unittest.cc',
1524         'browser/sync/sync_ui_util_mac_unittest.mm',
1525         'browser/sync/sync_ui_util_unittest.cc',
1526         'browser/sync/test_profile_sync_service.h',
1527         'browser/sync/test_profile_sync_service.cc',
1528         'browser/sync/util/cryptographer_unittest.cc',
1529         'browser/sync/util/nigori_unittest.cc',
1530         'browser/tab_contents/tab_specific_content_settings_unittest.cc',
1531         'browser/tab_contents/thumbnail_generator_unittest.cc',
1532         'browser/tab_contents/web_contents_unittest.cc',
1533         'browser/tabs/pinned_tab_codec_unittest.cc',
1534         'browser/tabs/pinned_tab_service_unittest.cc',
1535         'browser/tabs/pinned_tab_test_utils.cc',
1536         'browser/tabs/tab_strip_model_unittest.cc',
1537         'browser/tabs/tab_strip_selection_model_unittest.cc',
1538         'browser/task_manager/task_manager_unittest.cc',
1539         'browser/themes/browser_theme_pack_unittest.cc',
1540         'browser/themes/theme_service_unittest.cc',
1541         # It is safe to list */cocoa/* files in the "common" file list
1542         # without an explicit exclusion since gyp is smart enough to
1543         # exclude them from non-Mac builds.
1544         'browser/ui/cocoa/about_ipc_controller_unittest.mm',
1545         'browser/ui/cocoa/about_window_controller_unittest.mm',
1546         'browser/ui/cocoa/accelerators_cocoa_unittest.mm',
1547         'browser/ui/cocoa/animatable_image_unittest.mm',
1548         'browser/ui/cocoa/animatable_view_unittest.mm',
1549         'browser/ui/cocoa/applescript/bookmark_applescript_utils_unittest.h',
1550         'browser/ui/cocoa/applescript/bookmark_applescript_utils_unittest.mm',
1551         'browser/ui/cocoa/applescript/bookmark_item_applescript_unittest.mm',
1552         'browser/ui/cocoa/applescript/bookmark_folder_applescript_unittest.mm',
1553         'browser/ui/cocoa/background_gradient_view_unittest.mm',
1554         'browser/ui/cocoa/background_tile_view_unittest.mm',
1555         'browser/ui/cocoa/base_view_unittest.mm',
1556         'browser/ui/cocoa/bookmarks/bookmark_all_tabs_controller_unittest.mm',
1557         'browser/ui/cocoa/bookmarks/bookmark_bar_bridge_unittest.mm',
1558         'browser/ui/cocoa/bookmarks/bookmark_bar_controller_unittest.mm',
1559         'browser/ui/cocoa/bookmarks/bookmark_bar_folder_button_cell_unittest.mm',
1560         'browser/ui/cocoa/bookmarks/bookmark_bar_folder_controller_unittest.mm',
1561         'browser/ui/cocoa/bookmarks/bookmark_bar_folder_hover_state_unittest.mm',
1562         'browser/ui/cocoa/bookmarks/bookmark_bar_folder_view_unittest.mm',
1563         'browser/ui/cocoa/bookmarks/bookmark_bar_folder_window_unittest.mm',
1564         'browser/ui/cocoa/bookmarks/bookmark_bar_toolbar_view_unittest.mm',
1565         'browser/ui/cocoa/bookmarks/bookmark_bar_unittest_helper.h',
1566         'browser/ui/cocoa/bookmarks/bookmark_bar_unittest_helper.mm',
1567         'browser/ui/cocoa/bookmarks/bookmark_bar_view_unittest.mm',
1568         'browser/ui/cocoa/bookmarks/bookmark_bubble_controller_unittest.mm',
1569         'browser/ui/cocoa/bookmarks/bookmark_button_cell_unittest.mm',
1570         'browser/ui/cocoa/bookmarks/bookmark_button_unittest.mm',
1571         'browser/ui/cocoa/bookmarks/bookmark_editor_base_controller_unittest.mm',
1572         'browser/ui/cocoa/bookmarks/bookmark_editor_controller_unittest.mm',
1573         'browser/ui/cocoa/bookmarks/bookmark_folder_target_unittest.mm',
1574         'browser/ui/cocoa/bookmarks/bookmark_menu_bridge_unittest.mm',
1575         'browser/ui/cocoa/bookmarks/bookmark_menu_cocoa_controller_unittest.mm',
1576         'browser/ui/cocoa/bookmarks/bookmark_menu_unittest.mm',
1577         'browser/ui/cocoa/bookmarks/bookmark_model_observer_for_cocoa_unittest.mm',
1578         'browser/ui/cocoa/bookmarks/bookmark_name_folder_controller_unittest.mm',
1579         'browser/ui/cocoa/bookmarks/bookmark_tree_browser_cell_unittest.mm',
1580         'browser/ui/cocoa/browser_frame_view_unittest.mm',
1581         'browser/ui/cocoa/browser_window_cocoa_unittest.mm',
1582         'browser/ui/cocoa/browser_window_controller_unittest.mm',
1583         'browser/ui/cocoa/bubble_view_unittest.mm',
1584         'browser/ui/cocoa/bug_report_window_controller_unittest.mm',
1585         'browser/ui/cocoa/chrome_browser_window_unittest.mm',
1586         'browser/ui/cocoa/chrome_event_processing_window_unittest.mm',
1587         'browser/ui/cocoa/clickhold_button_cell_unittest.mm',
1588         'browser/ui/cocoa/cocoa_test_helper.h',
1589         'browser/ui/cocoa/cocoa_test_helper.mm',
1590         'browser/ui/cocoa/command_observer_bridge_unittest.mm',
1591         'browser/ui/cocoa/confirm_quit_panel_controller_unittest.mm',
1592         'browser/ui/cocoa/content_settings/collected_cookies_mac_unittest.mm',
1593         'browser/ui/cocoa/content_settings/content_setting_bubble_cocoa_unittest.mm',
1594         'browser/ui/cocoa/content_settings/cookie_details_unittest.mm',
1595         'browser/ui/cocoa/content_settings/cookie_details_view_controller_unittest.mm',
1596         'browser/ui/cocoa/download/download_item_button_unittest.mm',
1597         'browser/ui/cocoa/download/download_shelf_mac_unittest.mm',
1598         'browser/ui/cocoa/download/download_shelf_view_unittest.mm',
1599         'browser/ui/cocoa/download/download_util_mac_unittest.mm',
1600         'browser/ui/cocoa/draggable_button_unittest.mm',
1601         'browser/ui/cocoa/event_utils_unittest.mm',
1602         'browser/ui/cocoa/extensions/browser_actions_container_view_unittest.mm',
1603         'browser/ui/cocoa/extensions/chevron_menu_button_unittest.mm',
1604         'browser/ui/cocoa/extensions/extension_install_prompt_controller_unittest.mm',
1605         'browser/ui/cocoa/extensions/extension_installed_bubble_controller_unittest.mm',
1606         'browser/ui/cocoa/extensions/extension_popup_controller_unittest.mm',
1607         'browser/ui/cocoa/fast_resize_view_unittest.mm',
1608         'browser/ui/cocoa/find_bar/find_bar_bridge_unittest.mm',
1609         'browser/ui/cocoa/find_bar/find_bar_cocoa_controller_unittest.mm',
1610         'browser/ui/cocoa/find_bar/find_bar_text_field_cell_unittest.mm',
1611         'browser/ui/cocoa/find_bar/find_bar_text_field_unittest.mm',
1612         'browser/ui/cocoa/find_bar/find_bar_view_unittest.mm',
1613         'browser/ui/cocoa/find_pasteboard_unittest.mm',
1614         'browser/ui/cocoa/first_run_bubble_controller_unittest.mm',
1615         'browser/ui/cocoa/floating_bar_backing_view_unittest.mm',
1616         'browser/ui/cocoa/focus_tracker_unittest.mm',
1617         'browser/ui/cocoa/framed_browser_window_unittest.mm',
1618         'browser/ui/cocoa/fullscreen_window_unittest.mm',
1619         'browser/ui/cocoa/gradient_button_cell_unittest.mm',
1620         'browser/ui/cocoa/history_menu_bridge_unittest.mm',
1621         'browser/ui/cocoa/history_menu_cocoa_controller_unittest.mm',
1622         'browser/ui/cocoa/hover_image_button_unittest.mm',
1623         'browser/ui/cocoa/html_dialog_window_controller_unittest.mm',
1624         'browser/ui/cocoa/hung_renderer_controller_unittest.mm',
1625         'browser/ui/cocoa/hyperlink_button_cell_unittest.mm',
1626         'browser/ui/cocoa/image_utils_unittest.mm',
1627         'browser/ui/cocoa/info_bubble_view_unittest.mm',
1628         'browser/ui/cocoa/info_bubble_window_unittest.mm',
1629         'browser/ui/cocoa/infobars/infobar_container_controller_unittest.mm',
1630         'browser/ui/cocoa/infobars/infobar_controller_unittest.mm',
1631         'browser/ui/cocoa/infobars/infobar_gradient_view_unittest.mm',
1632         'browser/ui/cocoa/location_bar/autocomplete_text_field_cell_unittest.mm',
1633         'browser/ui/cocoa/location_bar/autocomplete_text_field_editor_unittest.mm',
1634         'browser/ui/cocoa/location_bar/autocomplete_text_field_unittest.mm',
1635         'browser/ui/cocoa/location_bar/autocomplete_text_field_unittest_helper.mm',
1636         'browser/ui/cocoa/location_bar/ev_bubble_decoration_unittest.mm',
1637         'browser/ui/cocoa/location_bar/image_decoration_unittest.mm',
1638         'browser/ui/cocoa/location_bar/instant_opt_in_controller_unittest.mm',
1639         'browser/ui/cocoa/location_bar/instant_opt_in_view_unittest.mm',
1640         'browser/ui/cocoa/location_bar/keyword_hint_decoration_unittest.mm',
1641         'browser/ui/cocoa/location_bar/omnibox_popup_view_unittest.mm',
1642         'browser/ui/cocoa/location_bar/selected_keyword_decoration_unittest.mm',
1643         'browser/ui/cocoa/menu_button_unittest.mm',
1644         'browser/ui/cocoa/menu_controller_unittest.mm',
1645         'browser/ui/cocoa/notifications/balloon_controller_unittest.mm',
1646         'browser/ui/cocoa/nsimage_cache_unittest.mm',
1647         'browser/ui/cocoa/nsmenuitem_additions_unittest.mm',
1648         'browser/ui/cocoa/objc_method_swizzle_unittest.mm',
1649         'browser/ui/cocoa/page_info_bubble_controller_unittest.mm',
1650         'browser/ui/cocoa/profile_menu_button_unittest.mm',
1651         'browser/ui/cocoa/rwhvm_editcommand_helper_unittest.mm',
1652         'browser/ui/cocoa/status_bubble_mac_unittest.mm',
1653         'browser/ui/cocoa/status_icons/status_icon_mac_unittest.mm',
1654         'browser/ui/cocoa/styled_text_field_cell_unittest.mm',
1655         'browser/ui/cocoa/styled_text_field_test_helper.h',
1656         'browser/ui/cocoa/styled_text_field_test_helper.mm',
1657         'browser/ui/cocoa/styled_text_field_unittest.mm',
1658         'browser/ui/cocoa/tab_contents/previewable_contents_controller_unittest.mm',
1659         'browser/ui/cocoa/tab_contents/sad_tab_controller_unittest.mm',
1660         'browser/ui/cocoa/tab_contents/sad_tab_view_unittest.mm',
1661         'browser/ui/cocoa/tab_contents/web_drop_target_unittest.mm',
1662         'browser/ui/cocoa/tabs/side_tab_strip_view_unittest.mm',
1663         'browser/ui/cocoa/tabs/tab_controller_unittest.mm',
1664         'browser/ui/cocoa/tabs/tab_strip_controller_unittest.mm',
1665         'browser/ui/cocoa/tabs/tab_strip_view_unittest.mm',
1666         'browser/ui/cocoa/tabs/tab_view_unittest.mm',
1667         'browser/ui/cocoa/tabs/throbber_view_unittest.mm',
1668         'browser/ui/cocoa/tab_view_picker_table_unittest.mm',
1669         'browser/ui/cocoa/table_model_array_controller_unittest.mm',
1670         'browser/ui/cocoa/table_row_nsimage_cache_unittest.mm',
1671         'browser/ui/cocoa/tabpose_window_unittest.mm',
1672         'browser/ui/cocoa/task_manager_mac_unittest.mm',
1673         'browser/ui/cocoa/test_event_utils.h',
1674         'browser/ui/cocoa/test_event_utils.mm',
1675         'browser/ui/cocoa/toolbar/reload_button_unittest.mm',
1676         'browser/ui/cocoa/toolbar/toolbar_button_unittest.mm',
1677         'browser/ui/cocoa/toolbar/toolbar_controller_unittest.mm',
1678         'browser/ui/cocoa/toolbar/toolbar_view_unittest.mm',
1679         'browser/ui/cocoa/tracking_area_unittest.mm',
1680         'browser/ui/cocoa/translate/translate_infobar_unittest.mm',
1681         'browser/ui/cocoa/vertical_gradient_view_unittest.mm',
1682         'browser/ui/cocoa/view_resizer_pong.h',
1683         'browser/ui/cocoa/view_resizer_pong.mm',
1684         'browser/ui/cocoa/window_size_autosaver_unittest.mm',
1685         'browser/ui/cocoa/wrench_menu/menu_tracked_button_unittest.mm',
1686         'browser/ui/cocoa/wrench_menu/menu_tracked_root_view_unittest.mm',
1687         'browser/ui/cocoa/wrench_menu/wrench_menu_button_cell_unittest.mm',
1688         'browser/ui/cocoa/wrench_menu/wrench_menu_controller_unittest.mm',
1689         'browser/ui/find_bar/find_backend_unittest.cc',
1690         'browser/ui/login/login_prompt_unittest.cc',
1691         'browser/ui/search_engines/keyword_editor_controller_unittest.cc',
1692         'browser/ui/tabs/dock_info_unittest.cc',
1693         'browser/ui/tabs/tab_menu_model_unittest.cc',
1694         'browser/ui/tests/ui_gfx_image_unittest.cc',
1695         'browser/ui/tests/ui_gfx_image_unittest.mm',
1696         'browser/ui/title_prefix_matcher_unittest.cc',
1697         'browser/ui/toolbar/back_forward_menu_model_unittest.cc',
1698         'browser/ui/toolbar/encoding_menu_controller_unittest.cc',
1699         'browser/ui/toolbar/wrench_menu_model_unittest.cc',
1700         'browser/ui/views/accessibility_event_router_views_unittest.cc',
1701         'browser/ui/views/bookmarks/bookmark_bar_view_unittest.cc',
1702         'browser/ui/views/bookmarks/bookmark_context_menu_test.cc',
1703         'browser/ui/views/bookmarks/bookmark_editor_view_unittest.cc',
1704         'browser/ui/views/extensions/browser_action_drag_data_unittest.cc',
1705         'browser/ui/views/generic_info_view_unittest.cc',
1706         'browser/ui/views/info_bubble_unittest.cc',
1707         'browser/ui/views/reload_button_unittest.cc',
1708         'browser/ui/views/shell_dialogs_win_unittest.cc',
1709         'browser/ui/views/status_icons/status_tray_win_unittest.cc',
1710         'browser/ui/webui/chromeos/login/authenticator_facade_cros_unittest.cc',
1711         'browser/ui/webui/chromeos/login/login_ui_unittest.cc',
1712         'browser/ui/webui/chromeos/login/mock_authenticator_facade_cros.h',
1713         'browser/ui/webui/chromeos/login/mock_authenticator_facade_cros_helpers.h',
1714         'browser/ui/webui/chromeos/login/mock_login_ui_helpers.h',
1715         'browser/ui/webui/html_dialog_tab_contents_delegate_unittest.cc',
1716         'browser/ui/webui/options/language_options_handler_unittest.cc',
1717         'browser/ui/webui/print_preview_ui_html_source_unittest.cc',
1718         'browser/ui/webui/shown_sections_handler_unittest.cc',
1719         'browser/ui/webui/sync_internals_ui_unittest.cc',
1720         'browser/ui/webui/theme_source_unittest.cc',
1721         'browser/ui/window_sizer_unittest.cc',
1722         'browser/ui/window_snapshot/window_snapshot_mac_unittest.mm',
1723         'browser/user_style_sheet_watcher_unittest.cc',
1724         'browser/visitedlink/visitedlink_unittest.cc',
1725         'browser/web_applications/web_app_unittest.cc',
1726         'browser/webdata/web_data_service_test_util.h',
1727         'browser/webdata/web_data_service_unittest.cc',
1728         'browser/webdata/web_database_unittest.cc',
1729         'browser/web_resource/promo_resource_service_unittest.cc',
1730         'common/bzip2_unittest.cc',
1731         'common/child_process_logging_mac_unittest.mm',
1732         'common/chrome_paths_unittest.cc',
1733         'common/common_param_traits_unittest.cc',
1734         'common/content_settings_helper_unittest.cc',
1735         'common/deprecated/event_sys_unittest.cc',
1736         'common/extensions/extension_action_unittest.cc',
1737         'common/extensions/extension_extent_unittest.cc',
1738         'common/extensions/extension_file_util_unittest.cc',
1739         'common/extensions/extension_icon_set_unittest.cc',
1740         'common/extensions/extension_l10n_util_unittest.cc',
1741         'common/extensions/extension_localization_peer_unittest.cc',
1742         'common/extensions/extension_manifests_unittest.cc',
1743         'common/extensions/extension_message_bundle_unittest.cc',
1744         'common/extensions/extension_resource_unittest.cc',
1745         'common/extensions/extension_unittest.cc',
1746         'common/extensions/extension_set_unittest.cc',
1747         'common/extensions/extension_unpacker_unittest.cc',
1748         'common/extensions/update_manifest_unittest.cc',
1749         'common/extensions/url_pattern_unittest.cc',
1750         'common/extensions/user_script_unittest.cc',
1751         'common/guid_unittest.cc',
1752         'common/important_file_writer_unittest.cc',
1753         'common/json_pref_store_unittest.cc',
1754         'common/json_schema_validator_unittest_base.cc',
1755         'common/json_schema_validator_unittest_base.h',
1756         'common/json_schema_validator_unittest.cc',
1757         'common/json_value_serializer_unittest.cc',
1758         'common/multi_process_lock_unittest.cc',
1759         'common/net/gaia/gaia_auth_fetcher_unittest.cc',
1760         'common/net/gaia/gaia_auth_fetcher_unittest.h',
1761         'common/net/gaia/gaia_authenticator_unittest.cc',
1762         'common/net/gaia/gaia_oauth_client_unittest.cc',
1763         'common/net/gaia/google_service_auth_error_unittest.cc',
1764         'common/net/url_fetcher_unittest.cc',
1765         'common/service_process_util_unittest.cc',
1766         'common/switch_utils_unittest.cc',
1767         'common/thumbnail_score_unittest.cc',
1768         'common/time_format_unittest.cc',
1769         'common/web_apps_unittest.cc',
1770         'common/worker_thread_ticker_unittest.cc',
1771         'common/zip_unittest.cc',
1772         'renderer/extensions/extension_api_json_validity_unittest.cc',
1773         'renderer/extensions/json_schema_unittest.cc',
1774         'renderer/net/predictor_queue_unittest.cc',
1775         'renderer/net/renderer_predictor_unittest.cc',
1776         'renderer/render_process_unittest.cc',
1777         'renderer/render_thread_unittest.cc',
1778         'renderer/renderer_about_handler_unittest.cc',
1779         'renderer/renderer_main_unittest.cc',
1780         'renderer/safe_browsing/features_unittest.cc',
1781         'renderer/safe_browsing/phishing_term_feature_extractor_unittest.cc',
1782         'renderer/safe_browsing/phishing_url_feature_extractor_unittest.cc',
1783         'renderer/safe_browsing/scorer_unittest.cc',
1784         'renderer/spellchecker/spellcheck_unittest.cc',
1785         'renderer/spellchecker/spellcheck_provider_unittest.cc',
1786         'renderer/spellchecker/spellcheck_worditerator_unittest.cc',
1787         'service/cloud_print/cloud_print_helpers_unittest.cc',
1788         'service/cloud_print/cloud_print_url_fetcher_unittest.cc',
1789         'service/service_process_unittest.cc',
1790         'test/browser_with_test_window_test.cc',
1791         'test/browser_with_test_window_test.h',
1792         'test/data/resource.rc',
1793         'test/file_test_utils.cc',
1794         'test/file_test_utils.h',
1795         'test/menu_model_test.cc',
1796         'test/menu_model_test.h',
1797         'test/render_view_test.cc',
1798         'test/render_view_test.h',
1799         'test/sync/test_http_bridge_factory.cc',
1800         'test/sync/test_http_bridge_factory.h',
1801         'test/test_notification_tracker.cc',
1802         'test/test_notification_tracker.h',
1803         'test/v8_unit_test.cc',
1804         'test/v8_unit_test.h',
1805         'tools/convert_dict/convert_dict_unittest.cc',
1806         '../content/browser/appcache/chrome_appcache_service_unittest.cc',
1807         '../content/browser/browser_thread_unittest.cc',
1808         '../content/browser/child_process_security_policy_unittest.cc',
1809         '../content/browser/device_orientation/provider_unittest.cc',
1810         '../content/browser/geolocation/device_data_provider_unittest.cc',
1811         '../content/browser/geolocation/fake_access_token_store.cc',
1812         '../content/browser/geolocation/fake_access_token_store.h',
1813         '../content/browser/geolocation/gateway_data_provider_common_unittest.cc',
1814         '../content/browser/geolocation/geolocation_provider_unittest.cc',
1815         '../content/browser/geolocation/gps_location_provider_unittest_linux.cc',
1816         '../content/browser/geolocation/location_arbitrator_unittest.cc',
1817         '../content/browser/geolocation/network_location_provider_unittest.cc',
1818         '../content/browser/geolocation/wifi_data_provider_common_unittest.cc',
1819         '../content/browser/geolocation/wifi_data_provider_unittest_chromeos.cc',
1820         '../content/browser/geolocation/wifi_data_provider_unittest_win.cc',
1821         '../content/browser/geolocation/win7_location_api_unittest_win.cc',
1822         '../content/browser/geolocation/win7_location_provider_unittest_win.cc',
1823         '../content/browser/gpu_blacklist_unittest.cc',
1824         '../content/browser/host_zoom_map_unittest.cc',
1825         '../content/browser/in_process_webkit/webkit_context_unittest.cc',
1826         '../content/browser/in_process_webkit/webkit_thread_unittest.cc',
1827         '../content/browser/plugin_service_unittest.cc',
1828         '../content/browser/renderer_host/audio_renderer_host_unittest.cc',
1829         '../content/browser/renderer_host/render_view_host_unittest.cc',
1830         '../content/browser/renderer_host/render_widget_host_unittest.cc',
1831         '../content/browser/renderer_host/resource_dispatcher_host_unittest.cc',
1832         '../content/browser/renderer_host/resource_queue_unittest.cc',
1833         '../content/browser/site_instance_unittest.cc',
1834         '../content/browser/speech/endpointer/endpointer_unittest.cc',
1835         '../content/browser/speech/speech_recognition_request_unittest.cc',
1836         '../content/browser/speech/speech_recognizer_unittest.cc',
1837         '../content/browser/tab_contents/navigation_controller_unittest.cc',
1838         '../content/browser/tab_contents/navigation_entry_unittest.cc',
1839         '../content/browser/tab_contents/render_view_host_manager_unittest.cc',
1840         '../content/browser/webui/web_ui_unittest.cc',
1841         '../content/common/font_descriptor_mac_unittest.mm',
1842         '../content/common/gpu_feature_flags_unittest.cc',
1843         '../content/common/gpu_info_unittest.cc',
1844         '../content/common/mru_cache_unittest.cc',
1845         '../content/common/notification_service_unittest.cc',
1846         '../content/common/process_watcher_unittest.cc',
1847         '../content/common/property_bag_unittest.cc',
1848         '../content/common/resource_dispatcher_unittest.cc',
1849         '../content/common/sandbox_mac_diraccess_unittest.mm',
1850         '../content/common/sandbox_mac_fontloading_unittest.mm',
1851         '../content/common/sandbox_mac_unittest_helper.h',
1852         '../content/common/sandbox_mac_unittest_helper.mm',
1853         '../content/common/sandbox_mac_system_access_unittest.mm',
1854         '../content/gpu/gpu_idirect3d9_mock_win.cc',
1855         '../content/gpu/gpu_idirect3d9_mock_win.h',
1856         '../content/gpu/gpu_info_collector_unittest.cc',
1857         '../content/gpu/gpu_info_unittest_win.cc',
1858         '../content/gpu/gpu_video_decoder_unittest.cc',
1859         '../content/renderer/active_notification_tracker_unittest.cc',
1860         '../content/renderer/audio_message_filter_unittest.cc',
1861         '../content/renderer/gpu_video_decoder_host_unittest.cc',
1862         '../content/renderer/media/audio_renderer_impl_unittest.cc',
1863         '../content/renderer/paint_aggregator_unittest.cc',
1864         '../content/renderer/render_widget_unittest.cc',
1865         '../testing/gtest_mac_unittest.mm',
1866         '../third_party/cld/encodings/compact_lang_det/compact_lang_det_unittest_small.cc',
1867         '../webkit/fileapi/file_system_dir_url_request_job_unittest.cc',
1868         '../webkit/fileapi/file_system_url_request_job_unittest.cc',
1869       ],
1870       'conditions': [
1871         ['touchui==0', {
1872           'sources/': [
1873             ['exclude', '^browser/ui/webui/chromeos/login/'],
1874           ],
1875         }],
1876         ['chromeos==1', {
1877           'conditions': [
1878             ['touchui==1', {
1879               'sources/': [
1880                 ['include', 'browser/ui/webui/chromeos/login/authenticator_facade_cros_unittest.cc'],
1881                 ['include', 'browser/ui/webui/chromeos/login/login_ui_unittest.cc'],
1882                 ['include', 'browser/ui/webui/chromeos/login/mock_authenticator_facade_cros.h'],
1883                 ['include', 'browser/ui/webui/chromeos/login/mock_authenticator_facade_cros_helpers.h'],
1884                 ['include', 'browser/ui/webui/chromeos/login/mock_login_ui_helpers.h'],
1885               ],
1886              }],
1887            ],
1888           'sources/': [
1889             # TODO(thestig) Enable PrintPreviewUIHTMLSource tests on CrOS when
1890             # print preview is enabled on CrOS.
1891             ['exclude', 'browser/notifications/desktop_notifications_unittest.cc'],
1892             ['exclude', 'browser/ui/webui/print_preview_ui_html_source_unittest.cc'],
1893           ],
1894         }, { # else: chromeos == 0
1895           'sources/': [
1896             ['exclude', '^browser/chromeos/'],
1897             ['exclude', '^browser/policy/device_policy_cache_unittest.cc'],
1898             ['exclude', '^browser/ui/webui/chromeos/login'],
1899           ],
1900         }],
1901         ['OS=="linux"', {
1902           'conditions': [
1903             ['gcc_version==44', {
1904               # Avoid gcc 4.4 strict aliasing issues in stl_tree.h when
1905               # building mru_cache_unittest.cc.
1906               'cflags': [
1907                 '-fno-strict-aliasing',
1908               ],
1909             }],
1910             ['selinux==0', {
1911               'dependencies': [
1912                 '../sandbox/sandbox.gyp:*',
1913               ],
1914             }],
1915             ['toolkit_views==1', {
1916               'sources!': [
1917                  'browser/autocomplete/autocomplete_popup_view_gtk_unittest.cc',
1918                  'browser/ui/gtk/bookmarks/bookmark_bar_gtk_unittest.cc',
1919                  'browser/ui/gtk/bookmarks/bookmark_editor_gtk_unittest.cc',
1920                  'browser/ui/gtk/gtk_chrome_shrinkable_hbox_unittest.cc',
1921                  'browser/ui/gtk/gtk_expanded_container_unittest.cc',
1922                  'browser/ui/gtk/gtk_theme_service_unittest.cc',
1923                  'browser/ui/gtk/options/cookies_view_unittest.cc',
1924                  'browser/ui/gtk/options/languages_page_gtk_unittest.cc',
1925                  'browser/ui/gtk/reload_button_gtk_unittest.cc',
1926                  'browser/ui/gtk/status_icons/status_tray_gtk_unittest.cc',
1927               ],
1928             }],
1929           ],
1930           'dependencies': [
1931             '../build/linux/system.gyp:gtk',
1932             '../build/linux/system.gyp:nss',
1933             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
1934           ],
1935           'sources!': [
1936             'browser/printing/print_job_unittest.cc',
1937           ],
1938         }, { # else: OS != "linux"
1939           'sources!': [
1940             'browser/ui/gtk/tabs/tab_renderer_gtk_unittest.cc',
1941             'browser/renderer_host/gtk_key_bindings_handler_unittest.cc',
1942             '../views/focus/accelerator_handler_gtk_unittest.cc',
1943           ],
1944         }],
1945         ['OS=="linux" or OS=="freebsd"', {
1946           'conditions': [
1947             ['linux_use_tcmalloc==1', {
1948               'dependencies': [
1949                 '../base/allocator/allocator.gyp:allocator',
1950               ],
1951             }],
1952           ],
1953         }],
1954         ['OS=="mac"', {
1955            # The test fetches resources which means Mac need the app bundle to
1956            # exist on disk so it can pull from it.
1957           'dependencies': [
1958             'chrome',
1959             '../third_party/ocmock/ocmock.gyp:ocmock',
1960           ],
1961           'include_dirs': [
1962             '../third_party/GTM',
1963             '../third_party/GTM/AppKit',
1964           ],
1965           'sources!': [
1966             # Blocked on bookmark manager.
1967             'browser/bookmarks/bookmark_context_menu_controller_unittest.cc',
1968             'browser/ui/tabs/dock_info_unittest.cc',
1969             'browser/ui/tests/ui_gfx_image_unittest.cc',
1970             'browser/ui/gtk/reload_button_gtk_unittest.cc',
1971             'browser/password_manager/password_store_default_unittest.cc',
1972             'tools/convert_dict/convert_dict_unittest.cc',
1973             '../third_party/hunspell/google/hunspell_tests.cc',
1974           ],
1975           # TODO(mark): We really want this for all non-static library targets,
1976           # but when we tried to pull it up to the common.gypi level, it broke
1977           # other things like the ui, startup, and page_cycler tests. *shrug*
1978           'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']},
1980           # libwebcore.a is so large that ld may not have a sufficiently large
1981           # "hole" in its address space into which it can be mmaped by the
1982           # time it reaches this library. As of May 10, 2010, libwebcore.a is
1983           # about 1GB in some builds. In the Mac OS X 10.5 toolchain, using
1984           # Xcode 3.1, ld is only a 32-bit executable, and address space
1985           # exhaustion is the result, with ld failing and producing
1986           # the message:
1987           # ld: in .../libwebcore.a, can't map file, errno=12
1988           #
1989           # As a workaround, ensure that libwebcore.a appears to ld first when
1990           # linking unit_tests. This allows the library to be mmapped when
1991           # ld's address space is "wide open." Other libraries are small
1992           # enough that they'll be able to "squeeze" into the remaining holes.
1993           # The Mac linker isn't so sensitive that moving this library to the
1994           # front of the list will cause problems.
1995           #
1996           # Enough pluses to make get this target prepended to the target's
1997           # list of dependencies.
1998           'dependencies+++': [
1999             '../third_party/WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp:webcore',
2000           ],
2001         }, { # OS != "mac"
2002           'dependencies': [
2003             'convert_dict_lib',
2004             '../third_party/hunspell/hunspell.gyp:hunspell',
2005           ],
2006           'sources!': [
2007             'browser/spellchecker_platform_engine_unittest.cc',
2008           ],
2009         }],
2010         ['OS=="win"', {
2011           'dependencies': [
2012             'chrome_dll_version',
2013             'installer_util_strings',
2014             '../third_party/iaccessible2/iaccessible2.gyp:iaccessible2',
2015             '../third_party/isimpledom/isimpledom.gyp:isimpledom',
2016           ],
2017           'conditions': [
2018             ['win_use_allocator_shim==1', {
2019               'dependencies': [
2020                 '<(allocator_target)',
2021               ],
2022             }],
2023           ],
2024           'include_dirs': [
2025             '<(DEPTH)/third_party/wtl/include',
2026           ],
2027           'sources': [
2028             # TODO:  It would be nice to have these pulled in
2029             # automatically from direct_dependent_settings in
2030             # their various targets (net.gyp:net_resources, etc.),
2031             # but that causes errors in other targets when
2032             # resulting .res files get referenced multiple times.
2033             '<(SHARED_INTERMEDIATE_DIR)/app/app_resources/app_resources.rc',
2034             '<(SHARED_INTERMEDIATE_DIR)/chrome/autofill_resources.rc',
2035             '<(SHARED_INTERMEDIATE_DIR)/chrome/browser_resources.rc',
2036             '<(SHARED_INTERMEDIATE_DIR)/chrome/common_resources.rc',
2037             '<(SHARED_INTERMEDIATE_DIR)/chrome/renderer_resources.rc',
2038             '<(SHARED_INTERMEDIATE_DIR)/chrome/theme_resources.rc',
2039             '<(SHARED_INTERMEDIATE_DIR)/chrome_dll_version/chrome_dll_version.rc',
2040             '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc',
2041             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.rc',
2042             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_resources.rc',
2043           ],
2044           'link_settings': {
2045             'libraries': [
2046               '-lcomsupp.lib',
2047               '-loleacc.lib',
2048               '-lrpcrt4.lib',
2049               '-lurlmon.lib',
2050               '-lwinmm.lib',
2051             ],
2052           },
2053           'configurations': {
2054             'Debug_Base': {
2055               'msvs_settings': {
2056                 'VCLinkerTool': {
2057                   # Forcing incremental build off to try to avoid incremental
2058                   # linking errors on 64-bit bots too. http://crbug.com/52555
2059                   'LinkIncremental': '1',
2060                 },
2061               },
2062             },
2063           },
2064         }, { # else: OS != "win"
2065           'sources!': [
2066             'app/chrome_dll.rc',
2067             'browser/accessibility/browser_accessibility_win_unittest.cc',
2068             'browser/bookmarks/bookmark_codec_unittest.cc',
2069             'browser/bookmarks/bookmark_node_data_unittest.cc',
2070             'browser/chrome_plugin_unittest.cc',
2071             'browser/extensions/extension_process_manager_unittest.cc',
2072             'browser/login_prompt_unittest.cc',
2073             'browser/rlz/rlz_unittest.cc',
2074             'browser/search_engines/template_url_scraper_unittest.cc',
2075             'browser/ui/views/bookmarks/bookmark_editor_view_unittest.cc',
2076             'browser/ui/views/extensions/browser_action_drag_data_unittest.cc',
2077             'browser/ui/views/find_bar_host_unittest.cc',
2078             'browser/ui/views/generic_info_view_unittest.cc',
2079             'browser/ui/views/keyword_editor_view_unittest.cc',
2080             'test/data/resource.rc',
2081           ],
2082         }],
2083         ['toolkit_views==1', {
2084           'dependencies': [
2085             '../views/views.gyp:views',
2086           ],
2087           'sources!': [
2088             'browser/ui/gtk/tabs/tab_renderer_gtk_unittest.cc',
2089           ],
2090         }, { # else: toolkit_views == 0
2091           'sources/': [
2092             ['exclude', '^browser/ui/views/'],
2093             ['exclude', '^../views/'],
2094             ['exclude', '^browser/extensions/key_identifier_conversion_views_unittest.cc'],
2095           ],
2096         }],
2097         ['use_openssl==1', {
2098           'sources/': [
2099             # OpenSSL build does not support firefox importer. See
2100             # http://crbug.com/64926
2101             ['exclude', '^browser/importer/'],
2102           ],
2103         }],
2104       ],
2105     },
2106     {
2107       # Executable that runs each browser test in a new process.
2108       'target_name': 'browser_tests',
2109       'type': 'executable',
2110       'msvs_guid': 'D7589D0D-304E-4589-85A4-153B7D84B07F',
2111       'dependencies': [
2112         'browser',
2113         'browser/sync/protocol/sync_proto.gyp:sync_proto_cpp',
2114         'chrome',
2115         'chrome_resources',
2116         'chrome_strings',
2117         'profile_import',
2118         'renderer',
2119         'test_support_common',
2120         '../app/app.gyp:app_base',
2121         '../base/base.gyp:base',
2122         '../base/base.gyp:base_i18n',
2123         '../base/base.gyp:test_support_base',
2124         '../net/net.gyp:net_test_support',
2125         '../skia/skia.gyp:skia',
2126         '../testing/gmock.gyp:gmock',
2127         '../testing/gtest.gyp:gtest',
2128         '../third_party/cld/cld.gyp:cld',
2129         '../third_party/icu/icu.gyp:icui18n',
2130         '../third_party/icu/icu.gyp:icuuc',
2131         # Runtime dependencies
2132         'chrome_mesa',
2133       ],
2134       'include_dirs': [
2135         '..',
2136       ],
2137       'defines': [ 'ALLOW_IN_PROC_BROWSER_TEST' ],
2138       'sources': [
2139         'app/breakpad_mac_stubs.mm',
2140         'app/chrome_command_ids.h',
2141         'app/chrome_dll.rc',
2142         'app/chrome_dll_resource.h',
2143         'app/chrome_dll_version.rc.version',
2144         'browser/accessibility/renderer_accessibility_browsertest.cc',
2145         'browser/autocomplete/autocomplete_browsertest.cc',
2146         'browser/autofill/form_structure_browsertest.cc',
2147         'browser/browser_browsertest.cc',
2148         'browser/browsing_data_database_helper_browsertest.cc',
2149         'browser/browsing_data_helper_browsertest.h',
2150         'browser/browsing_data_indexed_db_helper_browsertest.cc',
2151         'browser/browsing_data_local_storage_helper_browsertest.cc',
2152         'browser/chromeos/cros/cros_in_process_browser_test.cc',
2153         'browser/chromeos/cros/cros_in_process_browser_test.h',
2154         'browser/chromeos/cros/cros_mock.cc',
2155         'browser/chromeos/cros/cros_mock.h',
2156         'browser/chromeos/cros/mock_cros_library.h',
2157         'browser/chromeos/cros/mock_cryptohome_library.h',
2158         'browser/chromeos/cros/mock_keyboard_library.h',
2159         'browser/chromeos/cros/mock_input_method_library.h',
2160         'browser/chromeos/cros/mock_mount_library.cc',
2161         'browser/chromeos/cros/mock_mount_library.h',
2162         'browser/chromeos/cros/mock_network_library.h',
2163         'browser/chromeos/cros/mock_power_library.h',
2164         'browser/chromeos/cros/mock_speech_synthesis_library.h',
2165         'browser/chromeos/cros/mock_system_library.h',
2166         'browser/chromeos/cros/mock_touchpad_library.h',
2167         'browser/chromeos/login/enterprise_enrollment_screen_browsertest.cc',
2168         'browser/chromeos/login/existing_user_controller_browsertest.cc',
2169         'browser/chromeos/login/login_browsertest.cc',
2170         'browser/chromeos/login/mock_authenticator.h',
2171         'browser/chromeos/login/network_screen_browsertest.cc',
2172         'browser/chromeos/login/screen_locker_browsertest.cc',
2173         'browser/chromeos/login/screen_locker_tester.cc',
2174         'browser/chromeos/login/screen_locker_tester.h',
2175         'browser/chromeos/login/update_screen_browsertest.cc',
2176         'browser/chromeos/login/wizard_controller_browsertest.cc',
2177         'browser/chromeos/login/wizard_in_process_browser_test.cc',
2178         'browser/chromeos/login/wizard_in_process_browser_test.h',
2179         'browser/chromeos/network_state_notifier_browsertest.cc',
2180         'browser/chromeos/notifications/notification_browsertest.cc',
2181         'browser/chromeos/panels/panel_browsertest.cc',
2182         'browser/chromeos/status/clock_menu_button_browsertest.cc',
2183         'browser/chromeos/status/input_method_menu_button_browsertest.cc',
2184         'browser/chromeos/status/power_menu_button_browsertest.cc',
2185         'browser/chromeos/tab_closeable_state_watcher_browsertest.cc',
2186         'browser/chromeos/update_browsertest.cc',
2187         'browser/crash_recovery_browsertest.cc',
2188         'browser/download/download_browsertest.cc',
2189         'browser/download/save_page_browsertest.cc',
2190         'browser/extensions/alert_apitest.cc',
2191         'browser/extensions/all_urls_apitest.cc',
2192         'browser/extensions/app_background_page_apitest.cc',
2193         'browser/extensions/app_process_apitest.cc',
2194         'browser/extensions/autoupdate_interceptor.cc',
2195         'browser/extensions/autoupdate_interceptor.h',
2196         'browser/extensions/browser_action_apitest.cc',
2197         'browser/extensions/browser_action_test_util.h',
2198         'browser/extensions/browser_action_test_util_gtk.cc',
2199         'browser/extensions/browser_action_test_util_mac.mm',
2200         'browser/extensions/browser_action_test_util_views.cc',
2201         'browser/extensions/content_script_apitest.cc',
2202         'browser/extensions/convert_web_app_browsertest.cc',
2203         'browser/extensions/cross_origin_xhr_apitest.cc',
2204         'browser/extensions/crx_installer_browsertest.cc',
2205         'browser/extensions/events_apitest.cc',
2206         'browser/extensions/extension_devtools_browsertest.cc',
2207         'browser/extensions/extension_devtools_browsertest.h',
2208         'browser/extensions/extension_devtools_browsertests.cc',
2209         'browser/extensions/execute_script_apitest.cc',
2210         'browser/extensions/extension_apitest.cc',
2211         'browser/extensions/extension_apitest.h',
2212         'browser/extensions/extension_bookmarks_apitest.cc',
2213         'browser/extensions/extension_bookmarks_unittest.cc',
2214         'browser/extensions/extension_bookmark_manager_apitest.cc',
2215         'browser/extensions/extension_browsertest.cc',
2216         'browser/extensions/extension_browsertest.h',
2217         'browser/extensions/extension_browsertests_misc.cc',
2218         'browser/extensions/extension_clipboard_apitest.cc',
2219         'browser/extensions/extension_content_settings_apitest.cc',
2220         'browser/extensions/extension_context_menu_apitest.cc',
2221         'browser/extensions/extension_context_menu_browsertest.cc',
2222         'browser/extensions/extension_cookies_apitest.cc',
2223         'browser/extensions/extension_cookies_unittest.cc',
2224         'browser/extensions/extension_crash_recovery_browsertest.cc',
2225         'browser/extensions/extension_debugger_apitest.cc',
2226         'browser/extensions/extension_fileapi_apitest.cc',
2227         'browser/extensions/extension_gallery_install_apitest.cc',
2228         'browser/extensions/extension_geolocation_apitest.cc',
2229         'browser/extensions/extension_get_views_apitest.cc',
2230         'browser/extensions/extension_history_apitest.cc',
2231         'browser/extensions/extension_i18n_apitest.cc',
2232         'browser/extensions/extension_icon_source_apitest.cc',
2233         'browser/extensions/extension_idle_apitest.cc',
2234         'browser/extensions/extension_incognito_apitest.cc',
2235         'browser/extensions/extension_info_private_apitest_chromeos.cc',
2236         'browser/extensions/extension_infobar_apitest.cc',
2237         'browser/extensions/extension_input_apitest.cc',
2238         'browser/extensions/extension_install_ui_browsertest.cc',
2239         'browser/extensions/extension_javascript_url_apitest.cc',
2240         'browser/extensions/extension_local_filesystem_apitest.cc',
2241         'browser/extensions/extension_management_api_browsertest.cc',
2242         'browser/extensions/extension_management_apitest.cc',
2243         'browser/extensions/extension_management_browsertest.cc',
2244         'browser/extensions/extension_messages_apitest.cc',
2245         'browser/extensions/extension_messages_browsertest.cc',
2246         'browser/extensions/extension_metrics_apitest.cc',
2247         'browser/extensions/extension_module_apitest.cc',
2248         'browser/extensions/extension_omnibox_apitest.cc',
2249         'browser/extensions/extension_override_apitest.cc',
2250         'browser/extensions/extension_processes_apitest.cc',
2251         'browser/extensions/extension_proxy_apitest.cc',
2252         'browser/extensions/extension_resource_request_policy_apitest.cc',
2253         'browser/extensions/extension_rlz_apitest.cc',
2254         'browser/extensions/extension_sidebar_apitest.cc',
2255         'browser/extensions/extension_startup_browsertest.cc',
2256         'browser/extensions/extension_storage_apitest.cc',
2257         'browser/extensions/extension_tabs_apitest.cc',
2258         'browser/extensions/extension_test_message_listener.cc',
2259         'browser/extensions/extension_test_message_listener.h',
2260         'browser/extensions/extension_toolbar_model_browsertest.cc',
2261         'browser/extensions/extension_tts_apitest.cc',
2262         'browser/extensions/extension_webglbackground_apitest.cc',
2263         'browser/extensions/extension_webnavigation_apitest.cc',
2264         'browser/extensions/extension_webrequest_apitest.cc',
2265         'browser/extensions/extension_websocket_apitest.cc',
2266         'browser/extensions/extension_webstore_private_browsertest.cc',
2267         'browser/extensions/isolated_app_apitest.cc',
2268         'browser/extensions/notifications_apitest.cc',
2269         'browser/extensions/page_action_apitest.cc',
2270         'browser/extensions/permissions_apitest.cc',
2271         'browser/extensions/stubs_apitest.cc',
2272         'browser/extensions/window_open_apitest.cc',
2273         'browser/first_run/first_run_browsertest.cc',
2274         'browser/geolocation/access_token_store_browsertest.cc',
2275         'browser/geolocation/geolocation_browsertest.cc',
2276         'browser/ui/gtk/view_id_util_browsertest.cc',
2277         'browser/history/history_browsertest.cc',
2278         'browser/idbbindingutilities_browsertest.cc',
2279         'browser/net/cookie_policy_browsertest.cc',
2280         'browser/net/ftp_browsertest.cc',
2281         'browser/plugin_data_remover_browsertest.cc',
2282         'browser/policy/device_management_backend_mock.cc',
2283         'browser/policy/device_management_backend_mock.h',
2284         'browser/policy/device_management_service_browsertest.cc',
2285         'browser/popup_blocker_browsertest.cc',
2286         'browser/prerender/prerender_browsertest.cc',
2287         'browser/printing/print_dialog_cloud_uitest.cc',
2288         'browser/renderer_host/web_cache_manager_browsertest.cc',
2289         'browser/safe_browsing/safe_browsing_blocking_page_test.cc',
2290         'browser/safe_browsing/safe_browsing_service_browsertest.cc',
2291         'browser/service/service_process_control_browsertest.cc',
2292         'browser/sessions/session_restore_browsertest.cc',
2293         'browser/sessions/tab_restore_service_browsertest.cc',
2294         'browser/speech/speech_input_bubble_browsertest.cc',
2295         'browser/ssl/ssl_browser_tests.cc',
2296         'browser/task_manager/task_manager_browsertest.cc',
2297         'browser/translate/translate_manager_browsertest.cc',
2298         'browser/ui/browser_init_browsertest.cc',
2299         'browser/ui/browser_navigator_browsertest.cc',
2300         'browser/ui/browser_navigator_browsertest.h',
2301         'browser/ui/browser_navigator_browsertest_chromeos.cc',
2302         'browser/ui/cocoa/view_id_util_browsertest.mm',
2303         'browser/ui/cocoa/applescript/browsercrapplication+applescript_test.mm',
2304         'browser/ui/cocoa/applescript/window_applescript_test.mm',
2305         'browser/ui/find_bar/find_bar_host_browsertest.cc',
2306         'browser/ui/login/login_prompt_browsertest.cc',
2307         'browser/ui/views/browser_actions_container_browsertest.cc',
2308         'browser/ui/views/dom_view_browsertest.cc',
2309         'browser/ui/views/html_dialog_view_browsertest.cc',
2310         'browser/ui/webui/chrome_url_data_manager_browsertest.cc',
2311         'browser/ui/webui/file_browse_browsertest.cc',
2312         'browser/ui/webui/mediaplayer_browsertest.cc',
2313         'browser/ui/webui/settings_browsertest.cc',
2314         'renderer/autofill/form_autocomplete_browsertest.cc',
2315         'renderer/autofill/form_manager_browsertest.cc',
2316         'renderer/autofill/password_autofill_manager_unittest.cc',
2317         'renderer/page_click_tracker_browsertest.cc',
2318         'renderer/safe_browsing/malware_dom_details_browsertest.cc',
2319         'renderer/safe_browsing/phishing_classifier_browsertest.cc',
2320         'renderer/safe_browsing/phishing_classifier_delegate_browsertest.cc',
2321         'renderer/safe_browsing/phishing_dom_feature_extractor_browsertest.cc',
2322         'renderer/safe_browsing/phishing_thumbnailer_browsertest.cc',
2323         'renderer/safe_browsing/render_view_fake_resources_test.cc',
2324         'renderer/safe_browsing/render_view_fake_resources_test.h',
2325         'renderer/translate_helper_browsertest.cc',
2326         'test/automation/dom_automation_browsertest.cc',
2327         'test/gpu/gpu_browsertest.cc',
2328         'test/out_of_proc_test_runner.cc',
2329         'test/render_view_test.cc',
2330         'test/render_view_test.h',
2331         '../content/browser/child_process_security_policy_browsertest.cc',
2332         '../content/browser/device_orientation/device_orientation_browsertest.cc',
2333         '../content/browser/in_process_webkit/dom_storage_browsertest.cc',
2334         '../content/browser/in_process_webkit/indexed_db_browsertest.cc',
2335         '../content/browser/plugin_service_browsertest.cc',
2336         '../content/browser/renderer_host/render_process_host_browsertest.cc',
2337         '../content/browser/renderer_host/render_view_host_browsertest.cc',
2338         '../content/browser/renderer_host/render_view_host_manager_browsertest.cc',
2339         '../content/browser/speech/speech_input_browsertest.cc',
2340         '../content/browser/webui/web_ui_browsertest.cc',
2341         '../content/browser/webui/web_ui_browsertest.h',
2342         '../content/browser/webui/web_ui_handler_browsertest.cc',
2343         '../content/browser/webui/web_ui_handler_browsertest.h',
2344         '../content/common/file_path_watcher/file_path_watcher_browsertest.cc',
2345         '../content/renderer/render_view_browsertest.cc',
2346         '../content/renderer/render_view_browsertest_mac.mm',
2347         '../content/renderer/render_widget_browsertest.cc',
2348         '../content/renderer/render_widget_browsertest.h',
2349       ],
2350       'conditions': [
2351         ['chromeos==0', {
2352           'sources/': [
2353             ['exclude', '^browser/chromeos'],
2354           ],
2355           'sources!': [
2356             'browser/ui/webui/file_browse_browsertest.cc',
2357             'browser/ui/webui/mediaplayer_browsertest.cc',
2358           ],
2359         }, { #else: OS == "chromeos"
2360           'sources!': [
2361             'browser/service/service_process_control_browsertest.cc',
2362           ],
2363         }],
2364         ['toolkit_views==0', {
2365           'sources!': [
2366             'browser/extensions/extension_input_apitest.cc',
2367           ],
2368         }],
2369         ['internal_pdf', {
2370           'sources': [
2371             'test/plugin/pdf_browsertest.cc',
2372           ],
2373         }],
2374         ['OS!="linux" or toolkit_views==1', {
2375           'sources!': [
2376             'browser/extensions/browser_action_test_util_gtk.cc',
2377             'browser/ui/gtk/view_id_util_browsertest.cc',
2378           ],
2379         }],
2380         ['OS=="win"', {
2381           'sources': [
2382             '<(SHARED_INTERMEDIATE_DIR)/app/app_resources/app_resources.rc',
2383             '<(SHARED_INTERMEDIATE_DIR)/chrome/autofill_resources.rc',
2384             '<(SHARED_INTERMEDIATE_DIR)/chrome/browser_resources.rc',
2385             '<(SHARED_INTERMEDIATE_DIR)/chrome/common_resources.rc',
2386             '<(SHARED_INTERMEDIATE_DIR)/chrome_dll_version/chrome_dll_version.rc',
2387             '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc',
2388             '<(SHARED_INTERMEDIATE_DIR)/chrome/renderer_resources.rc',
2389             '<(SHARED_INTERMEDIATE_DIR)/chrome/theme_resources.rc',
2390             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.rc',
2391             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_resources.rc',
2392             # TODO(alekseys): port sidebar to linux/mac.
2393             'browser/sidebar/sidebar_browsertest.cc',
2394           ],
2395           'include_dirs': [
2396             '<(DEPTH)/third_party/wtl/include',
2397           ],
2398           'dependencies': [
2399             'chrome_dll_version',
2400             'installer_util_strings',
2401             '../sandbox/sandbox.gyp:sandbox',
2402           ],
2403           'conditions': [
2404             ['win_use_allocator_shim==1', {
2405               'dependencies': [
2406                 '<(allocator_target)',
2407               ],
2408             }],
2409           ],
2410           'configurations': {
2411             'Debug_Base': {
2412               'msvs_settings': {
2413                 'VCLinkerTool': {
2414                   'LinkIncremental': '<(msvs_debug_link_nonincremental)',
2415                 },
2416               },
2417             },
2418           }
2419         }, { # else: OS != "win"
2420           'sources!': [
2421             'app/chrome_command_ids.h',
2422             'app/chrome_dll.rc',
2423             'app/chrome_dll_resource.h',
2424             'app/chrome_dll_version.rc.version',
2425             'browser/extensions/extension_rlz_apitest.cc',
2426             # http://crbug.com/15101 These tests fail on Linux and Mac.
2427             'browser/renderer_host/web_cache_manager_browsertest.cc',
2428             '../content/browser/child_process_security_policy_browsertest.cc',
2429           ],
2430         }],
2431         ['OS=="linux"', {
2432           'dependencies': [
2433             '../build/linux/system.gyp:gtk',
2434             '../build/linux/system.gyp:nss',
2435             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
2436           ],
2437           'sources': [
2438             # TODO(estade): port to win/mac.
2439             'browser/ui/webui/constrained_html_ui_browsertest.cc',
2440           ],
2441         }],
2442         ['OS=="mac"', {
2443           'include_dirs': [
2444             '../third_party/GTM',
2445           ],
2446           # TODO(mark): We really want this for all non-static library
2447           # targets, but when we tried to pull it up to the common.gypi
2448           # level, it broke other things like the ui, startup, and
2449           # page_cycler tests. *shrug*
2450           'xcode_settings': {
2451             'OTHER_LDFLAGS': [
2452               '-Wl,-ObjC',
2453             ],
2454           },
2455           # See the comment in this section of the unit_tests target for an
2456           # explanation (crbug.com/43791 - libwebcore.a is too large to mmap).
2457           'dependencies+++': [
2458             '../third_party/WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp:webcore',
2459           ],
2460           'sources': [
2461             'browser/spellcheck_message_filter_browsertest.cc',
2462             '../content/renderer/external_popup_menu_unittest.cc',
2463           ],
2464         }, { # else: OS != "mac"
2465           'sources!': [
2466             'browser/extensions/browser_action_test_util_mac.mm',
2467           ],
2468         }],
2469         ['OS=="linux" or OS=="freebsd"', {
2470           'conditions': [
2471             ['linux_use_tcmalloc==1', {
2472               'dependencies': [
2473                 '../base/allocator/allocator.gyp:allocator',
2474               ],
2475             }],
2476           ],
2477         }],
2478         ['toolkit_views==1', {
2479           'dependencies': [
2480             '../views/views.gyp:views',
2481           ],
2482           'sources!': [
2483             # TODO(estade): port to linux/views.
2484             'browser/ui/webui/constrained_html_ui_browsertest.cc',
2485           ],
2486         }, { # else: toolkit_views == 0
2487           'sources!': [
2488             'browser/extensions/browser_action_test_util_views.cc',
2489             'browser/ui/views/browser_actions_container_browsertest.cc',
2490             'browser/ui/views/dom_view_browsertest.cc',
2491             'browser/ui/views/html_dialog_view_browsertest.cc',
2492           ],
2493         }],
2494         ['target_arch!="arm"', {
2495           'dependencies': [
2496             # run time dependency
2497             '../webkit/webkit.gyp:copy_npapi_test_plugin',
2498           ],
2499         }],
2500       ],  # conditions
2501     },  # target browser_tests
2502     {
2503       # Executable that runs safebrowsing test in a new process.
2504       'target_name': 'safe_browsing_tests',
2505       'type': 'executable',
2506       'msvs_guid': 'BBF2BC2F-7CD8-463E-BE88-CB81AAD92BFE',
2507       'dependencies': [
2508         'chrome',
2509         'test_support_common',
2510         '../app/app.gyp:app_resources',
2511         '../base/base.gyp:base',
2512         '../net/net.gyp:net_test_support',
2513         '../skia/skia.gyp:skia',
2514         '../testing/gtest.gyp:gtest',
2515         # This is the safebrowsing test server.
2516         '../third_party/safe_browsing/safe_browsing.gyp:safe_browsing',
2517       ],
2518       'include_dirs': [
2519         '..',
2520       ],
2521       'defines': [ 'ALLOW_IN_PROC_BROWSER_TEST' ],
2522       'sources': [
2523         'app/chrome_dll.rc',
2524         'browser/safe_browsing/safe_browsing_test.cc',
2525         'test/out_of_proc_test_runner.cc',
2526       ],
2527       'conditions': [
2528         ['OS=="win"', {
2529           'dependencies': [
2530             'chrome_dll_version',
2531             'installer_util_strings',
2532             '../sandbox/sandbox.gyp:sandbox',
2533           ],
2534           'sources': [
2535             '<(SHARED_INTERMEDIATE_DIR)/app/app_resources/app_resources.rc',
2536             '<(SHARED_INTERMEDIATE_DIR)/chrome/autofill_resources.rc',
2537             '<(SHARED_INTERMEDIATE_DIR)/chrome/browser_resources.rc',
2538             '<(SHARED_INTERMEDIATE_DIR)/chrome/common_resources.rc',
2539             '<(SHARED_INTERMEDIATE_DIR)/chrome_dll_version/chrome_dll_version.rc',
2540             '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc',
2541             '<(SHARED_INTERMEDIATE_DIR)/chrome/renderer_resources.rc',
2542             '<(SHARED_INTERMEDIATE_DIR)/chrome/theme_resources.rc',
2543             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.rc',
2544             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_resources.rc',
2545           ],
2546           'configurations': {
2547             'Debug_Base': {
2548               'msvs_settings': {
2549                 'VCLinkerTool': {
2550                   'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
2551                 },
2552               },
2553             },
2554           },
2555         }],
2556         ['OS=="mac"', {
2557           # See crbug.com/43791 - libwebcore.a is too large to mmap on Mac.
2558           'dependencies+++': [
2559             '../third_party/WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp:webcore',
2560           ],
2561           # These flags are needed to run the test on Mac.
2562           # Search for comments about "xcode_settings" elsewhere in this file.
2563           'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']},
2564         }],
2565       ],
2566     },  # target safe_browsing_tests
2567     {
2568       'target_name': 'startup_tests',
2569       'type': 'executable',
2570       'msvs_guid': 'D3E6C0FD-54C7-4FF2-9AE1-72F2DAFD820C',
2571       'dependencies': [
2572         'chrome',
2573         'browser',
2574         'common',
2575         'chrome_resources',
2576         'chrome_strings',
2577         'test_support_ui',
2578         '../app/app.gyp:app_base',
2579         '../base/base.gyp:base',
2580         '../skia/skia.gyp:skia',
2581         '../testing/gtest.gyp:gtest',
2582       ],
2583       'sources': [
2584         'test/startup/feature_startup_test.cc',
2585         'test/startup/shutdown_test.cc',
2586         'test/startup/startup_test.cc',
2587       ],
2588       'conditions': [
2589         ['OS=="win" and buildtype=="Official"', {
2590           'configurations': {
2591             'Release': {
2592               'msvs_settings': {
2593                 'VCCLCompilerTool': {
2594                   'WholeProgramOptimization': 'false',
2595                 },
2596               },
2597             },
2598           },
2599         },],
2600         ['OS=="linux"', {
2601           'dependencies': [
2602             '../build/linux/system.gyp:gtk',
2603             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
2604           ],
2605         }],
2606         ['OS=="mac"', {
2607           # See the comment in this section of the unit_tests target for an
2608           # explanation (crbug.com/43791 - libwebcore.a is too large to mmap).
2609           'dependencies+++': [
2610             '../third_party/WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp:webcore',
2611           ],
2612         }],
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         ['OS=="linux" or OS=="freebsd"', {
2632           'conditions': [
2633             ['linux_use_tcmalloc==1', {
2634               'dependencies': [
2635                 '../base/allocator/allocator.gyp:allocator',
2636               ],
2637             }],
2638           ],
2639         }],
2640         ['toolkit_views==1', {
2641           'dependencies': [
2642             '../views/views.gyp:views',
2643           ],
2644         }],
2645       ],
2646     },
2647     {
2648       # To run the tests from page_load_test.cc on Linux, we need to:
2649       #
2650       #   a) Build with Breakpad (GYP_DEFINES="linux_chromium_breakpad=1")
2651       #   b) Run with CHROME_HEADLESS=1 to generate crash dumps.
2652       #   c) Strip the binary if it's a debug build. (binary may be over 2GB)
2653       'target_name': 'reliability_tests',
2654       'type': 'executable',
2655       'msvs_guid': '8A3E1774-1DE9-445C-982D-3EE37C8A752A',
2656       'dependencies': [
2657         'browser',
2658         'chrome',
2659         'test_support_common',
2660         'test_support_ui',
2661         'theme_resources',
2662         '../skia/skia.gyp:skia',
2663         '../testing/gtest.gyp:gtest',
2664         '../third_party/WebKit/Source/WebKit/chromium/WebKit.gyp:webkit',
2665       ],
2666       'include_dirs': [
2667         '..',
2668       ],
2669       'sources': [
2670         'test/reliability/page_load_test.cc',
2671         'test/reliability/page_load_test.h',
2672         'test/reliability/reliability_test_suite.h',
2673         'test/reliability/run_all_unittests.cc',
2674       ],
2675       'conditions': [
2676         ['OS=="win" and buildtype=="Official"', {
2677           'configurations': {
2678             'Release': {
2679               'msvs_settings': {
2680                 'VCCLCompilerTool': {
2681                   'WholeProgramOptimization': 'false',
2682                 },
2683               },
2684             },
2685           },
2686         },],
2687         ['OS=="win" and win_use_allocator_shim==1', {
2688           'dependencies': [
2689             '<(allocator_target)',
2690           ],
2691           'configurations': {
2692             'Debug': {
2693               'msvs_settings': {
2694                 'VCLinkerTool': {
2695                   'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
2696                 },
2697               },
2698             },
2699           },
2700         },],
2701         ['OS=="linux"', {
2702           'dependencies': [
2703             '../build/linux/system.gyp:gtk',
2704           ],
2705         },],
2706       ],
2707     },
2708     {
2709       'target_name': 'page_cycler_tests',
2710       'type': 'executable',
2711       'msvs_guid': 'C9E0BD1D-B175-4A91-8380-3FDC81FAB9D7',
2712       'dependencies': [
2713         'chrome',
2714         'chrome_resources',
2715         'chrome_strings',
2716         'debugger',
2717         'test_support_common',
2718         'test_support_ui',
2719         '../base/base.gyp:base',
2720         '../skia/skia.gyp:skia',
2721         '../testing/gtest.gyp:gtest',
2722       ],
2723       'sources': [
2724         'test/page_cycler/page_cycler_test.cc',
2725       ],
2726       'conditions': [
2727         ['OS=="win" and buildtype=="Official"', {
2728           'configurations': {
2729             'Release': {
2730               'msvs_settings': {
2731                 'VCCLCompilerTool': {
2732                   'WholeProgramOptimization': 'false',
2733                 },
2734               },
2735             },
2736           },
2737         },],
2738         ['OS=="linux"', {
2739           'dependencies': [
2740             '../build/linux/system.gyp:gtk',
2741             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
2742           ],
2743         }],
2744         ['toolkit_views==1', {
2745           'dependencies': [
2746             '../views/views.gyp:views',
2747           ],
2748         }],
2749       ],
2750     },
2751     {
2752       'target_name': 'tab_switching_test',
2753       'type': 'executable',
2754       'msvs_guid': 'A34770EA-A574-43E8-9327-F79C04770E98',
2755       'run_as': {
2756         'action': ['$(TargetPath)', '--gtest_print_time'],
2757       },
2758       'dependencies': [
2759         'chrome',
2760         'debugger',
2761         'test_support_common',
2762         'test_support_ui',
2763         'theme_resources',
2764         '../base/base.gyp:base',
2765         '../skia/skia.gyp:skia',
2766         '../testing/gtest.gyp:gtest',
2767       ],
2768       'include_dirs': [
2769         '..',
2770       ],
2771       'sources': [
2772         'test/tab_switching/tab_switching_test.cc',
2773       ],
2774       'conditions': [
2775         ['OS=="linux"', {
2776           'dependencies': [
2777             '../build/linux/system.gyp:gtk',
2778             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
2779           ],
2780         }],
2781         ['OS=="win" and win_use_allocator_shim==1', {
2782           'dependencies': [
2783             '<(allocator_target)',
2784           ],
2785         },],
2786       ],
2787     },
2788     {
2789       'target_name': 'memory_test',
2790       'type': 'executable',
2791       'msvs_guid': 'A5F831FD-9B9C-4FEF-9FBA-554817B734CE',
2792       'dependencies': [
2793         'chrome',
2794         'debugger',
2795         'test_support_common',
2796         'test_support_ui',
2797         'theme_resources',
2798         '../base/base.gyp:base',
2799         '../skia/skia.gyp:skia',
2800         '../testing/gtest.gyp:gtest',
2801       ],
2802       'include_dirs': [
2803         '..',
2804       ],
2805       'sources': [
2806         'test/memory_test/memory_test.cc',
2807       ],
2808       'conditions': [
2809         ['OS=="linux"', {
2810           'dependencies': [
2811             '../build/linux/system.gyp:gtk',
2812             '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
2813           ],
2814         }],
2815       ],
2816     },
2817     {
2818       'target_name': 'url_fetch_test',
2819       'type': 'executable',
2820       'msvs_guid': '7EFD0C91-198E-4043-9E71-4A4C7879B929',
2821       'dependencies': [
2822         'chrome',
2823         'debugger',
2824         'test_support_common',
2825         'test_support_ui',
2826         'theme_resources',
2827         '../base/base.gyp:base',
2828         '../net/net.gyp:net',
2829         '../skia/skia.gyp:skia',
2830         '../testing/gtest.gyp:gtest',
2831       ],
2832       'include_dirs': [
2833         '..',
2834       ],
2835       'sources': [
2836         'test/url_fetch_test/url_fetch_test.cc',
2837       ],
2838       'conditions': [
2839         ['OS=="win"', {
2840           'include_dirs': [
2841             '<(DEPTH)/third_party/wtl/include',
2842           ],
2843           'conditions': [
2844             ['win_use_allocator_shim==1', {
2845               'dependencies': [
2846                 '<(allocator_target)',
2847               ],
2848             }],
2849           ],
2850         }], # OS="win"
2851       ], # conditions
2852     },
2853     {
2854       'target_name': 'sync_unit_tests',
2855       'type': 'executable',
2856       'sources': [
2857         '<(protoc_out_dir)/chrome/browser/sync/protocol/test.pb.cc',
2858         'app/breakpad_mac_stubs.mm',
2859         'browser/sync/engine/apply_updates_command_unittest.cc',
2860         'browser/sync/engine/clear_data_command_unittest.cc',
2861         'browser/sync/engine/cleanup_disabled_types_command_unittest.cc',
2862         'browser/sync/engine/download_updates_command_unittest.cc',
2863         'browser/sync/engine/mock_model_safe_workers.cc',
2864         'browser/sync/engine/mock_model_safe_workers.h',
2865         'browser/sync/engine/process_commit_response_command_unittest.cc',
2866         'browser/sync/engine/syncapi_unittest.cc',
2867         'browser/sync/engine/syncer_proto_util_unittest.cc',
2868         'browser/sync/engine/syncer_thread_unittest.cc',
2869         'browser/sync/engine/syncer_thread2_unittest.cc',
2870         'browser/sync/engine/syncer_unittest.cc',
2871         'browser/sync/engine/syncproto_unittest.cc',
2872         'browser/sync/engine/syncapi_mock.h',
2873         'browser/sync/engine/verify_updates_command_unittest.cc',
2874         'browser/sync/js_arg_list_unittest.cc',
2875         'browser/sync/js_event_handler_list_unittest.cc',
2876         'browser/sync/js_sync_manager_observer_unittest.cc',
2877         'browser/sync/notifier/cache_invalidation_packet_handler_unittest.cc',
2878         'browser/sync/notifier/chrome_invalidation_client_unittest.cc',
2879         'browser/sync/notifier/chrome_system_resources_unittest.cc',
2880         'browser/sync/notifier/invalidation_notifier_unittest.cc',
2881         'browser/sync/notifier/non_blocking_invalidation_notifier_unittest.cc',
2882         'browser/sync/notifier/registration_manager_unittest.cc',
2883         'browser/sync/profile_sync_factory_mock.h',
2884         'browser/sync/protocol/proto_enum_conversions_unittest.cc',
2885         'browser/sync/protocol/proto_value_conversions_unittest.cc',
2886         'browser/sync/sessions/ordered_commit_set_unittest.cc',
2887         'browser/sync/sessions/session_state_unittest.cc',
2888         'browser/sync/sessions/status_controller_unittest.cc',
2889         'browser/sync/sessions/sync_session_unittest.cc',
2890         'browser/sync/sessions/test_util.cc',
2891         'browser/sync/sessions/test_util.h',
2892         'browser/sync/syncable/directory_backing_store_unittest.cc',
2893         'browser/sync/syncable/model_type_payload_map_unittest.cc',
2894         'browser/sync/syncable/model_type_unittest.cc',
2895         'browser/sync/syncable/nigori_util_unittest.cc',
2896         'browser/sync/syncable/syncable_enum_conversions_unittest.cc',
2897         'browser/sync/syncable/syncable_id_unittest.cc',
2898         'browser/sync/syncable/syncable_unittest.cc',
2899         'browser/sync/util/channel_unittest.cc',
2900         'browser/sync/util/crypto_helpers_unittest.cc',
2901         'browser/sync/util/data_encryption_unittest.cc',
2902         'browser/sync/util/extensions_activity_monitor_unittest.cc',
2903         'browser/sync/util/protobuf_unittest.cc',
2904         'browser/sync/util/user_settings_unittest.cc',
2905         'test/file_test_utils.cc',
2906         'test/sync/engine/mock_connection_manager.cc',
2907         'test/sync/engine/mock_connection_manager.h',
2908         'test/sync/engine/mock_gaia_authenticator.cc',
2909         'test/sync/engine/mock_gaia_authenticator.h',
2910         'test/sync/engine/mock_gaia_authenticator_unittest.cc',
2911         'test/sync/engine/syncer_command_test.h',
2912         'test/sync/engine/test_directory_setter_upper.cc',
2913         'test/sync/engine/test_directory_setter_upper.h',
2914         'test/sync/engine/test_id_factory.h',
2915         'test/sync/engine/test_syncable_utils.cc',
2916         'test/sync/engine/test_syncable_utils.h',
2917         'test/sync/sessions/test_scoped_session_event_listener.h',
2918       ],
2919       'include_dirs': [
2920         '..',
2921         '<(protoc_out_dir)',
2922       ],
2923       'defines' : [
2924         'SYNC_ENGINE_VERSION_STRING="Unknown"',
2925         '_CRT_SECURE_NO_WARNINGS',
2926         '_USE_32BIT_TIME_T',
2927       ],
2928       'dependencies': [
2929         'browser/sync/protocol/sync_proto.gyp:sync_proto_cpp',
2930         'common',
2931         'debugger',
2932         '../jingle/jingle.gyp:notifier_test_util',
2933         '../skia/skia.gyp:skia',
2934         '../testing/gmock.gyp:gmock',
2935         '../testing/gtest.gyp:gtest',
2936         '../third_party/bzip2/bzip2.gyp:bzip2',
2937         '../third_party/libjingle/libjingle.gyp:libjingle',
2938         'profile_import',
2939         'syncapi',
2940         'sync_notifier',
2941         'test_support_common',
2942         'test_support_sync',
2943         'test_support_sync_notifier',
2944         'test_support_unit',
2945       ],
2946       'conditions': [
2947         ['OS=="win"', {
2948           'conditions': [
2949             ['win_use_allocator_shim==1', {
2950               'dependencies': [
2951                 '<(allocator_target)',
2952               ],
2953             }],
2954           ],
2955           'link_settings': {
2956             'libraries': [
2957               '-lcrypt32.lib',
2958               '-lws2_32.lib',
2959               '-lsecur32.lib',
2960             ],
2961           },
2962           'configurations': {
2963             'Debug_Base': {
2964               'msvs_settings': {
2965                 'VCLinkerTool': {
2966                   'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
2967                 },
2968               },
2969             },
2970           },
2971         }, { # else: OS != "win"
2972           'sources!': [
2973             'browser/sync/util/data_encryption_unittest.cc',
2974           ],
2975         }],
2976         ['OS=="linux"', {
2977           'dependencies': [
2978             '../build/linux/system.gyp:gtk',
2979             '../build/linux/system.gyp:nss',
2980             'packed_resources'
2981           ],
2982         }],
2983         ['OS=="mac"', {
2984           # See the comment in this section of the unit_tests target for an
2985           # explanation (crbug.com/43791 - libwebcore.a is too large to mmap).
2986           'dependencies+++': [
2987             '../third_party/WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp:webcore',
2988           ],
2989           'dependencies': [
2990             'helper_app'
2991           ],
2992         },{  # OS!="mac"
2993           'dependencies': [
2994             'packed_extra_resources',
2995           ],
2996         }],
2997         ['OS=="linux" and chromeos==1', {
2998           'include_dirs': [
2999             '<(grit_out_dir)',
3000           ],
3001         }],
3002       ],
3003     },
3004     {
3005       'target_name': 'sync_integration_tests',
3006       'type': 'executable',
3007       'dependencies': [
3008         'browser',
3009         'browser/sync/protocol/sync_proto.gyp:sync_proto_cpp',
3010         'chrome',
3011         'chrome_resources',
3012         'common',
3013         'profile_import',
3014         'renderer',
3015         'chrome_strings',
3016         'test_support_common',
3017         '../net/net.gyp:net_test_support',
3018         '../printing/printing.gyp:printing',
3019         '../skia/skia.gyp:skia',
3020         '../testing/gmock.gyp:gmock',
3021         '../testing/gtest.gyp:gtest',
3022         '../third_party/icu/icu.gyp:icui18n',
3023         '../third_party/icu/icu.gyp:icuuc',
3024         '../third_party/npapi/npapi.gyp:npapi',
3025         '../third_party/WebKit/Source/WebKit/chromium/WebKit.gyp:webkit',
3026       ],
3027       'include_dirs': [
3028         '..',
3029         '<(INTERMEDIATE_DIR)',
3030         '<(protoc_out_dir)',
3031       ],
3032       # TODO(phajdan.jr): Only temporary, to make transition easier.
3033       'defines': [ 'ALLOW_IN_PROC_BROWSER_TEST' ],
3034       'sources': [
3035         'app/chrome_command_ids.h',
3036         'app/chrome_dll.rc',
3037         'app/chrome_dll_resource.h',
3038         'app/chrome_dll_version.rc.version',
3039         'browser/password_manager/password_form_data.cc',
3040         'browser/sessions/session_backend.cc',
3041         'browser/sync/glue/session_model_associator.cc',
3042         'test/out_of_proc_test_runner.cc',
3043         'test/live_sync/bookmark_model_verifier.cc',
3044         'test/live_sync/bookmark_model_verifier.h',
3045         'test/live_sync/live_autofill_sync_test.cc',
3046         'test/live_sync/live_autofill_sync_test.h',
3047         'test/live_sync/live_bookmarks_sync_test.cc',
3048         'test/live_sync/live_bookmarks_sync_test.h',
3049         'test/live_sync/live_extensions_sync_test_base.cc',
3050         'test/live_sync/live_extensions_sync_test_base.h',
3051         'test/live_sync/live_extensions_sync_test.cc',
3052         'test/live_sync/live_extensions_sync_test.h',
3053         'test/live_sync/live_passwords_sync_test.h',
3054         'test/live_sync/live_preferences_sync_test.h',
3055         'test/live_sync/live_sessions_sync_test.cc',
3056         'test/live_sync/live_sessions_sync_test.h',
3057         'test/live_sync/live_themes_sync_test.cc',
3058         'test/live_sync/live_themes_sync_test.h',
3059         'test/live_sync/live_sync_test.cc',
3060         'test/live_sync/live_sync_test.h',
3061         'test/live_sync/many_client_live_bookmarks_sync_test.cc',
3062         'test/live_sync/many_client_live_passwords_sync_test.cc',
3063         'test/live_sync/many_client_live_preferences_sync_test.cc',
3064         'test/live_sync/multiple_client_live_bookmarks_sync_test.cc',
3065         'test/live_sync/multiple_client_live_passwords_sync_test.cc',
3066         'test/live_sync/multiple_client_live_preferences_sync_test.cc',
3067         'test/live_sync/multiple_client_live_sessions_sync_test.cc',
3068         'test/live_sync/single_client_live_bookmarks_sync_test.cc',
3069         'test/live_sync/single_client_live_extensions_sync_test.cc',
3070         'test/live_sync/single_client_live_passwords_sync_test.cc',
3071         'test/live_sync/single_client_live_preferences_sync_test.cc',
3072         'test/live_sync/single_client_live_sessions_sync_test.cc',
3073         'test/live_sync/single_client_live_themes_sync_test.cc',
3074         'test/live_sync/two_client_live_autofill_sync_test.cc',
3075         'test/live_sync/two_client_live_bookmarks_sync_test.cc',
3076         'test/live_sync/two_client_live_extensions_sync_test.cc',
3077         'test/live_sync/two_client_live_preferences_sync_test.cc',
3078         'test/live_sync/two_client_live_passwords_sync_test.cc',
3079         'test/live_sync/two_client_live_sessions_sync_test.cc',
3080         'test/live_sync/two_client_live_themes_sync_test.cc',
3081         'test/test_notification_tracker.cc',
3082         'test/test_notification_tracker.h',
3083         'test/ui_test_utils_linux.cc',
3084         'test/ui_test_utils_mac.mm',
3085         'test/ui_test_utils_win.cc',
3086         'test/data/resource.rc',
3087       ],
3088       'conditions': [
3089         ['OS=="linux"', {
3090            'dependencies': [
3091              '../build/linux/system.gyp:gtk',
3092              '../build/linux/system.gyp:nss',
3093            ],
3094         }],
3095         ['OS=="mac"', {
3096           # See the comment in this section of the unit_tests target for an
3097           # explanation (crbug.com/43791 - libwebcore.a is too large to mmap).
3098           'dependencies+++': [
3099             '../third_party/WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp:webcore',
3100           ],
3101           # The sync_integration_tests do not run on mac without this flag.
3102           # Search for comments about "xcode_settings" elsewhere in this file.
3103           'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']},
3104         }],
3105         ['OS=="win"', {
3106           'sources': [
3107             '<(SHARED_INTERMEDIATE_DIR)/app/app_resources/app_resources.rc',
3108             '<(SHARED_INTERMEDIATE_DIR)/chrome/autofill_resources.rc',
3109             '<(SHARED_INTERMEDIATE_DIR)/chrome/browser_resources.rc',
3110             '<(SHARED_INTERMEDIATE_DIR)/chrome/common_resources.rc',
3111             '<(SHARED_INTERMEDIATE_DIR)/chrome_dll_version/chrome_dll_version.rc',
3112             '<(SHARED_INTERMEDIATE_DIR)/chrome/theme_resources.rc',
3113           ],
3114           'include_dirs': [
3115             '<(DEPTH)/third_party/wtl/include',
3116           ],
3117           'dependencies': [
3118             'chrome_dll_version',
3119             'installer_util_strings',
3120             '../sandbox/sandbox.gyp:sandbox',
3121           ],
3122           'conditions': [
3123             ['win_use_allocator_shim==1', {
3124               'dependencies': [
3125                 '<(allocator_target)',
3126               ],
3127             }],
3128           ],
3129           'configurations': {
3130             'Debug': {
3131               'msvs_settings': {
3132                 'VCLinkerTool': {
3133                   'LinkIncremental': '<(msvs_debug_link_nonincremental)',
3134                 },
3135               },
3136             },
3137           },
3138         }, { # else: OS != "win"
3139           'sources!': [
3140             'app/chrome_dll.rc',
3141             'app/chrome_dll_version.rc.version',
3142             'test/data/resource.rc',
3143           ],
3144         }],
3145         ['toolkit_views==1', {
3146           'dependencies': [
3147             '../views/views.gyp:views',
3148           ],
3149         }],
3150       ],
3151     },
3152     {
3153       # Executable that contains all the tests to be run on the GPU bots.
3154       'target_name': 'gpu_tests',
3155       'type': 'executable',
3156       'msvs_guid': '3D3BB86C-F284-4911-BAEB-12C6EFA09A01',
3157       'dependencies': [
3158         'browser',
3159         'chrome',
3160         'chrome_resources',
3161         'chrome_strings',
3162         'renderer',
3163         'test_support_common',
3164         '../app/app.gyp:app_base',
3165         '../base/base.gyp:base',
3166         '../base/base.gyp:test_support_base',
3167         '../net/net.gyp:net_test_support',
3168         '../skia/skia.gyp:skia',
3169         '../testing/gtest.gyp:gtest',
3170         '../third_party/icu/icu.gyp:icui18n',
3171         '../third_party/icu/icu.gyp:icuuc',
3172         # Runtime dependencies
3173         'chrome_mesa',
3174       ],
3175       'include_dirs': [
3176         '..',
3177       ],
3178       'defines': [ 'ALLOW_IN_PROC_BROWSER_TEST' ],
3179       'sources': [
3180         'test/gpu/gpu_pixel_browsertest.cc',
3181         'test/gpu/gpu_crash.cc',
3182         'test/out_of_proc_test_runner.cc',
3183       ],
3184       'conditions': [
3185         ['OS=="win"', {
3186           'dependencies': [
3187             'chrome_dll_version',
3188             'installer_util_strings',
3189             '../sandbox/sandbox.gyp:sandbox',
3190           ],
3191           'include_dirs': [
3192             '<(DEPTH)/third_party/wtl/include',
3193           ],
3194           'sources': [
3195             'app/chrome_dll.rc',
3196             'app/chrome_dll_resource.h',
3197             'app/chrome_dll_version.rc.version',
3198             '<(SHARED_INTERMEDIATE_DIR)/app/app_resources/app_resources.rc',
3199             '<(SHARED_INTERMEDIATE_DIR)/chrome/autofill_resources.rc',
3200             '<(SHARED_INTERMEDIATE_DIR)/chrome/browser_resources.rc',
3201             '<(SHARED_INTERMEDIATE_DIR)/chrome/common_resources.rc',
3202             '<(SHARED_INTERMEDIATE_DIR)/chrome/renderer_resources.rc',
3203             '<(SHARED_INTERMEDIATE_DIR)/chrome/theme_resources.rc',
3204             '<(SHARED_INTERMEDIATE_DIR)/chrome_dll_version/chrome_dll_version.rc',
3205             '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc',
3206             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.rc',
3207             '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_resources.rc',
3208           ],
3209           'conditions': [
3210             ['win_use_allocator_shim==1', {
3211               'dependencies': [
3212                 '<(allocator_target)',
3213               ],
3214             }],
3215           ],
3216           'configurations': {
3217             'Debug': {
3218               'msvs_settings': {
3219                 'VCLinkerTool': {
3220                   'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
3221                 },
3222               },
3223             },
3224           },
3225         }],
3226         ['OS=="mac"', {
3227           # See the comment in this section of the unit_tests target for an
3228           # explanation (crbug.com/43791 - libwebcore.a is too large to mmap).
3229           'dependencies+++': [
3230             '../third_party/WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp:webcore',
3231           ],
3232           # See comments about "xcode_settings" elsewhere in this file.
3233           'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']},
3234         }],
3235         ['OS=="linux"', {
3236            'dependencies': [
3237              '../build/linux/system.gyp:gtk',
3238              '../build/linux/system.gyp:nss',
3239            ],
3240         }],
3241         ['toolkit_views==1', {
3242           'dependencies': [
3243             '../views/views.gyp:views',
3244           ],
3245         }],
3246       ],
3247     },
3248     {
3249       'target_name': 'plugin_tests',
3250       'type': 'executable',
3251       'msvs_guid': 'A1CAA831-C507-4B2E-87F3-AEC63C9907F9',
3252       'dependencies': [
3253         'chrome',
3254         'chrome_resources',
3255         'chrome_strings',
3256         'test_support_common',
3257         'test_support_ui',
3258         '../skia/skia.gyp:skia',
3259         '../testing/gtest.gyp:gtest',
3260         '../third_party/libxslt/libxslt.gyp:libxslt',
3261         '../third_party/npapi/npapi.gyp:npapi',
3262       ],
3263       'include_dirs': [
3264         '..',
3265       ],
3266       'sources': [
3267         'test/plugin/plugin_test.cpp',
3268       ],
3269       'conditions': [
3270         ['OS=="win"', {
3271           'dependencies': [
3272             'security_tests',  # run time dependency
3273           ],
3274           'conditions': [
3275             ['win_use_allocator_shim==1', {
3276               'dependencies': [
3277                 '<(allocator_target)',
3278               ],
3279             }],
3280           ],
3281           'include_dirs': [
3282             '<(DEPTH)/third_party/wtl/include',
3283           ],
3284         },],
3285       ],
3286     },
3287   ],
3288   'conditions': [
3289     ['OS!="mac"', {
3290       'targets': [
3291         {
3292           'target_name': 'perf_tests',
3293           'type': 'executable',
3294           'msvs_guid': '9055E088-25C6-47FD-87D5-D9DD9FD75C9F',
3295           'dependencies': [
3296             'browser',
3297             'common',
3298             'renderer',
3299             'chrome_resources',
3300             'chrome_strings',
3301             '../app/app.gyp:app_base',
3302             '../content/content.gyp:content_gpu',
3303             '../base/base.gyp:base',
3304             '../base/base.gyp:test_support_base',
3305             '../base/base.gyp:test_support_perf',
3306             '../skia/skia.gyp:skia',
3307             '../testing/gtest.gyp:gtest',
3308             '../webkit/support/webkit_support.gyp:glue',
3309           ],
3310           'sources': [
3311             'browser/safe_browsing/filter_false_positive_perftest.cc',
3312             'browser/visitedlink/visitedlink_perftest.cc',
3313             'common/json_value_serializer_perftest.cc',
3314             'test/perf/perftests.cc',
3315             'test/perf/url_parse_perftest.cc',
3316           ],
3317           'conditions': [
3318             ['OS=="linux"', {
3319               'dependencies': [
3320                 '../build/linux/system.gyp:gtk',
3321                 '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
3322               ],
3323               'sources!': [
3324                 # TODO(port):
3325                 'browser/safe_browsing/filter_false_positive_perftest.cc',
3326               ],
3327             }],
3328             ['OS=="win"', {
3329               'configurations': {
3330                 'Debug_Base': {
3331                   'msvs_settings': {
3332                     'VCLinkerTool': {
3333                       'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
3334                     },
3335                   },
3336                 },
3337               },
3338               'conditions': [
3339                 ['win_use_allocator_shim==1', {
3340                   'dependencies': [
3341                     '<(allocator_target)',
3342                   ],
3343                 }],
3344               ],
3345             }],
3346             ['toolkit_views==1', {
3347               'dependencies': [
3348                 '../views/views.gyp:views',
3349               ],
3350             }],
3351           ],
3352         },
3353       ],
3354     },],  # OS!="mac"
3355     ['OS=="win"', {
3356       'targets': [
3357         {
3358           'target_name': 'generate_profile',
3359           'type': 'executable',
3360           'msvs_guid': '2E969AE9-7B12-4EDB-8E8B-48C7AE7BE357',
3361           'dependencies': [
3362             'test_support_common',
3363             'browser',
3364             'renderer',
3365             'syncapi',
3366             '../base/base.gyp:base',
3367             '../net/net.gyp:net_test_support',
3368             '../skia/skia.gyp:skia',
3369           ],
3370           'include_dirs': [
3371             '..',
3372           ],
3373           'sources': [
3374             'tools/profiles/generate_profile.cc',
3375             'tools/profiles/thumbnail-inl.h',
3376           ],
3377           'conditions': [
3378             ['OS=="win"', {
3379               'conditions': [
3380                 ['win_use_allocator_shim==1', {
3381                   'dependencies': [
3382                     '<(allocator_target)',
3383                   ],
3384                 }],
3385               ],
3386               'configurations': {
3387                 'Debug_Base': {
3388                   'msvs_settings': {
3389                     'VCLinkerTool': {
3390                       'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
3391                     },
3392                   },
3393                 },
3394               },
3395             }],
3396           ],
3397         },
3398         {
3399           'target_name': 'security_tests',
3400           'type': 'shared_library',
3401           'msvs_guid': 'E750512D-FC7C-4C98-BF04-0A0DAF882055',
3402           'include_dirs': [
3403             '..',
3404           ],
3405           'sources': [
3406             'test/security_tests/ipc_security_tests.cc',
3407             'test/security_tests/ipc_security_tests.h',
3408             'test/security_tests/security_tests.cc',
3409             '../content/common/injection_test_dll.h',
3410             '../sandbox/tests/validation_tests/commands.cc',
3411             '../sandbox/tests/validation_tests/commands.h',
3412           ],
3413         },
3414         # Extra 64-bit DLL for windows
3415         {
3416           'target_name': 'nacl_security_tests64',
3417           'type': 'shared_library',
3418           'configurations': {
3419             'Common_Base': {
3420               'msvs_target_platform': 'x64',
3421             },
3422           },
3423           'include_dirs': [
3424             '..'
3425           ],
3426           'sources': [
3427             '../sandbox/tests/validation_tests/commands.cc',
3428             '../sandbox/tests/validation_tests/commands.h',
3429             '../sandbox/tests/common/controller.h',
3430             'test/nacl_security_tests/nacl_security_tests_win.h',
3431             'test/nacl_security_tests/nacl_security_tests_win.cc',
3432           ],
3433         },
3434         {
3435           'target_name': 'selenium_tests',
3436           'type': 'executable',
3437           'msvs_guid': 'E3749617-BA3D-4230-B54C-B758E56D9FA5',
3438           'dependencies': [
3439             'chrome_resources',
3440             'chrome_strings',
3441             'test_support_common',
3442             'test_support_ui',
3443             '../skia/skia.gyp:skia',
3444             '../testing/gtest.gyp:gtest',
3445           ],
3446           'include_dirs': [
3447             '..',
3448             '<(DEPTH)/third_party/wtl/include',
3449           ],
3450           'sources': [
3451             'test/selenium/selenium_test.cc',
3452           ],
3453           'conditions': [
3454             ['OS=="win" and win_use_allocator_shim==1', {
3455               'dependencies': [
3456                 '<(allocator_target)',
3457               ],
3458             },],
3459           ],
3460         },
3461       ]},  # 'targets'
3462     ],  # OS=="win"
3463     # If you change this condition, make sure you also change it in all.gyp
3464     # for the chromium_builder_qa target.
3465     ['OS=="mac" or OS=="win" or (OS=="linux" and target_arch==python_arch)', {
3466       'targets': [
3467         {
3468           # Documentation: http://dev.chromium.org/developers/testing/pyauto
3469           'target_name': 'pyautolib',
3470           'type': 'shared_library',
3471           'product_prefix': '_',
3472           'dependencies': [
3473             'chrome',
3474             'debugger',
3475             'syncapi',
3476             'test_support_common',
3477             'chrome_resources',
3478             'chrome_strings',
3479             'theme_resources',
3480             '../skia/skia.gyp:skia',
3481             '../testing/gtest.gyp:gtest',
3482           ],
3483           'export_dependent_settings': [
3484             'test_support_common',
3485           ],
3486           'include_dirs': [
3487             '..',
3488           ],
3489           'cflags': [
3490              '-Wno-uninitialized',
3491           ],
3492           'sources': [
3493             'test/automation/proxy_launcher.cc',
3494             'test/automation/proxy_launcher.h',
3495             'test/pyautolib/pyautolib.cc',
3496             'test/pyautolib/pyautolib.h',
3497             'test/ui/ui_test.cc',
3498             'test/ui/ui_test.h',
3499             'test/ui/ui_test_suite.cc',
3500             'test/ui/ui_test_suite.h',
3501             '<(INTERMEDIATE_DIR)/pyautolib_wrap.cc',
3502             '<@(pyautolib_sources)',
3503           ],
3504           'xcode_settings': {
3505             # Need a shared object named _pyautolib.so (not libpyautolib.dylib
3506             # that xcode would generate)
3507             # Change when gyp can support a platform-neutral way for this
3508             # (http://code.google.com/p/gyp/issues/detail?id=135)
3509             'EXECUTABLE_EXTENSION': 'so',
3510             # When generated, pyautolib_wrap.cc includes some swig support
3511             # files which, as of swig 1.3.31 that comes with 10.5 and 10.6,
3512             # may not compile cleanly at -Wall.
3513             'GCC_TREAT_WARNINGS_AS_ERRORS': 'NO',  # -Wno-error
3514           },
3515           'conditions': [
3516             ['OS=="linux"', {
3517               'include_dirs': [
3518                 '..',
3519                 '<(sysroot)/usr/include/python<(python_ver)',
3520               ],
3521               'dependencies': [
3522                 '../build/linux/system.gyp:gtk',
3523               ],
3524               'link_settings': {
3525                 'libraries': [
3526                   '-lpython<(python_ver)',
3527                 ],
3528               },
3529               'actions': [
3530               {
3531                 # _pyautolib.so gets created in lib.target dir.
3532                 # Create a symlink from the product dir.
3533                 'action_name': 'create_symlink',
3534                 'inputs': [
3535                 ],
3536                 'outputs': [
3537                   '<(PRODUCT_DIR)/_pyautolib.so',
3538                 ],
3539                 'action': [ 'ln',
3540                             '-sf',
3541                             '<(PRODUCT_DIR)/lib.target/_pyautolib.so',
3542                             '<@(_outputs)',
3543                 ],
3544                 'message': 'Creating symlink: '
3545                            '<(PRODUCT_DIR)/lib.target/_pyautolib.so',
3546               }],  # actions
3547             }],
3548             ['OS=="mac"', {
3549               # See the comment in this section of the unit_tests target for an
3550               # explanation (crbug.com/43791 - libwebcore.a is too large to
3551               # mmap).
3552               'dependencies+++': [
3553                 '../third_party/WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp:webcore',
3554               ],
3555               'include_dirs': [
3556                 '..',
3557                 '$(SDKROOT)/usr/include/python2.5',
3558               ],
3559               'link_settings': {
3560                 'libraries': [
3561                   '$(SDKROOT)/usr/lib/libpython2.5.dylib',
3562                 ],
3563               }
3564             }],
3565             ['OS=="win"', {
3566               'product_extension': 'pyd',
3567               'include_dirs': [
3568                 '..',
3569                 '../third_party/python_26/include',
3570               ],
3571               'link_settings': {
3572                 'libraries': [
3573                   '../third_party/python_26/libs/python26.lib',
3574                 ],
3575               }
3576             }],
3577           ],
3578           'actions': [
3579             {
3580               'action_name': 'pyautolib_swig',
3581               'inputs': [
3582                 'test/pyautolib/argc_argv.i',
3583                 'test/pyautolib/pyautolib.i',
3584                 '<@(pyautolib_sources)',
3585               ],
3586               'outputs': [
3587                 '<(INTERMEDIATE_DIR)/pyautolib_wrap.cc',
3588                 '<(PRODUCT_DIR)/pyautolib.py',
3589               ],
3590               'action': [ 'python',
3591                           '../tools/swig/swig.py',
3592                           '-I..',
3593                           '-python',
3594                           '-c++',
3595                           '-outdir',
3596                           '<(PRODUCT_DIR)',
3597                           '-o',
3598                           '<(INTERMEDIATE_DIR)/pyautolib_wrap.cc',
3599                           'test/pyautolib/pyautolib.i',
3600               ],
3601               'message': 'Generating swig wrappers for pyautolib.',
3602             },
3603           ],  # actions
3604         },  # target 'pyautolib'
3605       ]  # targets
3606     }],
3607     # To enable the coverage targets, do
3608     #    GYP_DEFINES='coverage=1' gclient sync
3609     # To match the coverage buildbot more closely, do this:
3610     #    GYP_DEFINES='coverage=1 enable_svg=0 fastbuild=1' gclient sync
3611     # (and, on MacOS, be sure to switch your SDK from "Base SDK" to "Mac OS X
3612     # 10.6")
3613     # (but on Windows, don't set the fastbuild=1 because it removes the PDB
3614     # generation which is necessary for code coverage.)
3615     ['coverage!=0',
3616       { 'targets': [
3617         {
3618           ### Coverage BUILD AND RUN.
3619           ### Not named coverage_build_and_run for historical reasons.
3620           'target_name': 'coverage',
3621           'dependencies': [ 'coverage_build', 'coverage_run' ],
3622           # do NOT place this in the 'all' list; most won't want it.
3623           # In gyp, booleans are 0/1 not True/False.
3624           'suppress_wildcard': 1,
3625           'type': 'none',
3626           'actions': [
3627             {
3628               'message': 'Coverage is now complete.',
3629               # MSVS must have an input file and an output file.
3630               'inputs': [ '<(PRODUCT_DIR)/coverage.info' ],
3631               'outputs': [ '<(PRODUCT_DIR)/coverage-build-and-run.stamp' ],
3632               'action_name': 'coverage',
3633               # Wish gyp had some basic builtin commands (e.g. 'touch').
3634               'action': [ 'python', '-c',
3635                           'import os; ' \
3636                           'open(' \
3637                           '\'<(PRODUCT_DIR)\' + os.path.sep + ' \
3638                           '\'coverage-build-and-run.stamp\'' \
3639                           ', \'w\').close()' ],
3640               # Use outputs of this action as inputs for the main target build.
3641               # Seems as a misnomer but makes this happy on Linux (scons).
3642               'process_outputs_as_sources': 1,
3643             },
3644           ],  # 'actions'
3645         },
3646         ### Coverage BUILD.  Compile only; does not run the bundles.
3647         ### Intended as the build phase for our coverage bots.
3648         ###
3649         ### Builds unit test bundles needed for coverage.
3650         ### Outputs this list of bundles into coverage_bundles.py.
3651         ###
3652         ### If you want to both build and run coverage from your IDE,
3653         ### use the 'coverage' target.
3654         {
3655           'target_name': 'coverage_build',
3656           # do NOT place this in the 'all' list; most won't want it.
3657           # In gyp, booleans are 0/1 not True/False.
3658           'suppress_wildcard': 1,
3659           'type': 'none',
3660           'dependencies': [
3661             'automated_ui_tests',
3662             '../app/app.gyp:app_unittests',
3663             '../base/base.gyp:base_unittests',
3664             # browser_tests's use of subprocesses chokes gcov on 10.6?
3665             # Disabling for now (enabled on linux/windows below).
3666             # 'browser_tests',
3667             '../ipc/ipc.gyp:ipc_tests',
3668             '../media/media.gyp:media_unittests',
3669             'nacl_sandbox_tests',
3670             'nacl_ui_tests',
3671             '../net/net.gyp:net_unittests',
3672             '../printing/printing.gyp:printing_unittests',
3673             '../remoting/remoting.gyp:remoting_unittests',
3674             # ui_tests seem unhappy on both Mac and Win when run under
3675             # coverage (all tests fail, often with a
3676             # "server_->WaitForInitialLoads()").  TODO(jrg):
3677             # investigate why.
3678             # 'ui_tests',
3679             'unit_tests',
3680           ],  # 'dependencies'
3681           'conditions': [
3682             ['OS=="win"', {
3683               'dependencies': [
3684                 # Courgette has not been ported from Windows.
3685                 # Note build/win/chrome_win.croc uniquely has the
3686                 # courgette source directory in an include path.
3687                 '../courgette/courgette.gyp:courgette_unittests',
3688                 'browser_tests',
3689                 ]}],
3690             ['OS=="linux"', {
3691               'dependencies': [
3692                 # Reason for disabling UI tests on non-Linux above.
3693                 'ui_tests',
3694                 # Win bot needs to be turned into an interactive bot.
3695                 'interactive_ui_tests',
3696                 'browser_tests',
3697               ]}],
3698             ['OS=="mac"', {
3699               'dependencies': [
3700               # Placeholder; empty for now.
3701               ]}],
3702           ],  # 'conditions'
3703           'actions': [
3704             {
3705               # 'message' for Linux/scons in particular.  Scons
3706               # requires the 'coverage' target be run from within
3707               # src/chrome.
3708               'message': 'Compiling coverage bundles.',
3709               # MSVS must have an input file and an output file.
3710               #
3711               # TODO(jrg):
3712               # Technically I want inputs to be the list of
3713               # executables created in <@(_dependencies) but use of
3714               # that variable lists the dep by dep name, not their
3715               # output executable name.
3716               # Is there a better way to force this action to run, always?
3717               #
3718               # If a test bundle is added to this coverage_build target it
3719               # necessarily means this file (chrome_tests.gypi) is changed,
3720               # so the action is run (coverage_bundles.py is generated).
3721               # Exceptions to that rule are theoretically possible
3722               # (e.g. re-gyp with a GYP_DEFINES set).
3723               # Else it's the same list of bundles as last time.  They are
3724               # built (since on the deps list) but the action may not run.
3725               # For now, things work, but it's less than ideal.
3726               'inputs': [ 'chrome_tests.gypi' ],
3727               'outputs': [ '<(PRODUCT_DIR)/coverage_bundles.py' ],
3728               'action_name': 'coverage_build',
3729               'action': [ 'python', '-c',
3730                           'import os; '
3731                           'f = open(' \
3732                           '\'<(PRODUCT_DIR)\' + os.path.sep + ' \
3733                           '\'coverage_bundles.py\'' \
3734                           ', \'w\'); ' \
3735                           'deplist = \'' \
3736                           '<@(_dependencies)' \
3737                           '\'.split(\' \'); ' \
3738                           'f.write(str(deplist)); ' \
3739                           'f.close()'],
3740               # Use outputs of this action as inputs for the main target build.
3741               # Seems as a misnomer but makes this happy on Linux (scons).
3742               'process_outputs_as_sources': 1,
3743             },
3744           ],  # 'actions'
3745         },
3746         ### Coverage RUN.  Does not compile the bundles.  Mirrors the
3747         ### run_coverage_bundles buildbot phase.  If you update this
3748         ### command update the mirror in
3749         ### $BUILDBOT/scripts/master/factory/chromium_commands.py.
3750         ### If you want both build and run, use the 'coverage' target.
3751         {
3752           'target_name': 'coverage_run',
3753           # do NOT place this in the 'all' list; most won't want it.
3754           # In gyp, booleans are 0/1 not True/False.
3755           'suppress_wildcard': 1,
3756           'type': 'none',
3757           'actions': [
3758             {
3759               # 'message' for Linux/scons in particular.  Scons
3760               # requires the 'coverage' target be run from within
3761               # src/chrome.
3762               'message': 'Running the coverage script.  NOT building anything.',
3763               # MSVS must have an input file and an output file.
3764               'inputs': [ '<(PRODUCT_DIR)/coverage_bundles.py' ],
3765               'outputs': [ '<(PRODUCT_DIR)/coverage.info' ],
3766               'action_name': 'coverage_run',
3767               'action': [ 'python',
3768                           '../tools/code_coverage/coverage_posix.py',
3769                           '--directory',
3770                           '<(PRODUCT_DIR)',
3771                           '--src_root',
3772                           '..',
3773                           '--bundles',
3774                           '<(PRODUCT_DIR)/coverage_bundles.py'],
3775               # Use outputs of this action as inputs for the main target build.
3776               # Seems as a misnomer but makes this happy on Linux (scons).
3777               'process_outputs_as_sources': 1,
3778             },
3779           ],  # 'actions'
3780         },
3781       ]
3782     }],  # 'coverage!=0'
3783   ],  # 'conditions'
3786 # Local Variables:
3787 # tab-width:2
3788 # indent-tabs-mode:nil
3789 # End:
3790 # vim: set expandtab tabstop=2 shiftwidth=2: