Index: chrome/android/javatests/src/org/chromium/chrome/browser/ntp/RecentTabsPageTest.java |
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/ntp/RecentTabsPageTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/ntp/RecentTabsPageTest.java |
index 5cfee8b934c38e9dd5e084c393f2426870df714c..5cec2ddc423db61c0c3d8e1327d646831c65232c 100644 |
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/ntp/RecentTabsPageTest.java |
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/ntp/RecentTabsPageTest.java |
@@ -4,15 +4,27 @@ |
package org.chromium.chrome.browser.ntp; |
+import android.support.test.InstrumentationRegistry; |
import android.support.test.filters.MediumTest; |
import android.view.View; |
+import org.junit.After; |
+import org.junit.Assert; |
+import org.junit.Before; |
+import org.junit.Rule; |
+import org.junit.Test; |
+import org.junit.runner.RunWith; |
+ |
import org.chromium.base.ThreadUtils; |
+import org.chromium.base.test.util.CommandLineFlags; |
import org.chromium.base.test.util.Feature; |
import org.chromium.base.test.util.RetryOnFailure; |
+import org.chromium.chrome.browser.ChromeSwitches; |
import org.chromium.chrome.browser.UrlConstants; |
import org.chromium.chrome.browser.tab.Tab; |
-import org.chromium.chrome.test.ChromeTabbedActivityTestBase; |
+import org.chromium.chrome.test.ChromeActivityTestRule; |
+import org.chromium.chrome.test.ChromeJUnit4ClassRunner; |
+import org.chromium.chrome.test.ChromeTabbedActivityTestRule; |
import org.chromium.content.browser.test.util.Criteria; |
import org.chromium.content.browser.test.util.CriteriaHelper; |
import org.chromium.content.browser.test.util.TestTouchUtils; |
@@ -24,45 +36,48 @@ import java.util.List; |
/** |
* Instrumentation tests for {@link RecentTabsPage}. |
*/ |
+@RunWith(ChromeJUnit4ClassRunner.class) |
+@CommandLineFlags.Add({ |
+ ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE, |
+ ChromeActivityTestRule.DISABLE_NETWORK_PREDICTION_FLAG, |
+}) |
@RetryOnFailure |
-public class RecentTabsPageTest extends ChromeTabbedActivityTestBase { |
+public class RecentTabsPageTest { |
+ @Rule |
+ public ChromeTabbedActivityTestRule mActivityTestRule = new ChromeTabbedActivityTestRule(); |
+ |
private FakeRecentlyClosedTabManager mManager; |
private Tab mTab; |
private RecentTabsPage mPage; |
- @Override |
- protected void setUp() throws Exception { |
+ @Before |
+ public void setUp() throws Exception { |
mManager = new FakeRecentlyClosedTabManager(); |
RecentTabsManager.setRecentlyClosedTabManagerForTests(mManager); |
- super.setUp(); |
+ mActivityTestRule.startMainActivityOnBlankPage(); |
+ mTab = mActivityTestRule.getActivity().getActivityTab(); |
+ mPage = loadRecentTabsPage(); |
} |
- @Override |
- protected void tearDown() throws Exception { |
+ @After |
+ public void tearDown() throws Exception { |
leaveRecentTabsPage(); |
RecentTabsManager.setRecentlyClosedTabManagerForTests(null); |
- super.tearDown(); |
- } |
- |
- @Override |
- public void startMainActivity() throws InterruptedException { |
- startMainActivityOnBlankPage(); |
- mTab = getActivity().getActivityTab(); |
- mPage = loadRecentTabsPage(); |
} |
+ @Test |
@MediumTest |
@Feature({"RecentTabsPage"}) |
public void testRecentlyClosedTabs() throws InterruptedException { |
// Set a recently closed tab and confirm a view is rendered for it. |
List<RecentlyClosedTab> tabs = setRecentlyClosedTabs(1); |
- assertEquals(1, mManager.getRecentlyClosedTabs(1).size()); |
+ Assert.assertEquals(1, mManager.getRecentlyClosedTabs(1).size()); |
String title = tabs.get(0).title; |
View view = waitForView(title); |
// Clear the recently closed tabs with the context menu and confirm the view is gone. |
invokeContextMenu(view, RecentTabsRowAdapter.RecentlyClosedTabsGroup.ID_REMOVE_ALL); |
- assertEquals(0, mManager.getRecentlyClosedTabs(1).size()); |
+ Assert.assertEquals(0, mManager.getRecentlyClosedTabs(1).size()); |
waitForViewToDisappear(title); |
} |
@@ -85,14 +100,14 @@ public class RecentTabsPageTest extends ChromeTabbedActivityTestBase { |
} |
private RecentTabsPage loadRecentTabsPage() throws InterruptedException { |
- loadUrl(UrlConstants.RECENT_TABS_URL); |
+ mActivityTestRule.loadUrl(UrlConstants.RECENT_TABS_URL); |
CriteriaHelper.pollUiThread(new Criteria("RecentTabsPage never fully loaded") { |
@Override |
public boolean isSatisfied() { |
return mTab.getNativePage() instanceof RecentTabsPage; |
} |
}); |
- assertTrue(mTab.getNativePage() instanceof RecentTabsPage); |
+ Assert.assertTrue(mTab.getNativePage() instanceof RecentTabsPage); |
return (RecentTabsPage) mTab.getNativePage(); |
} |
@@ -100,7 +115,7 @@ public class RecentTabsPageTest extends ChromeTabbedActivityTestBase { |
* Leaves and destroys the {@link RecentTabsPage} by navigating the tab to {@code about:blank}. |
*/ |
private void leaveRecentTabsPage() throws InterruptedException { |
- loadUrl(ContentUrlConstants.ABOUT_BLANK_DISPLAY_URL); |
+ mActivityTestRule.loadUrl(ContentUrlConstants.ABOUT_BLANK_DISPLAY_URL); |
CriteriaHelper.pollUiThread(new Criteria("RecentTabsPage is still there") { |
@Override |
public boolean isSatisfied() { |
@@ -139,8 +154,8 @@ public class RecentTabsPageTest extends ChromeTabbedActivityTestBase { |
} |
private void invokeContextMenu(View view, int contextMenuItemId) { |
- TestTouchUtils.longClickView(getInstrumentation(), view); |
- assertTrue( |
- getInstrumentation().invokeContextMenuAction(getActivity(), contextMenuItemId, 0)); |
+ TestTouchUtils.longClickView(InstrumentationRegistry.getInstrumentation(), view); |
+ Assert.assertTrue(InstrumentationRegistry.getInstrumentation().invokeContextMenuAction( |
+ mActivityTestRule.getActivity(), contextMenuItemId, 0)); |
} |
} |