Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1679)

Unified Diff: chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreatorTest.java

Issue 2853573002: Convert ChromeTabbedActivityTestCaseBase children to JUnit4 (Closed)
Patch Set: rebase Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreatorTest.java
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreatorTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreatorTest.java
index 9f598424015e414cfaa9aef3e69f7f6ec8cff349..abcd3ec731e969cfd937d53607cd006e1305349b 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreatorTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreatorTest.java
@@ -7,16 +7,27 @@ package org.chromium.chrome.browser.tabmodel;
import static org.chromium.base.test.util.Restriction.RESTRICTION_TYPE_LOW_END_DEVICE;
import static org.chromium.base.test.util.Restriction.RESTRICTION_TYPE_NON_LOW_END_DEVICE;
+import android.support.test.InstrumentationRegistry;
import android.support.test.filters.MediumTest;
-import android.test.UiThreadTest;
+
+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.Restriction;
+import org.chromium.chrome.browser.ChromeSwitches;
import org.chromium.chrome.browser.WarmupManager;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tabmodel.TabModel.TabLaunchType;
-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.chrome.test.util.ChromeTabUtils;
import org.chromium.content_public.browser.LoadUrlParams;
import org.chromium.net.test.EmbeddedTestServer;
@@ -27,43 +38,52 @@ import java.util.concurrent.ExecutionException;
/**
* Tests for ChromeTabCreator.
*/
-public class ChromeTabCreatorTest extends ChromeTabbedActivityTestBase {
+@RunWith(ChromeJUnit4ClassRunner.class)
+@CommandLineFlags.Add({
+ ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE,
+ ChromeActivityTestRule.DISABLE_NETWORK_PREDICTION_FLAG,
+})
+public class ChromeTabCreatorTest {
+ @Rule
+ public ChromeTabbedActivityTestRule mActivityTestRule = new ChromeTabbedActivityTestRule();
+
private static final String TEST_PATH = "/chrome/test/data/android/about.html";
private EmbeddedTestServer mTestServer;
- @Override
- protected void setUp() throws Exception {
- super.setUp();
- mTestServer = EmbeddedTestServer.createAndStartServer(getInstrumentation().getContext());
+ @Before
+ public void setUp() throws Exception {
+ mActivityTestRule.startMainActivityOnBlankPage();
+ mTestServer = EmbeddedTestServer.createAndStartServer(
+ InstrumentationRegistry.getInstrumentation().getContext());
}
- @Override
- protected void tearDown() throws Exception {
+ @After
+ public void tearDown() throws Exception {
mTestServer.stopAndDestroyServer();
- super.tearDown();
}
/**
* Verify that tabs opened in background on low-end are loaded lazily.
*/
+ @Test
@Restriction(RESTRICTION_TYPE_LOW_END_DEVICE)
@MediumTest
@Feature({"Browser"})
public void testCreateNewTabInBackgroundLowEnd()
throws ExecutionException, InterruptedException {
- final Tab fgTab = getActivity().getActivityTab();
+ final Tab fgTab = mActivityTestRule.getActivity().getActivityTab();
final Tab bgTab = ThreadUtils.runOnUiThreadBlocking(new Callable<Tab>() {
@Override
public Tab call() {
- return getActivity().getCurrentTabCreator().createNewTab(
+ return mActivityTestRule.getActivity().getCurrentTabCreator().createNewTab(
new LoadUrlParams(mTestServer.getURL(TEST_PATH)),
TabLaunchType.FROM_LONGPRESS_BACKGROUND, fgTab);
}
});
// Verify that the background tab is not loading.
- assertFalse(bgTab.isLoading());
+ Assert.assertFalse(bgTab.isLoading());
// Switch tabs and verify that the tab is loaded as it gets foregrounded.
ChromeTabUtils.waitForTabPageLoaded(bgTab, new Runnable() {
@@ -72,34 +92,35 @@ public class ChromeTabCreatorTest extends ChromeTabbedActivityTestBase {
ThreadUtils.runOnUiThreadBlocking(new Runnable() {
@Override
public void run() {
- TabModelUtils.setIndex(getActivity().getCurrentTabModel(), indexOf(bgTab));
+ TabModelUtils.setIndex(mActivityTestRule.getActivity().getCurrentTabModel(),
+ indexOf(bgTab));
}
});
}
});
- assertNotNull(bgTab.getView());
+ Assert.assertNotNull(bgTab.getView());
}
/**
* Verify that tabs opened in background on regular devices are loaded eagerly.
*/
+ @Test
@Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE)
@MediumTest
@Feature({"Browser"})
- public void testCreateNewTabInBackground()
- throws ExecutionException, InterruptedException {
- final Tab fgTab = getActivity().getActivityTab();
+ public void testCreateNewTabInBackground() throws ExecutionException, InterruptedException {
+ final Tab fgTab = mActivityTestRule.getActivity().getActivityTab();
Tab bgTab = ThreadUtils.runOnUiThreadBlocking(new Callable<Tab>() {
@Override
public Tab call() {
- return getActivity().getCurrentTabCreator().createNewTab(
+ return mActivityTestRule.getActivity().getCurrentTabCreator().createNewTab(
new LoadUrlParams(mTestServer.getURL(TEST_PATH)),
TabLaunchType.FROM_LONGPRESS_BACKGROUND, fgTab);
}
});
// Verify that the background tab is loaded.
- assertNotNull(bgTab.getView());
+ Assert.assertNotNull(bgTab.getView());
ChromeTabUtils.waitForTabPageLoaded(bgTab, mTestServer.getURL(TEST_PATH));
}
@@ -108,31 +129,29 @@ public class ChromeTabCreatorTest extends ChromeTabbedActivityTestBase {
*
* Spare WebContents are not created on low-devices, so don't run the test.
*/
+ @Test
@Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE)
@MediumTest
@Feature({"Browser"})
- @UiThreadTest
- public void testCreateNewTabTakesSpareWebContents()
- throws ExecutionException, InterruptedException {
- Tab currentTab = getActivity().getActivityTab();
- WarmupManager.getInstance().createSpareWebContents();
- assertTrue(WarmupManager.getInstance().hasSpareWebContents());
- getActivity().getCurrentTabCreator().createNewTab(
- new LoadUrlParams(mTestServer.getURL(TEST_PATH)), TabLaunchType.FROM_EXTERNAL_APP,
- currentTab);
- assertFalse(WarmupManager.getInstance().hasSpareWebContents());
+ public void testCreateNewTabTakesSpareWebContents() throws Throwable {
+ mActivityTestRule.runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ Tab currentTab = mActivityTestRule.getActivity().getActivityTab();
+ WarmupManager.getInstance().createSpareWebContents();
+ Assert.assertTrue(WarmupManager.getInstance().hasSpareWebContents());
+ mActivityTestRule.getActivity().getCurrentTabCreator().createNewTab(
+ new LoadUrlParams(mTestServer.getURL(TEST_PATH)),
+ TabLaunchType.FROM_EXTERNAL_APP, currentTab);
+ Assert.assertFalse(WarmupManager.getInstance().hasSpareWebContents());
+ }
+ });
}
/**
* @return the index of the given tab in the current tab model
*/
private int indexOf(Tab tab) {
- return getActivity().getCurrentTabModel().indexOf(tab);
- }
-
-
- @Override
- public void startMainActivity() throws InterruptedException {
- startMainActivityOnBlankPage();
+ return mActivityTestRule.getActivity().getCurrentTabModel().indexOf(tab);
}
}

Powered by Google App Engine
This is Rietveld 408576698