# 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.
#
# 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 tess 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',
      # crbug.com/83655
      '-autofill.AutofillTest.testAutofillInvalid',
      # crbug.com/83686
      '-autofill.AutofillTest.testFillProfileCrazyCharacters',
      # crbug.com/77113 - M13 feature.
      '-autofill.AutofillTest.testProfileWithEmailInOtherFieldNotSaved',
      # crbug.com/81271
      '-autofill.AutofillTest.testMergeAggregatedProfilesWithSameAddress',
      '-autofill.AutofillTest.testProfilesNotMergedWhenNoMinAddressData',
      # crbug.com/83686 - M13 feature.
      '-autofill.AutofillTest.testSegmentNumbersNotSupportedInDOMUI',
      'bookmark_bar',
      'bookmarks',
      'browser',
      'browsing_data',
      'codesign',
      'content',
      '-content.ContentTest.testTopSitesContent',  # crbug.com/71824
      'cookies',
      'crash_reporter',
      'databases',
      # crbug.com/84060
      '-databases.DatabasesTest.testIncognitoCannotReadRegularDatabase',
      '-databases.DatabasesTest.testIncognitoDBPersistentAcrossTabs',
      '-databases.DatabasesTest.testIncognitoDatabaseNotPersistent',
      '-databases.DatabasesTest.testRegularCannotReadIncognitoDatabase',
      'downloads',
      'execute_javascript',
      'extensions',
      'find_in_page',
      # crbug.com/84638
      '-find_in_page.FindMatchTests.testSearchInPDF',
      # Turkish I problem. crbug.com/60638
      '-find_in_page.FindMatchTests.testLocalizationAndCaseOrder',
      'history',
      'https',
      'imports',
      'infobars',
      'instant',
      # crbug.com/83459
      '-instant.InstantTest.testPreFetchInstantURLSetsNoCookies',
      'navigation',
      'notifications',
      'ntp',
      'omnibox',
      '-omnibox.OmniboxTest.testHistoryResult',  # crbug.com/71715
      'passwords',
      'pdf',
      'plugins',
      'plugins_check',
      'popups',
      # crbug.com/82629 - real bug.
      '-popups.PopupsTest.testPopupsLaunchUponBrowserBackButton',
      # crbug.com/47935
      '-popups.PopupsTest.testBlockedPopupNotShowInHistory',
      # crbug.com/83827
      '-popups.PopupsTest.testUnblockedPopupShowsInHistory',
      'prefs',
      'search_engines',
      'shortcuts',
      'special_tabs',
      # Flaky: crbug.com/67851
      '-special_tabs.SpecialTabsTest.testAboutDNSTab',
      'sync',
      '-sync',  # causes browser crash. crbug.com/84494
      'test_basic',
      'themes',
    ],

    'win': [
      # Some download test fails on win official builder, only thru buildbot
      # when downloading the small zip file.
      # crbug.com/50481, crbug.com/54942
      '-downloads.DownloadsTest.testZip',
      '-downloads.DownloadsTest.testRemoveDownload',
      # crbug.com/66072
      '-notifications.NotificationsTest.testNotificationOrderAfterClosingOne',
      # crbug.com/70694, crbug.com/73078
      '-passwords.PasswordTest.testInfoBarDisappearByReload',
      '-passwords.PasswordTest.testNeverSavePasswords',
      # crbug.com/67588
      '-passwords.PasswordTest.testSavedPasswordInTabsAndWindows',
      '-prefs.PrefsTest.testDownloadDirPref',
      # crbug.com/83820
      '-passwords.PasswordTest.testInfoBarDisappearByNavigatingPage',
      '-passwords.PasswordTest.testDisplayAndSavePasswordInfobar',
    ],

    'mac': [
      # Keychain popups make password & autofill tests difficult.
      # crbug.com/49378
      '-passwords',
      '-autofill',
      # codesign tests should run *after* signing. crbug.com/50481
      '-crash_reporter.CrashReporterTest.testRendererCrash',  # crbug.com/69464
      '-codesign',
      # crbug.com/75724
      '-downloads.DownloadsTest.testDeclineDangerousDownload',
      # crbug.com/75724
      '-downloads.DownloadsTest.testSaveDangerousFile',
      # crbug.com/68656
      '-downloads.DownloadsTest.testOpenWhenDone',
      '-downloads.DownloadsTest.testAlwaysOpenFileType',
      '-instant.InstantTest.testInstantNavigation',  # crbug.com/69090
      # crbug.com/66072
      '-notifications.NotificationsTest.testNotificationOrderAfterClosingOne',
      '-ntp.NTPTest.testLaunchAppNewWindow',  # crbug.com/79812
      # crbug.com/70437
      '-omnibox.OmniboxTest.testHistoryResult',
      # 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',
    ],

    'linux': [  # linux != chromeos
      '-browser.BrowserTest.testWindowResize',  # crbug.com/44963
      # System password manager obstructs password automation.
      '-passwords',
      # Gnome / kwallet popups on linux break sync tests.  crbug.com/80329
      '-sync',
    ],

    # 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_power',
      'chromeos_security',
      'chromeos_update',
      'chromeos_wifi',
      'chromeos_firmware_version_checker',

      # you cannot resize browser window on chromeos
      '-browser.BrowserTest.testWindowResize',
      # Flaky: crosbug.com/14394
      '-browsing_data.BrowsingDataTest.testClearHistoryAndDownloads',
      # no codesign verification on chromeos
      '-codesign',
      # 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',
      # Importer tests are invalid on chromeos since chrome is the only browser
      '-imports',
      # Plugin crash infobar does not show up for file:/// flash urls
      # crosbug.com/14971
      '-infobars.InfobarTest.testPluginCrashInfobar',
      # Flaky: crosbug.com/14439
      '-instant.InstantSettingsTest.testEnableDisableInstant',

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

      # Session restore not working with PyAuto.  crosbug.com/12648
      '-prefs.PrefsTest.testNavigationStateOnSessionRestore',
      '-prefs.PrefsTest.testSessionRestoreURLs',
      '-prefs.PrefsTest.testSessionRestore',

      # crosbug.com/14256
      '-ntp.NTPTest.testLaunchAppFullScreen',

      # Content history broken in omnibox.  crosbug.com/14416
      '-omnibox.OmniboxTest.testContentHistory',

      # onunload popups get created in the same window on chromeos
      # crosbug.com/14924
      '-popups.PopupsTest.testPopupsLaunchWhenTabIsClosed',

      # Failing notifications tests  crbug.com/81624
      '-notifications.NotificationsTest.testCloseNotification',
      '-notifications.NotificationsTest.testCreateDenyCloseNotifications',
      '-notifications.NotificationsTest.testNotificationOrderAfterClosingOne',
      '-notifications.NotificationsTest.testAllowOnPermissionInfobar',
      '-notifications.NotificationsTest.testClosePermissionInfobar',
      '-notifications.NotificationsTest.testCloseTabWithPermissionInfobar',
      '-notifications.NotificationsTest.testCrashTabWithPermissionInfobar',
      '-notifications.NotificationsTest.testDenyOnPermissionInfobar',
      '-notifications.NotificationsTest.testExitBrowserWithInfobar',
      '-notifications.NotificationsTest.testIncognitoNotification',
      '-notifications.NotificationsTest.testNavigateAwayWithPermissionInfobar',
      '-notifications.NotificationsTest.testOriginPrefsNotSavedInIncognito',
      '-notifications.NotificationsTest.testPermissionInfobarAppears',
      '-notifications.NotificationsTest.testKillNotificationProcess',

      # sync tests were running into a secondary passphrase. crosbug.com/15016.
      '-sync',

      # crosbug.com/16977
      '-chromeos_wifi.ChromeosWifi.testConnectToHiddenWiFiNonExistent',
    ],
  },

  # The FULL suite includes CONTINUOUS, and more.
  # This the suite that gets run on 'Google Chrome' builds.
  'FULL': {
    'all': [
      '@CONTINUOUS',
      'translate',
      # 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',
      # This test fails due to crbug.com/85633
      '-translate.TranslateTest.testSessionRestore',
    ],

    'win': [
      'enterprise',
    ],

    'mac': [
    ],

    'linux': [
    ],

    'chromeos': [
      # Session restore not working with PyAuto.  crosbug.com/12648
      '-translate.TranslateTest.testSessionRestore',
      # Deal with i18n chars.  crosbug.com/12639
      '-translate.TranslateTest.testDownloadsNotTranslated',
    ],
  },

  'EMPTY': {
  },

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