Commit 2a2a1fcd authored by boliu's avatar boliu Committed by Commit bot

Mark flaky chrome_public tests with @RetryOnFailure Batch 5

BUG=619055
TBR=tedchoc@chromium.org

Review-Url: https://codereview.chromium.org/2336803005
Cr-Commit-Position: refs/heads/master@{#418624}
parent 17ebec65
...@@ -10,6 +10,7 @@ import android.text.TextUtils; ...@@ -10,6 +10,7 @@ import android.text.TextUtils;
import org.chromium.base.BuildInfo; import org.chromium.base.BuildInfo;
import org.chromium.base.test.util.DisableIf; import org.chromium.base.test.util.DisableIf;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.test.ChromeActivityTestCaseBase; import org.chromium.chrome.test.ChromeActivityTestCaseBase;
import java.io.BufferedReader; import java.io.BufferedReader;
...@@ -38,6 +39,7 @@ public class ProcessIsolationTest extends ChromeActivityTestCaseBase<ChromeActiv ...@@ -38,6 +39,7 @@ public class ProcessIsolationTest extends ChromeActivityTestCaseBase<ChromeActiv
@MediumTest @MediumTest
@DisableIf.Build(sdk_is_greater_than = 22, message = "crbug.com/517611") @DisableIf.Build(sdk_is_greater_than = 22, message = "crbug.com/517611")
@Feature({"Browser", "Security"}) @Feature({"Browser", "Security"})
@RetryOnFailure
public void testProcessIsolationForRenderers() throws InterruptedException { public void testProcessIsolationForRenderers() throws InterruptedException {
int tabsCount = getActivity().getCurrentTabModel().getCount(); int tabsCount = getActivity().getCurrentTabModel().getCount();
// The ActivityManager can be used to retrieve the current processes, but the reported UID // The ActivityManager can be used to retrieve the current processes, but the reported UID
......
...@@ -11,6 +11,7 @@ import android.test.suitebuilder.annotation.SmallTest; ...@@ -11,6 +11,7 @@ import android.test.suitebuilder.annotation.SmallTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.test.ChromeActivityTestCaseBase; import org.chromium.chrome.test.ChromeActivityTestCaseBase;
import org.chromium.content.browser.test.util.Criteria; import org.chromium.content.browser.test.util.Criteria;
...@@ -25,6 +26,7 @@ import java.util.concurrent.TimeoutException; ...@@ -25,6 +26,7 @@ import java.util.concurrent.TimeoutException;
/** /**
* Integration tests verifying that form resubmission dialogs are correctly displayed and handled. * Integration tests verifying that form resubmission dialogs are correctly displayed and handled.
*/ */
@RetryOnFailure
public class RepostFormWarningTest extends ChromeActivityTestCaseBase<ChromeActivity> { public class RepostFormWarningTest extends ChromeActivityTestCaseBase<ChromeActivity> {
// Active tab. // Active tab.
private Tab mTab; private Tab mTab;
......
...@@ -13,6 +13,7 @@ import android.test.suitebuilder.annotation.MediumTest; ...@@ -13,6 +13,7 @@ import android.test.suitebuilder.annotation.MediumTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.base.test.util.UrlUtils; import org.chromium.base.test.util.UrlUtils;
import org.chromium.chrome.test.ChromeActivityTestCaseBase; import org.chromium.chrome.test.ChromeActivityTestCaseBase;
import org.chromium.content.browser.ContentViewCore; import org.chromium.content.browser.ContentViewCore;
...@@ -102,6 +103,7 @@ public class SelectFileDialogTest extends ChromeActivityTestCaseBase<ChromeActiv ...@@ -102,6 +103,7 @@ public class SelectFileDialogTest extends ChromeActivityTestCaseBase<ChromeActiv
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2) @TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
@MediumTest @MediumTest
@Feature({"TextInput", "Main"}) @Feature({"TextInput", "Main"})
@RetryOnFailure
public void testSelectFileAndCancelRequest() throws Throwable { public void testSelectFileAndCancelRequest() throws Throwable {
DOMUtils.clickNode(this, mContentViewCore, "input_file"); DOMUtils.clickNode(this, mContentViewCore, "input_file");
CriteriaHelper.pollInstrumentationThread(new IntentSentCriteria()); CriteriaHelper.pollInstrumentationThread(new IntentSentCriteria());
......
...@@ -13,6 +13,7 @@ import android.os.ParcelFileDescriptor; ...@@ -13,6 +13,7 @@ import android.os.ParcelFileDescriptor;
import android.test.suitebuilder.annotation.LargeTest; import android.test.suitebuilder.annotation.LargeTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.share.ShareHelper; import org.chromium.chrome.browser.share.ShareHelper;
import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.util.ChromeFileProvider; import org.chromium.chrome.browser.util.ChromeFileProvider;
...@@ -103,6 +104,7 @@ public class ShareIntentTest extends ChromeTabbedActivityTestBase { ...@@ -103,6 +104,7 @@ public class ShareIntentTest extends ChromeTabbedActivityTestBase {
} }
@LargeTest @LargeTest
@RetryOnFailure
public void testShareIntent() { public void testShareIntent() {
final MockChromeActivity mockActivity = new MockChromeActivity(getActivity()); final MockChromeActivity mockActivity = new MockChromeActivity(getActivity());
// Sets a test component as last shared and "shareDirectly" option is set so that the share // Sets a test component as last shared and "shareDirectly" option is set so that the share
......
...@@ -19,6 +19,7 @@ import android.view.ViewGroup; ...@@ -19,6 +19,7 @@ import android.view.ViewGroup;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.test.ChromeActivityTestCaseBase; import org.chromium.chrome.test.ChromeActivityTestCaseBase;
import org.chromium.content.browser.test.util.CallbackHelper; import org.chromium.content.browser.test.util.CallbackHelper;
...@@ -165,6 +166,7 @@ public class SmartClipProviderTest ...@@ -165,6 +166,7 @@ public class SmartClipProviderTest
@MediumTest @MediumTest
@Feature({"SmartClip"}) @Feature({"SmartClip"})
@RetryOnFailure
public void testSmartClipDataCallback() throws InterruptedException, TimeoutException { public void testSmartClipDataCallback() throws InterruptedException, TimeoutException {
ThreadUtils.runOnUiThreadBlocking(new Runnable() { ThreadUtils.runOnUiThreadBlocking(new Runnable() {
@Override @Override
......
...@@ -9,6 +9,7 @@ import android.widget.ImageButton; ...@@ -9,6 +9,7 @@ import android.widget.ImageButton;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.Restriction; import org.chromium.base.test.util.Restriction;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.R; import org.chromium.chrome.R;
import org.chromium.chrome.browser.toolbar.TabSwitcherDrawable; import org.chromium.chrome.browser.toolbar.TabSwitcherDrawable;
import org.chromium.chrome.test.ChromeTabbedActivityTestBase; import org.chromium.chrome.test.ChromeTabbedActivityTestBase;
...@@ -39,6 +40,7 @@ public class TabCountLabelTest extends ChromeTabbedActivityTestBase { ...@@ -39,6 +40,7 @@ public class TabCountLabelTest extends ChromeTabbedActivityTestBase {
@MediumTest @MediumTest
@Feature({"Browser", "Main"}) @Feature({"Browser", "Main"})
@Restriction(ChromeRestriction.RESTRICTION_TYPE_PHONE) @Restriction(ChromeRestriction.RESTRICTION_TYPE_PHONE)
@RetryOnFailure
public void testTabCountLabel() throws InterruptedException { public void testTabCountLabel() throws InterruptedException {
final int tabCount = getActivity().getCurrentTabModel().getCount(); final int tabCount = getActivity().getCurrentTabModel().getCount();
tabCountLabelCheck("Initial state", tabCount); tabCountLabelCheck("Initial state", tabCount);
......
...@@ -9,6 +9,7 @@ import android.test.suitebuilder.annotation.SmallTest; ...@@ -9,6 +9,7 @@ import android.test.suitebuilder.annotation.SmallTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.tab.EmptyTabObserver; import org.chromium.chrome.browser.tab.EmptyTabObserver;
import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabObserver; import org.chromium.chrome.browser.tab.TabObserver;
...@@ -23,6 +24,7 @@ import org.chromium.content.browser.test.util.CriteriaHelper; ...@@ -23,6 +24,7 @@ import org.chromium.content.browser.test.util.CriteriaHelper;
/** /**
* Tests for Tab class. * Tests for Tab class.
*/ */
@RetryOnFailure
public class TabTest extends ChromeActivityTestCaseBase<ChromeActivity> { public class TabTest extends ChromeActivityTestCaseBase<ChromeActivity> {
private Tab mTab; private Tab mTab;
private CallbackHelper mOnTitleUpdatedHelper; private CallbackHelper mOnTitleUpdatedHelper;
......
...@@ -10,6 +10,7 @@ import android.test.suitebuilder.annotation.MediumTest; ...@@ -10,6 +10,7 @@ import android.test.suitebuilder.annotation.MediumTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.Restriction; import org.chromium.base.test.util.Restriction;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.test.ChromeActivityTestCaseBase; import org.chromium.chrome.test.ChromeActivityTestCaseBase;
import org.chromium.chrome.test.util.ChromeRestriction; import org.chromium.chrome.test.util.ChromeRestriction;
...@@ -77,6 +78,7 @@ public class TabThemeTest extends ChromeActivityTestCaseBase<ChromeTabbedActivit ...@@ -77,6 +78,7 @@ public class TabThemeTest extends ChromeActivityTestCaseBase<ChromeTabbedActivit
@Feature({"Toolbar-Theme-Color"}) @Feature({"Toolbar-Theme-Color"})
@MediumTest @MediumTest
@Restriction(ChromeRestriction.RESTRICTION_TYPE_PHONE) @Restriction(ChromeRestriction.RESTRICTION_TYPE_PHONE)
@RetryOnFailure
public void testThemeColorIsCorrect() public void testThemeColorIsCorrect()
throws ExecutionException, InterruptedException, TimeoutException { throws ExecutionException, InterruptedException, TimeoutException {
......
...@@ -24,6 +24,7 @@ import org.chromium.base.test.util.CommandLineFlags; ...@@ -24,6 +24,7 @@ import org.chromium.base.test.util.CommandLineFlags;
import org.chromium.base.test.util.DisabledTest; import org.chromium.base.test.util.DisabledTest;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.FlakyTest; import org.chromium.base.test.util.FlakyTest;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.R; import org.chromium.chrome.R;
import org.chromium.chrome.browser.tab.EmptyTabObserver; import org.chromium.chrome.browser.tab.EmptyTabObserver;
import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.tab.Tab;
...@@ -45,6 +46,7 @@ import java.util.concurrent.TimeoutException; ...@@ -45,6 +46,7 @@ import java.util.concurrent.TimeoutException;
/** /**
* Test the behavior of tabs when opening a URL from an external app. * Test the behavior of tabs when opening a URL from an external app.
*/ */
@RetryOnFailure
public class TabsOpenedFromExternalAppTest extends ChromeTabbedActivityTestBase { public class TabsOpenedFromExternalAppTest extends ChromeTabbedActivityTestBase {
private static final String EXTERNAL_APP_1_ID = "app1"; private static final String EXTERNAL_APP_1_ID = "app1";
private static final String EXTERNAL_APP_2_ID = "app2"; private static final String EXTERNAL_APP_2_ID = "app2";
......
...@@ -18,6 +18,7 @@ import org.chromium.base.ApiCompatibilityUtils; ...@@ -18,6 +18,7 @@ import org.chromium.base.ApiCompatibilityUtils;
import org.chromium.base.test.util.CommandLineFlags; import org.chromium.base.test.util.CommandLineFlags;
import org.chromium.base.test.util.DisabledTest; import org.chromium.base.test.util.DisabledTest;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.base.test.util.TestFileUtil; import org.chromium.base.test.util.TestFileUtil;
import org.chromium.base.test.util.UrlUtils; import org.chromium.base.test.util.UrlUtils;
import org.chromium.chrome.browser.ChromeActivity; import org.chromium.chrome.browser.ChromeActivity;
...@@ -42,6 +43,7 @@ import java.util.concurrent.TimeUnit; ...@@ -42,6 +43,7 @@ import java.util.concurrent.TimeUnit;
* TODO(cimamoglu): Add a test with multiple, stacked onLayout/onWrite calls. * TODO(cimamoglu): Add a test with multiple, stacked onLayout/onWrite calls.
* TODO(cimamoglu): Add a test which emulates Chromium failing to generate a PDF. * TODO(cimamoglu): Add a test which emulates Chromium failing to generate a PDF.
*/ */
@RetryOnFailure
public class PrintingControllerTest extends ChromeActivityTestCaseBase<ChromeActivity> { public class PrintingControllerTest extends ChromeActivityTestCaseBase<ChromeActivity> {
private static final String TEMP_FILE_NAME = "temp_print"; private static final String TEMP_FILE_NAME = "temp_print";
......
...@@ -10,6 +10,7 @@ import android.net.Uri; ...@@ -10,6 +10,7 @@ import android.net.Uri;
import android.test.suitebuilder.annotation.MediumTest; import android.test.suitebuilder.annotation.MediumTest;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import java.util.Arrays; import java.util.Arrays;
import java.util.Date; import java.util.Date;
...@@ -91,6 +92,7 @@ public class ProviderBookmarksUriTest extends ProviderTestBase { ...@@ -91,6 +92,7 @@ public class ProviderBookmarksUriTest extends ProviderTestBase {
@MediumTest @MediumTest
@Feature({"Android-ContentProvider"}) @Feature({"Android-ContentProvider"})
@RetryOnFailure
public void testQueryBookmark() { public void testQueryBookmark() {
final long now = System.currentTimeMillis(); final long now = System.currentTimeMillis();
final long lastUpdateTime[] = { now, now - 1000 * 60 }; final long lastUpdateTime[] = { now, now - 1000 * 60 };
...@@ -170,6 +172,7 @@ public class ProviderBookmarksUriTest extends ProviderTestBase { ...@@ -170,6 +172,7 @@ public class ProviderBookmarksUriTest extends ProviderTestBase {
@MediumTest @MediumTest
@Feature({"Android-ContentProvider"}) @Feature({"Android-ContentProvider"})
@RetryOnFailure
public void testUpdateBookmark() { public void testUpdateBookmark() {
final long now = System.currentTimeMillis(); final long now = System.currentTimeMillis();
final long lastUpdateTime[] = { now, now - 1000 * 60 }; final long lastUpdateTime[] = { now, now - 1000 * 60 };
...@@ -221,6 +224,7 @@ public class ProviderBookmarksUriTest extends ProviderTestBase { ...@@ -221,6 +224,7 @@ public class ProviderBookmarksUriTest extends ProviderTestBase {
@MediumTest @MediumTest
@Feature({"Android-ContentProvider"}) @Feature({"Android-ContentProvider"})
@RetryOnFailure
public void testDeleteBookmark() { public void testDeleteBookmark() {
final long now = System.currentTimeMillis(); final long now = System.currentTimeMillis();
final long lastUpdateTime[] = { now, now - 1000 * 60 }; final long lastUpdateTime[] = { now, now - 1000 * 60 };
......
...@@ -10,6 +10,7 @@ import android.net.Uri; ...@@ -10,6 +10,7 @@ import android.net.Uri;
import android.test.suitebuilder.annotation.MediumTest; import android.test.suitebuilder.annotation.MediumTest;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import java.util.Date; import java.util.Date;
...@@ -42,6 +43,7 @@ public class ProviderSearchesUriTest extends ProviderTestBase { ...@@ -42,6 +43,7 @@ public class ProviderSearchesUriTest extends ProviderTestBase {
@MediumTest @MediumTest
@Feature({"Android-ContentProvider"}) @Feature({"Android-ContentProvider"})
@RetryOnFailure
public void testAddSearchTerm() { public void testAddSearchTerm() {
long searchTime = System.currentTimeMillis(); long searchTime = System.currentTimeMillis();
String searchTerm = "chrome"; String searchTerm = "chrome";
...@@ -92,6 +94,7 @@ public class ProviderSearchesUriTest extends ProviderTestBase { ...@@ -92,6 +94,7 @@ public class ProviderSearchesUriTest extends ProviderTestBase {
@MediumTest @MediumTest
@Feature({"Android-ContentProvider"}) @Feature({"Android-ContentProvider"})
@RetryOnFailure
public void testDeleteSearchTerm() { public void testDeleteSearchTerm() {
long[] searchTime = { System.currentTimeMillis(), System.currentTimeMillis() - 1000 }; long[] searchTime = { System.currentTimeMillis(), System.currentTimeMillis() - 1000 };
String[] searchTerm = {"chrome", "chromium"}; String[] searchTerm = {"chrome", "chromium"};
...@@ -126,6 +129,7 @@ public class ProviderSearchesUriTest extends ProviderTestBase { ...@@ -126,6 +129,7 @@ public class ProviderSearchesUriTest extends ProviderTestBase {
// Copied from CTS test with minor adaptations. // Copied from CTS test with minor adaptations.
@MediumTest @MediumTest
@Feature({"Android-ContentProvider"}) @Feature({"Android-ContentProvider"})
@RetryOnFailure
public void testSearchesTable() { public void testSearchesTable() {
final int idIndex = 0; final int idIndex = 0;
String insertSearch = "search_insert"; String insertSearch = "search_insert";
......
...@@ -18,6 +18,7 @@ import android.util.Pair; ...@@ -18,6 +18,7 @@ import android.util.Pair;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.library_loader.ProcessInitException; import org.chromium.base.library_loader.ProcessInitException;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.infobar.InfoBar; import org.chromium.chrome.browser.infobar.InfoBar;
import org.chromium.chrome.browser.init.ChromeBrowserInitializer; import org.chromium.chrome.browser.init.ChromeBrowserInitializer;
import org.chromium.chrome.browser.notifications.NotificationTestBase; import org.chromium.chrome.browser.notifications.NotificationTestBase;
...@@ -188,6 +189,7 @@ public class PushMessagingTest ...@@ -188,6 +189,7 @@ public class PushMessagingTest
*/ */
@MediumTest @MediumTest
@Feature({"Browser", "PushMessaging"}) @Feature({"Browser", "PushMessaging"})
@RetryOnFailure
public void testPushAndShowNotification() throws InterruptedException, TimeoutException { public void testPushAndShowNotification() throws InterruptedException, TimeoutException {
setNotificationContentSettingForCurrentOrigin(ContentSetting.ALLOW); setNotificationContentSettingForCurrentOrigin(ContentSetting.ALLOW);
runScriptAndWaitForTitle("subscribePush()", "subscribe ok"); runScriptAndWaitForTitle("subscribePush()", "subscribe ok");
...@@ -206,6 +208,7 @@ public class PushMessagingTest ...@@ -206,6 +208,7 @@ public class PushMessagingTest
*/ */
@LargeTest @LargeTest
@Feature({"Browser", "PushMessaging"}) @Feature({"Browser", "PushMessaging"})
@RetryOnFailure
public void testDefaultNotification() throws InterruptedException, TimeoutException { public void testDefaultNotification() throws InterruptedException, TimeoutException {
// Start off using the tab loaded in setUp(). // Start off using the tab loaded in setUp().
assertEquals(1, getActivity().getCurrentTabModel().getCount()); assertEquals(1, getActivity().getCurrentTabModel().getCount());
......
...@@ -9,6 +9,7 @@ import android.test.suitebuilder.annotation.SmallTest; ...@@ -9,6 +9,7 @@ import android.test.suitebuilder.annotation.SmallTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.search_engines.TemplateUrlService.LoadListener; import org.chromium.chrome.browser.search_engines.TemplateUrlService.LoadListener;
import org.chromium.chrome.browser.search_engines.TemplateUrlService.TemplateUrl; import org.chromium.chrome.browser.search_engines.TemplateUrlService.TemplateUrl;
import org.chromium.chrome.test.util.ApplicationData; import org.chromium.chrome.test.util.ApplicationData;
...@@ -48,6 +49,7 @@ public class TemplateUrlServiceTest extends NativeLibraryTestBase { ...@@ -48,6 +49,7 @@ public class TemplateUrlServiceTest extends NativeLibraryTestBase {
@SmallTest @SmallTest
@Feature({"ContextualSearch"}) @Feature({"ContextualSearch"})
@RetryOnFailure
public void testUrlForContextualSearchQueryValid() public void testUrlForContextualSearchQueryValid()
throws InterruptedException, ExecutionException { throws InterruptedException, ExecutionException {
waitForTemplateUrlServiceToLoad(); waitForTemplateUrlServiceToLoad();
...@@ -90,6 +92,7 @@ public class TemplateUrlServiceTest extends NativeLibraryTestBase { ...@@ -90,6 +92,7 @@ public class TemplateUrlServiceTest extends NativeLibraryTestBase {
@SmallTest @SmallTest
@Feature({"SearchEngines"}) @Feature({"SearchEngines"})
@RetryOnFailure
public void testLoadUrlService() throws InterruptedException { public void testLoadUrlService() throws InterruptedException {
assertFalse(ThreadUtils.runOnUiThreadBlockingNoException(new Callable<Boolean>() { assertFalse(ThreadUtils.runOnUiThreadBlockingNoException(new Callable<Boolean>() {
@Override @Override
......
...@@ -12,6 +12,7 @@ import android.test.suitebuilder.annotation.MediumTest; ...@@ -12,6 +12,7 @@ import android.test.suitebuilder.annotation.MediumTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.AdvancedMockContext; import org.chromium.base.test.util.AdvancedMockContext;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.test.util.ApplicationData; import org.chromium.chrome.test.util.ApplicationData;
import org.chromium.components.sync.signin.AccountManagerHelper; import org.chromium.components.sync.signin.AccountManagerHelper;
...@@ -359,6 +360,7 @@ public class OAuth2TokenServiceIntegrationTest extends NativeLibraryTestBase { ...@@ -359,6 +360,7 @@ public class OAuth2TokenServiceIntegrationTest extends NativeLibraryTestBase {
@MediumTest @MediumTest
@UiThreadTest @UiThreadTest
@RetryOnFailure
public void testValidateAccountsTwoAccountsThenRemoveAllSignOut() { public void testValidateAccountsTwoAccountsThenRemoveAllSignOut() {
// Add accounts. // Add accounts.
mAccountManager.addAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_1); mAccountManager.addAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_1);
......
...@@ -10,6 +10,7 @@ import android.test.suitebuilder.annotation.SmallTest; ...@@ -10,6 +10,7 @@ import android.test.suitebuilder.annotation.SmallTest;
import org.chromium.base.test.util.AdvancedMockContext; import org.chromium.base.test.util.AdvancedMockContext;
import org.chromium.base.test.util.DisabledTest; import org.chromium.base.test.util.DisabledTest;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.test.util.browser.signin.MockChangeEventChecker; import org.chromium.chrome.test.util.browser.signin.MockChangeEventChecker;
import org.chromium.components.sync.signin.AccountManagerHelper; import org.chromium.components.sync.signin.AccountManagerHelper;
import org.chromium.components.sync.signin.ChromeSigninController; import org.chromium.components.sync.signin.ChromeSigninController;
...@@ -35,6 +36,7 @@ public class SigninHelperTest extends InstrumentationTestCase { ...@@ -35,6 +36,7 @@ public class SigninHelperTest extends InstrumentationTestCase {
} }
@SmallTest @SmallTest
@RetryOnFailure
public void testAccountsChangedPref() { public void testAccountsChangedPref() {
assertEquals("Should never return true before the pref has ever been set.", assertEquals("Should never return true before the pref has ever been set.",
false, SigninHelper.checkAndClearAccountsChangedPref(mContext)); false, SigninHelper.checkAndClearAccountsChangedPref(mContext));
...@@ -91,6 +93,7 @@ public class SigninHelperTest extends InstrumentationTestCase { ...@@ -91,6 +93,7 @@ public class SigninHelperTest extends InstrumentationTestCase {
} }
@SmallTest @SmallTest
@RetryOnFailure
public void testNotSignedInAccountRename2() { public void testNotSignedInAccountRename2() {
setSignedInAccountName("A"); setSignedInAccountName("A");
mEventChecker.insertRenameEvent("B", "C"); mEventChecker.insertRenameEvent("B", "C");
...@@ -100,6 +103,7 @@ public class SigninHelperTest extends InstrumentationTestCase { ...@@ -100,6 +103,7 @@ public class SigninHelperTest extends InstrumentationTestCase {
} }
@SmallTest @SmallTest
@RetryOnFailure
public void testChainedAccountRename2() { public void testChainedAccountRename2() {
setSignedInAccountName("A"); setSignedInAccountName("A");
mEventChecker.insertRenameEvent("Z", "Y"); // Unrelated. mEventChecker.insertRenameEvent("Z", "Y"); // Unrelated.
......
...@@ -8,6 +8,7 @@ import android.test.suitebuilder.annotation.MediumTest; ...@@ -8,6 +8,7 @@ import android.test.suitebuilder.annotation.MediumTest;
import android.test.suitebuilder.annotation.SmallTest; import android.test.suitebuilder.annotation.SmallTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.snackbar.SnackbarManager.SnackbarController; import org.chromium.chrome.browser.snackbar.SnackbarManager.SnackbarController;
import org.chromium.chrome.test.ChromeTabbedActivityTestBase; import org.chromium.chrome.test.ChromeTabbedActivityTestBase;
import org.chromium.content.browser.test.util.Criteria; import org.chromium.content.browser.test.util.Criteria;
...@@ -77,6 +78,7 @@ public class SnackbarTest extends ChromeTabbedActivityTestBase { ...@@ -77,6 +78,7 @@ public class SnackbarTest extends ChromeTabbedActivityTestBase {
} }
@SmallTest @SmallTest
@RetryOnFailure
public void testQueueStackOrder() throws InterruptedException { public void testQueueStackOrder() throws InterruptedException {
final Snackbar stackbar = Snackbar.make("stack", mDefaultController, final Snackbar stackbar = Snackbar.make("stack", mDefaultController,
Snackbar.TYPE_ACTION, Snackbar.UMA_TEST_SNACKBAR); Snackbar.TYPE_ACTION, Snackbar.UMA_TEST_SNACKBAR);
......
...@@ -13,6 +13,7 @@ import android.os.RemoteException; ...@@ -13,6 +13,7 @@ import android.os.RemoteException;
import android.test.suitebuilder.annotation.SmallTest; import android.test.suitebuilder.annotation.SmallTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.ChromeActivity; import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.childaccounts.ChildAccountService; import org.chromium.chrome.browser.childaccounts.ChildAccountService;
import org.chromium.chrome.browser.preferences.PrefServiceBridge; import org.chromium.chrome.browser.preferences.PrefServiceBridge;
...@@ -26,6 +27,7 @@ import java.util.concurrent.ExecutionException; ...@@ -26,6 +27,7 @@ import java.util.concurrent.ExecutionException;
/** /**
* Instrumentation test for SupervisedUserContentProvider. * Instrumentation test for SupervisedUserContentProvider.
*/ */
@RetryOnFailure
public class SupervisedUserContentProviderTest extends ChromeActivityTestCaseBase<ChromeActivity> { public class SupervisedUserContentProviderTest extends ChromeActivityTestCaseBase<ChromeActivity> {
private static final String DEFAULT_ACCOUNT = "test@gmail.com"; private static final String DEFAULT_ACCOUNT = "test@gmail.com";
private static final String AUTHORITY_SUFFIX = ".SupervisedUserProvider"; private static final String AUTHORITY_SUFFIX = ".SupervisedUserProvider";
......
...@@ -9,6 +9,7 @@ import android.test.suitebuilder.annotation.MediumTest; ...@@ -9,6 +9,7 @@ import android.test.suitebuilder.annotation.MediumTest;
import android.test.suitebuilder.annotation.SmallTest; import android.test.suitebuilder.annotation.SmallTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.ChromeActivity; import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.externalnav.ExternalNavigationHandler; import org.chromium.chrome.browser.externalnav.ExternalNavigationHandler;
import org.chromium.chrome.browser.externalnav.ExternalNavigationParams; import org.chromium.chrome.browser.externalnav.ExternalNavigationParams;
...@@ -27,6 +28,7 @@ import java.util.concurrent.TimeoutException; ...@@ -27,6 +28,7 @@ import java.util.concurrent.TimeoutException;
/** /**
* Tests for InterceptNavigationDelegate * Tests for InterceptNavigationDelegate
*/ */
@RetryOnFailure
public class InterceptNavigationDelegateTest extends ChromeActivityTestCaseBase<ChromeActivity> { public class InterceptNavigationDelegateTest extends ChromeActivityTestCaseBase<ChromeActivity> {
private static final String BASE_PAGE = "/chrome/test/data/navigation_interception/"; private static final String BASE_PAGE = "/chrome/test/data/navigation_interception/";
private static final String NAVIGATION_FROM_TIMEOUT_PAGE = private static final String NAVIGATION_FROM_TIMEOUT_PAGE =
......
...@@ -8,12 +8,14 @@ import android.test.suitebuilder.annotation.SmallTest; ...@@ -8,12 +8,14 @@ import android.test.suitebuilder.annotation.SmallTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.ChromeActivity; import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.test.ChromeActivityTestCaseBase; import org.chromium.chrome.test.ChromeActivityTestCaseBase;
/** /**
* Tests related to the sad tab logic. * Tests related to the sad tab logic.
*/ */
@RetryOnFailure
public class SadTabTest extends ChromeActivityTestCaseBase<ChromeActivity> { public class SadTabTest extends ChromeActivityTestCaseBase<ChromeActivity> {
public SadTabTest() { public SadTabTest() {
......
...@@ -17,6 +17,7 @@ import android.test.suitebuilder.annotation.SmallTest; ...@@ -17,6 +17,7 @@ import android.test.suitebuilder.annotation.SmallTest;
import org.chromium.base.CommandLine; import org.chromium.base.CommandLine;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.ui.base.PageTransition; import org.chromium.ui.base.PageTransition;
import java.net.URISyntaxException; import java.net.URISyntaxException;
...@@ -311,6 +312,7 @@ public class TabRedirectHandlerTest extends InstrumentationTestCase { ...@@ -311,6 +312,7 @@ public class TabRedirectHandlerTest extends InstrumentationTestCase {
@SmallTest @SmallTest
@Feature({"IntentHandling"}) @Feature({"IntentHandling"})
@RetryOnFailure
public void testNavigationFromLinkWithoutUserGesture() { public void testNavigationFromLinkWithoutUserGesture() {
TabRedirectHandler handler = new TabRedirectHandler(mContext); TabRedirectHandler handler = new TabRedirectHandler(mContext);
handler.updateIntent(sYtIntent); handler.updateIntent(sYtIntent);
...@@ -342,6 +344,7 @@ public class TabRedirectHandlerTest extends InstrumentationTestCase { ...@@ -342,6 +344,7 @@ public class TabRedirectHandlerTest extends InstrumentationTestCase {
@SmallTest @SmallTest
@Feature({"IntentHandling"}) @Feature({"IntentHandling"})
@RetryOnFailure
public void testNavigationFromReload() { public void testNavigationFromReload() {
TabRedirectHandler handler = new TabRedirectHandler(mContext); TabRedirectHandler handler = new TabRedirectHandler(mContext);
handler.updateIntent(sYtIntent); handler.updateIntent(sYtIntent);
...@@ -373,6 +376,7 @@ public class TabRedirectHandlerTest extends InstrumentationTestCase { ...@@ -373,6 +376,7 @@ public class TabRedirectHandlerTest extends InstrumentationTestCase {
@SmallTest @SmallTest
@Feature({"IntentHandling"}) @Feature({"IntentHandling"})
@RetryOnFailure
public void testNavigationWithForwardBack() { public void testNavigationWithForwardBack() {
TabRedirectHandler handler = new TabRedirectHandler(mContext); TabRedirectHandler handler = new TabRedirectHandler(mContext);
handler.updateIntent(sYtIntent); handler.updateIntent(sYtIntent);
......
...@@ -10,6 +10,7 @@ import android.test.suitebuilder.annotation.MediumTest; ...@@ -10,6 +10,7 @@ import android.test.suitebuilder.annotation.MediumTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.MetricsUtils.HistogramDelta; import org.chromium.base.test.util.MetricsUtils.HistogramDelta;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.ChromeActivity; import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.tabmodel.TabModel.TabLaunchType; import org.chromium.chrome.browser.tabmodel.TabModel.TabLaunchType;
import org.chromium.chrome.browser.tabmodel.TabModel.TabSelectionType; import org.chromium.chrome.browser.tabmodel.TabModel.TabSelectionType;
...@@ -23,6 +24,7 @@ import java.util.concurrent.ExecutionException; ...@@ -23,6 +24,7 @@ import java.util.concurrent.ExecutionException;
/** /**
* Tests for Tab-related histogram collection. * Tests for Tab-related histogram collection.
*/ */
@RetryOnFailure
public class TabUmaTest extends ChromeActivityTestCaseBase<ChromeActivity> { public class TabUmaTest extends ChromeActivityTestCaseBase<ChromeActivity> {
private static final String TEST_PATH = "/chrome/test/data/android/about.html"; private static final String TEST_PATH = "/chrome/test/data/android/about.html";
......
...@@ -10,6 +10,7 @@ import android.test.suitebuilder.annotation.LargeTest; ...@@ -10,6 +10,7 @@ import android.test.suitebuilder.annotation.LargeTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.Restriction; import org.chromium.base.test.util.Restriction;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.base.test.util.UrlUtils; import org.chromium.base.test.util.UrlUtils;
import org.chromium.chrome.browser.snackbar.SnackbarManager; import org.chromium.chrome.browser.snackbar.SnackbarManager;
import org.chromium.chrome.browser.tabmodel.TabModel; import org.chromium.chrome.browser.tabmodel.TabModel;
...@@ -53,6 +54,7 @@ public class UndoIntegrationTest extends ChromeTabbedActivityTestBase { ...@@ -53,6 +54,7 @@ public class UndoIntegrationTest extends ChromeTabbedActivityTestBase {
*/ */
@LargeTest @LargeTest
@Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE) @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE)
@RetryOnFailure
public void testAddNewContentsFromClosingTab() throws InterruptedException, TimeoutException { public void testAddNewContentsFromClosingTab() throws InterruptedException, TimeoutException {
loadUrl(WINDOW_OPEN_BUTTON_URL); loadUrl(WINDOW_OPEN_BUTTON_URL);
......
...@@ -9,6 +9,7 @@ import android.test.suitebuilder.annotation.MediumTest; ...@@ -9,6 +9,7 @@ import android.test.suitebuilder.annotation.MediumTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.R; import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeActivity; import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.tab.Tab;
...@@ -26,6 +27,7 @@ import java.util.regex.Pattern; ...@@ -26,6 +27,7 @@ import java.util.regex.Pattern;
/** /**
* Verifies URL load parameters set when triggering navigations from the context menu. * Verifies URL load parameters set when triggering navigations from the context menu.
*/ */
@RetryOnFailure
public class ContextMenuLoadUrlParamsTest extends ChromeTabbedActivityTestBase { public class ContextMenuLoadUrlParamsTest extends ChromeTabbedActivityTestBase {
private static final String HTML_PATH = private static final String HTML_PATH =
"/chrome/test/data/android/contextmenu/context_menu_test.html"; "/chrome/test/data/android/contextmenu/context_menu_test.html";
......
...@@ -8,6 +8,7 @@ import android.test.suitebuilder.annotation.SmallTest; ...@@ -8,6 +8,7 @@ import android.test.suitebuilder.annotation.SmallTest;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tabmodel.TabModel.TabLaunchType; import org.chromium.chrome.browser.tabmodel.TabModel.TabLaunchType;
import org.chromium.chrome.test.ChromeTabbedActivityTestBase; import org.chromium.chrome.test.ChromeTabbedActivityTestBase;
...@@ -50,6 +51,7 @@ public class IncognitoTabModelTest extends ChromeTabbedActivityTestBase { ...@@ -50,6 +51,7 @@ public class IncognitoTabModelTest extends ChromeTabbedActivityTestBase {
*/ */
@SmallTest @SmallTest
@Feature({"OffTheRecord"}) @Feature({"OffTheRecord"})
@RetryOnFailure
public void testCloseAllDuringAddTabDoesNotCrash() { public void testCloseAllDuringAddTabDoesNotCrash() {
createTabOnUiThread(); createTabOnUiThread();
assertEquals(1, mTabModel.getCount()); assertEquals(1, mTabModel.getCount());
......
...@@ -15,6 +15,7 @@ import org.chromium.base.annotations.SuppressFBWarnings; ...@@ -15,6 +15,7 @@ import org.chromium.base.annotations.SuppressFBWarnings;
import org.chromium.base.metrics.RecordHistogram; import org.chromium.base.metrics.RecordHistogram;
import org.chromium.base.test.util.AdvancedMockContext; import org.chromium.base.test.util.AdvancedMockContext;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.TabState; import org.chromium.chrome.browser.TabState;
import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabIdManager; import org.chromium.chrome.browser.tab.TabIdManager;
...@@ -253,6 +254,7 @@ public class RestoreMigrateTest extends InstrumentationTestCase { ...@@ -253,6 +254,7 @@ public class RestoreMigrateTest extends InstrumentationTestCase {
*/ */
@SmallTest @SmallTest
@Feature({"TabPersistentStore"}) @Feature({"TabPersistentStore"})
@RetryOnFailure
public void testFindsMaxIdProperly() throws IOException { public void testFindsMaxIdProperly() throws IOException {
TabModelSelector selector0 = new MockTabModelSelector(1, 1, null); TabModelSelector selector0 = new MockTabModelSelector(1, 1, null);
TabModelSelector selector1 = new MockTabModelSelector(1, 1, null); TabModelSelector selector1 = new MockTabModelSelector(1, 1, null);
......
...@@ -16,6 +16,7 @@ import org.chromium.base.ThreadUtils; ...@@ -16,6 +16,7 @@ import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.AdvancedMockContext; import org.chromium.base.test.util.AdvancedMockContext;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.MinAndroidSdkLevel; import org.chromium.base.test.util.MinAndroidSdkLevel;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.browser.ChromeActivity; import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.TabState; import org.chromium.chrome.browser.TabState;
import org.chromium.chrome.browser.compositor.overlays.strip.StripLayoutHelper; import org.chromium.chrome.browser.compositor.overlays.strip.StripLayoutHelper;
...@@ -595,6 +596,7 @@ public class TabPersistentStoreTest extends NativeLibraryTestBase { ...@@ -595,6 +596,7 @@ public class TabPersistentStoreTest extends NativeLibraryTestBase {
*/ */
@SmallTest @SmallTest
@Feature({"TabPersistentStore"}) @Feature({"TabPersistentStore"})
@RetryOnFailure
public void testUndoCloseAllTabsWritesTabListFile() throws Exception { public void testUndoCloseAllTabsWritesTabListFile() throws Exception {
final TabModelMetaDataInfo info = TestTabModelDirectory.TAB_MODEL_METADATA_V5_NO_M18; final TabModelMetaDataInfo info = TestTabModelDirectory.TAB_MODEL_METADATA_V5_NO_M18;
mMockDirectory.writeTabModelFiles(info, true); mMockDirectory.writeTabModelFiles(info, true);
......
...@@ -14,6 +14,7 @@ import org.chromium.base.test.util.DisabledTest; ...@@ -14,6 +14,7 @@ import org.chromium.base.test.util.DisabledTest;
import org.chromium.base.test.util.FlakyTest; import org.chromium.base.test.util.FlakyTest;
import org.chromium.base.test.util.MinAndroidSdkLevel; import org.chromium.base.test.util.MinAndroidSdkLevel;
import org.chromium.base.test.util.Restriction; import org.chromium.base.test.util.Restriction;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.base.test.util.UrlUtils; import org.chromium.base.test.util.UrlUtils;
import org.chromium.chrome.browser.ChromeTabbedActivity2; import org.chromium.chrome.browser.ChromeTabbedActivity2;
import org.chromium.chrome.browser.multiwindow.MultiWindowUtilsTest; import org.chromium.chrome.browser.multiwindow.MultiWindowUtilsTest;
...@@ -376,6 +377,7 @@ public class UndoTabModelTest extends ChromeTabbedActivityTestBase { ...@@ -376,6 +377,7 @@ public class UndoTabModelTest extends ChromeTabbedActivityTestBase {
* @throws InterruptedException * @throws InterruptedException
*/ */
@MediumTest @MediumTest
@RetryOnFailure
public void testSingleTab() throws InterruptedException { public void testSingleTab() throws InterruptedException {
TabModel model = getActivity().getTabModelSelector().getModel(false); TabModel model = getActivity().getTabModelSelector().getModel(false);
ChromeTabCreator tabCreator = getActivity().getTabCreator(false); ChromeTabCreator tabCreator = getActivity().getTabCreator(false);
...@@ -615,6 +617,7 @@ public class UndoTabModelTest extends ChromeTabbedActivityTestBase { ...@@ -615,6 +617,7 @@ public class UndoTabModelTest extends ChromeTabbedActivityTestBase {
* @throws InterruptedException * @throws InterruptedException
*/ */
@MediumTest @MediumTest
@RetryOnFailure
public void testInOrderRestore() throws InterruptedException { public void testInOrderRestore() throws InterruptedException {
TabModel model = getActivity().getTabModelSelector().getModel(false); TabModel model = getActivity().getTabModelSelector().getModel(false);
ChromeTabCreator tabCreator = getActivity().getTabCreator(false); ChromeTabCreator tabCreator = getActivity().getTabCreator(false);
...@@ -926,6 +929,7 @@ public class UndoTabModelTest extends ChromeTabbedActivityTestBase { ...@@ -926,6 +929,7 @@ public class UndoTabModelTest extends ChromeTabbedActivityTestBase {
* @throws InterruptedException * @throws InterruptedException
*/ */
@MediumTest @MediumTest
@RetryOnFailure
public void testOutOfOrder1() throws InterruptedException { public void testOutOfOrder1() throws InterruptedException {
TabModel model = getActivity().getTabModelSelector().getModel(false); TabModel model = getActivity().getTabModelSelector().getModel(false);
ChromeTabCreator tabCreator = getActivity().getTabCreator(false); ChromeTabCreator tabCreator = getActivity().getTabCreator(false);
...@@ -1259,6 +1263,7 @@ public class UndoTabModelTest extends ChromeTabbedActivityTestBase { ...@@ -1259,6 +1263,7 @@ public class UndoTabModelTest extends ChromeTabbedActivityTestBase {
* @throws InterruptedException * @throws InterruptedException
*/ */
@MediumTest @MediumTest
@RetryOnFailure
public void testMoveTab() throws InterruptedException { public void testMoveTab() throws InterruptedException {
TabModel model = getActivity().getTabModelSelector().getModel(false); TabModel model = getActivity().getTabModelSelector().getModel(false);
ChromeTabCreator tabCreator = getActivity().getTabCreator(false); ChromeTabCreator tabCreator = getActivity().getTabCreator(false);
...@@ -1381,6 +1386,7 @@ public class UndoTabModelTest extends ChromeTabbedActivityTestBase { ...@@ -1381,6 +1386,7 @@ public class UndoTabModelTest extends ChromeTabbedActivityTestBase {
* @throws InterruptedException * @throws InterruptedException
*/ */
@MediumTest @MediumTest
@RetryOnFailure
public void testUndoNotSupported() throws InterruptedException { public void testUndoNotSupported() throws InterruptedException {
TabModel model = getActivity().getTabModelSelector().getModel(true); TabModel model = getActivity().getTabModelSelector().getModel(true);
ChromeTabCreator tabCreator = getActivity().getTabCreator(true); ChromeTabCreator tabCreator = getActivity().getTabCreator(true);
...@@ -1458,6 +1464,7 @@ public class UndoTabModelTest extends ChromeTabbedActivityTestBase { ...@@ -1458,6 +1464,7 @@ public class UndoTabModelTest extends ChromeTabbedActivityTestBase {
* @throws InterruptedException * @throws InterruptedException
*/ */
@MediumTest @MediumTest
@RetryOnFailure
public void testOpenRecentlyClosedTab() throws InterruptedException { public void testOpenRecentlyClosedTab() throws InterruptedException {
TabModelSelector selector = getActivity().getTabModelSelector(); TabModelSelector selector = getActivity().getTabModelSelector();
TabModel model = selector.getModel(false); TabModel model = selector.getModel(false);
......
...@@ -16,6 +16,7 @@ import org.chromium.base.SysUtils; ...@@ -16,6 +16,7 @@ import org.chromium.base.SysUtils;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.Restriction; import org.chromium.base.test.util.Restriction;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.base.test.util.UrlUtils; import org.chromium.base.test.util.UrlUtils;
import org.chromium.chrome.R; import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeActivity; import org.chromium.chrome.browser.ChromeActivity;
...@@ -34,6 +35,7 @@ import java.util.concurrent.Callable; ...@@ -34,6 +35,7 @@ import java.util.concurrent.Callable;
/** /**
* Contains tests for the brand color feature. * Contains tests for the brand color feature.
*/ */
@RetryOnFailure
public class BrandColorTest extends ChromeActivityTestCaseBase<ChromeActivity> { public class BrandColorTest extends ChromeActivityTestCaseBase<ChromeActivity> {
public BrandColorTest() { public BrandColorTest() {
......
...@@ -9,6 +9,7 @@ import android.test.suitebuilder.annotation.MediumTest; ...@@ -9,6 +9,7 @@ import android.test.suitebuilder.annotation.MediumTest;
import junit.framework.Assert; import junit.framework.Assert;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.R; import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeTabbedActivity; import org.chromium.chrome.browser.ChromeTabbedActivity;
import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.tab.Tab;
...@@ -31,6 +32,7 @@ public class ToolbarModelTest extends ChromeTabbedActivityTestBase { ...@@ -31,6 +32,7 @@ public class ToolbarModelTest extends ChromeTabbedActivityTestBase {
*/ */
@Feature({"Android-Toolbar"}) @Feature({"Android-Toolbar"})
@MediumTest @MediumTest
@RetryOnFailure
public void testClosingLastTabReflectedInModel() throws InterruptedException { public void testClosingLastTabReflectedInModel() throws InterruptedException {
assertNotSame("No current tab", Tab.INVALID_TAB_ID, assertNotSame("No current tab", Tab.INVALID_TAB_ID,
getCurrentTabId(getActivity())); getCurrentTabId(getActivity()));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment