# Copyright (c) 2011 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
#
# This file lists the pyauto tests that run as a part of the functional test
# suite.
#
# Tests can be enabled on a per-platform basis. Tests not listed here will
# not be run.
#
# Within each platform, tests are specified in up to 3 groups: (1) enabled
# tests; (2) tests that are permanently disabled because they do not apply
# to the given platform and hence should not be run; and (3) disabled tests
# that need to be investigated/fixed.  Tests are listed alphabetically within
# each group.
#
# Test names can be specified in any of the following ways:
# 1. as a module, in which case all tests in that module will be run
#      example: 'test_basic'
# 2. or as a test case, in which case all tests in that test case will be run
#      example: 'test_basic.SimpleTest'
# 3. or as an individual test
#      example: 'test_basic.SimpleTest.testCanOpenGoogle'
#
# Tests beginning with '-' will be excluded.  This can be used to enforce
# exclusions for a particular platform.
# Names beginning with '@' will be treated as suite names and will be
# recursively expanded.

{
  # The CONTINUOUS suite includes tests that we expect to pass on a
  # continuous builder.
  # This is the suite that gets run on 'Chromium' builds.
  'CONTINUOUS': {
    'all': [
      'autofill',
      'bookmark_bar',
      'bookmarks',
      'browser',
      'browsing_data',
      'codesign',
      'content',
      'cookies',
      'crash_reporter',
      'databases',
      'downloads',
      'execute_javascript',
      'extensions',
      'find_in_page',
      'flash',
      'history',
      'https',
      'imports',
      'infobars',
      'instant',
      'navigation',
      'notifications',
      'ntp',
      'omnibox',
      'passwords',
      'pdf',
      'plugins',
      'plugins_check',
      'popups',
      'prefs',
      'process_count',
      'pyauto_webdriver',
      'search_engines',
      'shortcuts',
      'special_tabs',
      'sync',
      'test_basic',
      'test_pyauto',
      'themes',
      'youtube',

      # ==================================================
      # Disabled tests that need to be investigated/fixed.
      # ==================================================
      # crbug.com/83686
      '-autofill.AutofillTest.testFillProfileCrazyCharacters',
      # Browser crash when clearing browsing history and downloads together.
      # crbug.com/88128
      '-browsing_data.BrowsingDataTest.testClearHistoryAndDownloads',
      '-browsing_data.BrowsingDataTest.testClearingAccuracy',
      # Turkish I problem. crbug.com/60638
      '-find_in_page.FindMatchTests.testLocalizationAndCaseOrder',
      # crbug.com/87959
      '-instant.InstantTest.testInstantLoadsFor100CharsLongQuery',
      # crbug.com/83459
      '-instant.InstantTest.testPreFetchInstantURLSetsNoCookies',
      '-omnibox.OmniboxTest.testHistoryResult',  # crbug.com/71715
      # crbug.com/91033
      '-omnibox.OmniboxTest.testOmniboxSearchHistory',
      # crbug.com/82629 - real bug.
      '-popups.PopupsTest.testPopupsLaunchUponBrowserBackButton',
      # crbug.com/47935
      '-popups.PopupsTest.testBlockedPopupNotShowInHistory',
      # crbug.com/83827
      '-popups.PopupsTest.testUnblockedPopupShowsInHistory',
      '-popups.PopupsTest.testUnblockedPopupAddedToOmnibox',
      # crbug.com/85600
      '-prefs.PrefsTest.testNavigationStateOnSessionRestore',
      # Flaky: crbug.com/67851
      '-special_tabs.SpecialTabsTest.testAboutDNSTab',
      # crbug.com/102517 -- external webpage throws 500
      '-special_tabs.SpecialTabsTest.testAboutAppCacheTab',
      # crbug.com/95140
      '-translate.TranslateTest.testGoBackAndForwardToTranslatePage',
      # crbug.com/86523
      '-cookies.CookiesTest.testAllowCookiesForASessionUsingExceptions',
      '-cookies.CookiesTest.testAllowCookiesUsingExceptions',
      '-cookies.CookiesTest.testBlockCookiesUsingExceptions',
      # crbug.com/91030
      '-omnibox.OmniboxTest.testContentHistory',
      # crbug.com/86524
      '-plugins.PluginsTest.testAllowPluginException',
      # crbug.com/87811
      '-plugins.PluginsTest.testDisableEnableAllPlugins',
      # crbug.com/85307
      '-plugins.PluginsTest.testKillAndReloadAllPlugins',
      # crbug.com/88574
      '-special_tabs.SpecialTabsTest.testSpecialURLTabs',
      # crbug.com/88593
      '-sync.SyncTest.testPersonalStuffSyncSection',
      # crbug.com/94683
      '-execute_javascript.ExecuteJavascriptTest.testExecuteJavascriptInExtension',
      # crbug.com/95031
      '-notifications.NotificationsTest.testOriginPrefsNotSavedInIncognito',
    ],

    'win': [
      # ==================================================
      # Disabled tests that need to be investigated/fixed.
      # ==================================================
      # crbug.com/88210
      '-autofill.AutofillTest.testCharsStrippedForAggregatedPhoneNumbers',
      # crbug.com/81271
      '-autofill.AutofillTest.testMergeAggregatedProfilesWithSameAddress',
      '-autofill.AutofillTest.testProfilesNotMergedWhenNoMinAddressData',
      # crbug.com/95141
      '-enterprise.EnterpriseTest.testDisable3DAPI',
      # crbug.com/94683
      '-execute_javascript.ExecuteJavascriptTest.testExecuteJavascriptInExtension',
      # Some download test fails on win official builder, only thru buildbot
      # when downloading the small zip file.
      # crbug.com/91225
      '-find_in_page.FindMatchTests.testSearchInPDF',
      # crbug.com/94682
      '-gpu.GpuTest.test2dCanvas',
      # crbug.com/93423
      '-gpu.GpuTest.test3dCss',
      # Disabled on vista in the actual test. crbug.com/89767
      # -imports.ImportsTest.testImportFirefoxDataTwice
      # Disabled on vista in the actual test. crbug.com/89767
      # -imports.ImportsTest.testFirefoxImportFromPrefs
      # Disabled on vista in the actual test. crbug.com/89767
      # -imports.ImportsTest.testImportFirefoxPasswordsFromPrefs
      # crbug.com/95003
      '-infobars.InfobarTest.testPluginCrashForMultiTabs',
      # crbug.com/66072
      '-notifications.NotificationsTest.testNotificationOrderAfterClosingOne',
      # crbug.com/85598
      '-ntp.NTPTest.testGetAppsWhenInstallApp',
      '-ntp.NTPTest.testLaunchAppFullScreen',
      '-ntp.NTPTest.testLaunchAppNewWindow',
      '-ntp.NTPTest.testLaunchAppPinnedTab',
      '-ntp.NTPTest.testLaunchAppRegularTab',
      '-ntp.NTPTest.testLaunchAppWithDefaultSettings',
      '-ntp.NTPTest.testUninstallApp',
      # crbug.com/70694, crbug.com/73078
      '-passwords.PasswordTest.testInfoBarDisappearByReload',
      '-passwords.PasswordTest.testNeverSavePasswords',
      # crbug.com/91887
      '-passwords.PasswordTest.testInfoBarDisappearByNavigatingPage',
      # crbug.com/67588
      '-passwords.PasswordTest.testSavedPasswordInTabsAndWindows',
      # crbug.com/88679
      '-sync',
      # crbug.com/86949
      '-sync.SyncTest.testRestartBrowser',
      # crbug.com/87642
      '-sync.SyncTest.testDisableAndEnableDatatypes',
      # crbug.com/88190
      '-passwords.PasswordTest.testClearFetchedCredForNewUserName',
      # Crashes browser. crbug.com/89000
      '-prefs.PrefsTest.testGeolocationPref',
      # crbug.com/93822
      '-process_count.ProcessCountTest.testProcessCountAppendSingleTab',
      '-process_count.ProcessCountTest.testProcessCountCombination',
      '-process_count.ProcessCountTest.testProcessCountExtensionProcess',
      '-process_count.ProcessCountTest.testProcessCountFlashProcess',
      '-process_count.ProcessCountTest.testProcessCountFreshProfile',
      '-process_count.ProcessCountTest.testProcessCountNewWindow',
    ],

    'mac': [
      # ==================================================
      # Disabled tests that need to be investigated/fixed.
      # ==================================================
      # Keychain popups make autofill/password tests difficult: crbug.com/49378
      '-autofill',
      # Autofill on Mac. crbug.com/95165
      '-browsing_data.BrowsingDataTest.testClearAutofillData',
      # codesign tests should run *after* signing. crbug.com/50481
      '-codesign',
      '-crash_reporter.CrashReporterTest.testRendererCrash',  # crbug.com/69464
      # crbug.com/75724
      '-downloads.DownloadsTest.testDeclineDangerousDownload',
      # crbug.com/75724
      '-downloads.DownloadsTest.testSaveDangerousFile',
      '-instant.InstantTest.testInstantNavigation',  # crbug.com/69090
      # crbug.com/93956
       '-find_in_page.FindMatchTests.testSearchInPDF',
      # crbug.com/66072
      '-notifications.NotificationsTest.testNotificationOrderAfterClosingOne',
      '-ntp.NTPTest.testLaunchAppNewWindow',  # crbug.com/79812
      # Causes browser crash.  crbug.com/93548
      '-notifications.NotificationsTest.testIncognitoNotification',
      '-notifications.NotificationsTest.testOriginPrefsNotSavedInIncognito',
      # crbug.com/70437
      '-omnibox.OmniboxTest.testHistoryResult',
      # crbug.com/91617
      '-omnibox.OmniboxTest.testContentHistory',
      '-omnibox.OmniboxTest.testOmniboxSearchHistory',
      # Keychain popups make autofill/password tests difficult: crbug.com/49378
      '-passwords',
      # crbug.com/95142
      '-process_count.ProcessCountTest.testProcessCountExtensionProcess',
      # WebDriver requires python 2.6, which mac pyauto does not use yet.
      # crbug.com/49379
      '-pyauto_webdriver',
      # crbug.com/79263
      '-popups.PopupsTest.testPopupsLaunchUponBrowserBackButton',
      # crbug.com/69619
      '-search_engines.SearchEnginesTest.testDiscoverSearchEngine',
      # Keychain popups make sync tests difficult on Mac.  crbug.com/49378
      '-sync',
      # crbug.com/87837
      '-plugins.PluginsTest.testBlockPluginException',
      '-plugins.PluginsTest.testDisableEnableAllPlugins',
      '-plugins.PluginsTest.testKillAndReloadAllPlugins',
    ],

    'linux': [  # linux != chromeos
      # ===========================
      # Permanently-disabled tests.
      # ===========================
      '-browser.BrowserTest.testWindowResize',  # Details at: crbug.com/44963
      # Several omnibox tests do not show omnibox results when run
      # under virtual X on linux.  The CONTINUOUS suite runs under virtual X
      # on the chromium bots, so exlcude these from here.  They're included
      # back in the FULL suite below.
      # crbug.com/85310
      '-omnibox.OmniboxTest.testAutoCompleteForNonAsciiSearch',
      '-omnibox.OmniboxTest.testAutoCompleteForSearch',
      '-omnibox.OmniboxTest.testBookmarkResultInNewTabAndWindow',
      '-omnibox.OmniboxTest.testCrazyFilenames',
      '-omnibox.OmniboxTest.testDifferentTypesOfResults',
      '-omnibox.OmniboxTest.testFetchHistoryResultItems',
      '-omnibox.OmniboxTest.testGoogleSearch',
      '-omnibox.OmniboxTest.testInlinAutoComplete',
      '-omnibox.OmniboxTest.testSelect',
      '-omnibox.OmniboxTest.testSuggest',
      '-omnibox.OmniboxTest.testSuggestPref',
      # System password manager obstructs password automation.
      '-passwords',

      # ==================================================
      # Disabled tests that need to be investigated/fixed.
      # ==================================================
      # crbug.com/90882
      '-autofill.AutofillTest.testCharsStrippedForAggregatedPhoneNumbers',
      # crbug.com/91225
      '-find_in_page.FindMatchTests.testSearchInPDF',
      # crbug.com/91226
      '-infobars.InfobarTest.testPluginCrashForMultiTabs',
      # crbug.com/85310
      '-instant',
      # Gnome / kwallet popups on linux break sync tests.  crbug.com/80329
      '-sync',
      # crbug.com/87837
      '-plugins.PluginsTest.testKillAndReloadAllPlugins',
    ],

    # ChromeOS is linux, but note that this section does not include the
    # entries in the linux section above.
    # These tests use the named automation interface to control the
    # primary chrome on ChromeOS.
    'chromeos': [
      'chromeos_basic',
      'chromeos_browser',
      'chromeos_firmware_version_checker',
      'chromeos_power',
      'chromeos_prefs',
      'chromeos_security',
      'chromeos_time',
      'chromeos_update',
      'chromeos_wifi_sanity',

      # ===========================
      # Permanently-disabled tests.
      # ===========================
      # You cannot resize the browser window on ChromeOS.
      '-browser.BrowserTest.testWindowResize',
      # No codesign verification on ChromeOS.
      '-codesign',
      # Import tests are invalid on ChromeOS since Chrome is the only browser.
      '-imports',

      # ==================================================
      # Disabled tests that need to be investigated/fixed.
      # ==================================================
      # crbug.com/90882
      '-autofill.AutofillTest.testCharsStrippedForAggregatedPhoneNumbers',
      # crbug.com/81271
      '-autofill.AutofillTest.testMergeAggregatedProfilesWithSameAddress',	
      '-autofill.AutofillTest.testProfilesNotMergedWhenNoMinAddressData',
      # Flaky: crosbug.com/14394
      '-browsing_data.BrowsingDataTest.testClearHistoryAndDownloads',
      # Downloads panel stays even after declining a download.
      # crosbug.com/14728
      '-downloads.DownloadsTest.testDeclineDangerousDownload',
      # Need internal data dirs in autotest package. crosbug.com/6855
      '-find_in_page.FindMatchTests.testSearchInPDF',
      # Plugin crash infobar does not show up for file:/// flash urls
      # crosbug.com/14971
      '-infobars.InfobarTest.testPluginCrashInfobar',
      # Flaky: crosbug.com/14439
      '-instant.InstantSettingsTest.testEnableDisableInstant',
      # crosbug.com/14256
      '-ntp.NTPTest.testLaunchAppFullScreen',
      # Content history broken in omnibox.  crosbug.com/14416
      '-omnibox.OmniboxTest.testContentHistory',
      # crosbug.com/19760
      '-passwords.PasswordTest.testClearFetchedCredForNewUserName',
      '-passwords.PasswordTest.testSavedPasswordInTabsAndWindows',
      # onunload popups get created in the same window on chromeos
      # crosbug.com/14924
      '-popups.PopupsTest.testPopupsLaunchWhenTabIsClosed',
      # Session restore not working with PyAuto.  crosbug.com/12648
      '-prefs.PrefsTest.testNavigationStateOnSessionRestore',
      '-prefs.PrefsTest.testSessionRestoreURLs',
      '-prefs.PrefsTest.testSessionRestore',
      # sync tests were running into a secondary passphrase. crosbug.com/15016.
      '-sync',
      # crbug.com/87837
      '-plugins.PluginsTest.testKillAndReloadAllPlugins',

      # Deal with i18n chars.  crosbug.com/12639
      '-autofill.AutofillTest.testFillProfileCrazyCharacters',
      '-downloads.DownloadsTest.testCrazyFilenames',
      '-omnibox.OmniboxTest.testCrazyFilenames',

      # crosbug.com/16977
      '-chromeos_wifi_sanity.ChromeosWifiSanity.testConnectToHiddenWiFiNonExistent',

      # crosbug.com/20025
      '-chromeos_browser.ChromeosBrowserTest.testFullScreen',
    ],
  },

  # The CONTINUOUS_PUBLIC is a subset of CONTINUOUS suite
  # and excludes tests that depend on internal data
  'CONTINUOUS_PUBLIC': {
    'all': [
      '@CONTINUOUS',

      # ==================================================
      # Disabled tests that need to be investigated/fixed.
      # ==================================================
      # These currently fail even with internal data
      '-chromeos_firmware_version_checker.ChromeosFirmwareVersionChecker.testECVersion',
      '-chromeos_firmware_version_checker.ChromeosFirmwareVersionChecker.testFirmwareVersion',
      '-passwords.PasswordTest.testSavedPasswordInTabsAndWindows',

      # ===========================
      # Permanently-disabled tests.
      # ===========================
      '-infobars.InfobarTest.testPluginCrashForMultiTabs',
      '-chromeos_security.ChromeosSecurity.testBundledCrxPermissions',
      '-chromeos_security.ChromeosSecurity.testCannotViewLocalFiles',
      '-chromeos_security.ChromeosSecurity.testComponentExtensionPermissions',
      '-chromeos_security.ChromeosSecurity.testNoUnexpectedExtensions',
      '-flash.FlashTest.testCanLoadFlash',
      '-flash.FlashTest.testFlashLoadsAfterKill',
      '-flash.FlashTest.testFlashIncognitoMode',
      '-flash.FlashTest.testFlashWithMultipleTabs',
      '-flash.FlashTest.testSingleFlashPluginProcess',
      '-ntp.NTPTest.testGetAppsWhenInstallApp',
      '-ntp.NTPTest.testLaunchAppNewWindow',
      '-ntp.NTPTest.testLaunchAppPinnedTab',
      '-ntp.NTPTest.testLaunchAppRegularTab',
      '-ntp.NTPTest.testLaunchAppWithDefaultSettings',
      '-ntp.NTPTest.testUninstallApp',
      '-passwords.PasswordTest.testDisplayAndSavePasswordInfobar',
      '-passwords.PasswordTest.testInfoBarDisappearByNavigatingPage',
      '-passwords.PasswordTest.testInfoBarDisappearByReload',
      '-passwords.PasswordTest.testNeverSavePasswords',
      '-plugins.PluginsTest.testBlockAllPlugins',
      '-plugins.PluginsTest.testBlockPluginException',
      '-popups.PopupsTest.testMultiplePopups',
      '-popups.PopupsTest.testPopupBlockedEverySec',

    ],

    'win': [
    ],

    'mac': [
    ],

    'linux': [
    ],

    'chromeos': [
    ],
  },

  # The FULL suite includes CONTINUOUS, and more.
  # This the suite that gets run on 'Google Chrome' builds.
  'FULL': {
    'all': [
      '@CONTINUOUS',
      'nacl_sdk',
      'translate',

      # ==================================================
      # Disabled tests that need to be investigated/fixed.
      # ==================================================
      # Disable pyauto+webdriver tests on 'Google Chrome' bots until next
      # build is generated. 8/15/2011. Remove tomorrow.
      '-pyauto_webdriver',
      # This test fails due to crbug.com/35485
      '-translate.TranslateTest.testBarNotVisibleOnSSLErrorPage',
      # This test fails due to crbug.com/50706
      '-translate.TranslateTest.testToggleTranslateOption',
      # crbug.com/70280
      '-translate.TranslateTest.testSeveralLanguages',
      # crbug.com/85601
      '-translate.TranslateTest.testAlwaysTranslateInIncognito',
      # This test fails due to crbug.com/85633
      '-translate.TranslateTest.testSessionRestore',
      # The source is behind.  Waiting for dev to automate the update.
      '-nacl_sdk.NaClSDKTest.testVerifyNaClSDKChecksum',
    ],

    'win': [
      'enterprise',
      'gpu',
      # crbug.com/92446
      '-gpu.GpuTest.testGpuWithVideo',
      # Preloaded extensions affect process count: crbug.com/94350
      '-process_count',
    ],

    'mac': [
    ],

    'linux': [
      'enterprise',
      # Add back the omnibox tests excluded from the CONTINUOUS suite above
      # because they do not produce omnibox results under virtual X on linux.
      # crbug.com/85310
      'instant',
      'omnibox.OmniboxTest.testAutoCompleteForNonAsciiSearch',
      'omnibox.OmniboxTest.testAutoCompleteForSearch',
      'omnibox.OmniboxTest.testBookmarkResultInNewTabAndWindow',
      'omnibox.OmniboxTest.testCrazyFilenames',
      'omnibox.OmniboxTest.testDifferentTypesOfResults',
      'omnibox.OmniboxTest.testFetchHistoryResultItems',
      'omnibox.OmniboxTest.testGoogleSearch',
      'omnibox.OmniboxTest.testInlinAutoComplete',
      'omnibox.OmniboxTest.testSelect',
      'omnibox.OmniboxTest.testSuggest',
      'omnibox.OmniboxTest.testSuggestPref',

      # ==================================================
      # Disabled tests that need to be investigated/fixed.
      # ==================================================
      # crbug.com/83459
      '-instant.InstantTest.testPreFetchInstantURLSetsNoCookies',

      # crbug.com/95035
      '-enterprise.EnterpriseTestReverse.testEnable3DAPI',
    ],

    'chromeos': [
      # ===========================
      # Permanently-disabled tests.
      # ===========================
      # No NaCl support on ChromeOS.
      '-nacl_sdk',

      # ==================================================
      # Disabled tests that need to be investigated/fixed.
      # ==================================================
      # Session restore not working with PyAuto.  crosbug.com/12648
      '-translate.TranslateTest.testSessionRestore',
      # Deal with i18n chars.  crosbug.com/12639
      '-translate.TranslateTest.testDownloadsNotTranslated',
    ],
  },

  'EMPTY': {
  },

  'CHROMEOS_CONNECTIVITY': {
    'chromeos': [
      'chromeos_wifi_functional',
      'chromeos_wifi_compliance',
      'wifi_downloads',
      'wifi_notification',
    ],
  },

  # ChromeOS flash tests.
  'CHROMEOS_FLASH': {
    'chromeos': [
      'flash',
    ],
  },

  # ChromeOS login tests.
  'CHROMEOS_LOGIN': {
    'chromeos': [
      'chromeos_login',
    ],
  },

  # ChromeOS performance tests.
  'CHROMEOS_PERF': {
    'chromeos': [
      'perf',
    ],
  },

  # HTML5 media performance tests.
  'AV_PERF': {
     'linux': [
       'media.media_playbacktime',
       'media.media_perf',
       'media.media_fps',
     ],
  },

  # HTML5 media functional tests.
  'AV_FUNC': {
     'linux': [
       'media.media_event_simple_action',
       'media.media_event_simple_test',
       'media.media_event_track',
     ],
  },
}
