Index: chrome/android/javatests/src/org/chromium/chrome/browser/multiwindow/MultiWindowIntegrationTest.java |
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/multiwindow/MultiWindowIntegrationTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/multiwindow/MultiWindowIntegrationTest.java |
index 557f05f90a8e21f3fe470585ba0703507b8968fa..f4ffd8ceb49edaea5d837b2b3d1ddd2d96a51d0f 100644 |
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/multiwindow/MultiWindowIntegrationTest.java |
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/multiwindow/MultiWindowIntegrationTest.java |
@@ -10,8 +10,15 @@ import android.annotation.TargetApi; |
import android.app.ActivityManager; |
import android.content.Context; |
import android.os.Build; |
+import android.support.test.InstrumentationRegistry; |
import android.support.test.filters.MediumTest; |
+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.ActivityState; |
import org.chromium.base.ApplicationStatus; |
import org.chromium.base.ContextUtils; |
@@ -24,7 +31,9 @@ import org.chromium.chrome.browser.ChromeSwitches; |
import org.chromium.chrome.browser.ChromeTabbedActivity2; |
import org.chromium.chrome.browser.firstrun.FirstRunStatus; |
import org.chromium.chrome.browser.tabmodel.TabWindowManager; |
-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.MenuUtils; |
import org.chromium.content.browser.test.util.Criteria; |
import org.chromium.content.browser.test.util.CriteriaHelper; |
@@ -34,14 +43,22 @@ import java.util.concurrent.Callable; |
/** |
* Integration testing for Android's N+ MultiWindow. |
*/ |
+@RunWith(ChromeJUnit4ClassRunner.class) |
+@CommandLineFlags.Add({ |
+ ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE, |
+ ChromeActivityTestRule.DISABLE_NETWORK_PREDICTION_FLAG, |
+}) |
@MinAndroidSdkLevel(Build.VERSION_CODES.N) |
-public class MultiWindowIntegrationTest extends ChromeTabbedActivityTestBase { |
+public class MultiWindowIntegrationTest { |
+ @Rule |
+ public ChromeTabbedActivityTestRule mActivityTestRule = new ChromeTabbedActivityTestRule(); |
- @Override |
- public void startMainActivity() throws InterruptedException { |
- startMainActivityOnBlankPage(); |
+ @Before |
+ public void setUp() throws InterruptedException { |
+ mActivityTestRule.startMainActivityOnBlankPage(); |
} |
+ @Test |
@MediumTest |
@Feature("MultiWindow") |
@TargetApi(Build.VERSION_CODES.N) |
@@ -55,10 +72,11 @@ public class MultiWindowIntegrationTest extends ChromeTabbedActivityTestBase { |
} |
}); |
- newIncognitoTabFromMenu(); |
- assertTrue(getActivity().getActivityTab().isIncognito()); |
- final int incognitoTabId = getActivity().getActivityTab().getId(); |
- final ChromeTabbedActivity2 cta2 = createSecondChromeTabbedActivity(getActivity()); |
+ mActivityTestRule.newIncognitoTabFromMenu(); |
+ Assert.assertTrue(mActivityTestRule.getActivity().getActivityTab().isIncognito()); |
+ final int incognitoTabId = mActivityTestRule.getActivity().getActivityTab().getId(); |
+ final ChromeTabbedActivity2 cta2 = |
+ createSecondChromeTabbedActivity(mActivityTestRule.getActivity()); |
ThreadUtils.runOnUiThreadBlocking(new Runnable() { |
@Override |
@@ -67,7 +85,7 @@ public class MultiWindowIntegrationTest extends ChromeTabbedActivityTestBase { |
ActivityManager activityManager = |
(ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); |
for (ActivityManager.AppTask task : activityManager.getAppTasks()) { |
- if (getActivity().getTaskId() == task.getTaskInfo().id) { |
+ if (mActivityTestRule.getActivity().getTaskId() == task.getTaskInfo().id) { |
task.moveToFront(); |
break; |
} |
@@ -78,12 +96,13 @@ public class MultiWindowIntegrationTest extends ChromeTabbedActivityTestBase { |
new Callable<Integer>() { |
@Override |
public Integer call() throws Exception { |
- return ApplicationStatus.getStateForActivity(getActivity()); |
+ return ApplicationStatus.getStateForActivity( |
+ mActivityTestRule.getActivity()); |
} |
})); |
- MenuUtils.invokeCustomMenuActionSync( |
- getInstrumentation(), getActivity(), R.id.move_to_other_window_menu_id); |
+ MenuUtils.invokeCustomMenuActionSync(InstrumentationRegistry.getInstrumentation(), |
+ mActivityTestRule.getActivity(), R.id.move_to_other_window_menu_id); |
CriteriaHelper.pollUiThread(Criteria.equals(1, |
new Callable<Integer>() { |
@@ -96,10 +115,10 @@ public class MultiWindowIntegrationTest extends ChromeTabbedActivityTestBase { |
ThreadUtils.runOnUiThreadBlocking(new Runnable() { |
@Override |
public void run() { |
- assertEquals(1, TabWindowManager.getInstance().getIncognitoTabCount()); |
+ Assert.assertEquals(1, TabWindowManager.getInstance().getIncognitoTabCount()); |
// Ensure the same tab exists in the new activity. |
- assertEquals(incognitoTabId, cta2.getActivityTab().getId()); |
+ Assert.assertEquals(incognitoTabId, cta2.getActivityTab().getId()); |
} |
}); |
} finally { |