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

Unified Diff: chrome/android/javatests/src/org/chromium/chrome/browser/signin/SigninTest.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/signin/SigninTest.java
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/signin/SigninTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/signin/SigninTest.java
index e5bf596a422c293c2bb8dcfe9eaff3c00d859838..98437c5841d9bb60dc605c724fdac0615401da02 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/signin/SigninTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/signin/SigninTest.java
@@ -11,13 +11,23 @@ import android.app.Instrumentation.ActivityMonitor;
import android.content.Context;
import android.content.DialogInterface;
import android.preference.Preference;
+import android.support.test.InstrumentationRegistry;
import android.support.test.filters.MediumTest;
import android.support.v7.app.AlertDialog;
import android.widget.Button;
+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.Restriction;
import org.chromium.chrome.R;
+import org.chromium.chrome.browser.ChromeSwitches;
import org.chromium.chrome.browser.bookmarks.BookmarkBridge;
import org.chromium.chrome.browser.preferences.MainPreferences;
import org.chromium.chrome.browser.preferences.PrefServiceBridge;
@@ -25,7 +35,9 @@ import org.chromium.chrome.browser.preferences.Preferences;
import org.chromium.chrome.browser.preferences.SignInPreference;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.sync.ProfileSyncService;
-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.ActivityUtils;
import org.chromium.chrome.test.util.ChromeRestriction;
import org.chromium.chrome.test.util.browser.signin.SigninTestUtil;
@@ -41,11 +53,19 @@ import org.chromium.content.browser.test.util.TestTouchUtils;
*
* The accounts used to sign in are mocked by a FakeAccountManagerDelegate.
*/
-public class SigninTest extends ChromeTabbedActivityTestBase {
-
+@RunWith(ChromeJUnit4ClassRunner.class)
+@CommandLineFlags.Add({
+ ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE,
+ ChromeActivityTestRule.DISABLE_NETWORK_PREDICTION_FLAG,
+})
+public class SigninTest {
/**
* Helper class that observes when signing in becomes allowed.
*/
+
+ @Rule
+ public ChromeTabbedActivityTestRule mActivityTestRule = new ChromeTabbedActivityTestRule();
+
private static class TestSignInAllowedObserver implements SigninManager.SignInAllowedObserver {
private final Object mLock = new Object();
private boolean mIsSignInAllowed;
@@ -196,14 +216,13 @@ public class SigninTest extends ChromeTabbedActivityTestBase {
private TestBookmarkModelObserver mTestBookmarkModelObserver;
private TestSignInObserver mTestSignInObserver;
- @Override
- protected void setUp() throws Exception {
+ @Before
+ public void setUp() throws Exception {
// Mock out the account manager on the device.
- SigninTestUtil.setUpAuthForTest(getInstrumentation());
-
- super.setUp();
+ SigninTestUtil.setUpAuthForTest(InstrumentationRegistry.getInstrumentation());
- mContext = getInstrumentation().getTargetContext();
+ mActivityTestRule.startMainActivityOnBlankPage();
+ mContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
final TestSignInAllowedObserver signinAllowedObserver = new TestSignInAllowedObserver();
ThreadUtils.runOnUiThreadBlocking(new Runnable() {
@@ -219,19 +238,19 @@ public class SigninTest extends ChromeTabbedActivityTestBase {
// Get these handles in the UI thread.
mPrefService = PrefServiceBridge.getInstance();
- Profile profile = getActivity().getActivityTab().getProfile();
+ Profile profile = mActivityTestRule.getActivity().getActivityTab().getProfile();
mBookmarks = new BookmarkBridge(profile);
// Add a test bookmark, to verify later if sign out cleared the bookmarks.
mTestBookmarkModelObserver = new TestBookmarkModelObserver(mBookmarks);
mBookmarks.addObserver(mTestBookmarkModelObserver);
mTestBookmarkModelObserver.waitForBookmarkModelToLoad();
- assertEquals(0, mBookmarks.getChildCount(mBookmarks.getMobileFolderId()));
+ Assert.assertEquals(0, mBookmarks.getChildCount(mBookmarks.getMobileFolderId()));
BookmarkId mTestBookmark = mBookmarks.addBookmark(
mBookmarks.getMobileFolderId(), 0, "Test Bookmark", "http://google.com");
mTestBookmarkModelObserver.waitForBookmarkAdded();
- assertNotNull(mTestBookmark);
- assertEquals(1, mBookmarks.getChildCount(mBookmarks.getMobileFolderId()));
+ Assert.assertNotNull(mTestBookmark);
+ Assert.assertEquals(1, mBookmarks.getChildCount(mBookmarks.getMobileFolderId()));
// Start observing if signing in is allowed. This observer must be installed on
// the UI thread, but waiting must be done outside the UI thread (otherwise it
@@ -241,11 +260,11 @@ public class SigninTest extends ChromeTabbedActivityTestBase {
});
signinAllowedObserver.waitForSignInAllowed();
- assertTrue(mSigninManager.isSignInAllowed());
+ Assert.assertTrue(mSigninManager.isSignInAllowed());
}
- @Override
- protected void tearDown() throws Exception {
+ @After
+ public void tearDown() throws Exception {
ThreadUtils.runOnUiThreadBlocking(new Runnable() {
@Override
public void run() {
@@ -260,17 +279,10 @@ public class SigninTest extends ChromeTabbedActivityTestBase {
mBookmarks.destroy();
}
});
-
SigninTestUtil.tearDownAuthForTest();
-
- super.tearDown();
- }
-
- @Override
- public void startMainActivity() throws InterruptedException {
- startMainActivityOnBlankPage();
}
+ @Test
@MediumTest
@Restriction(ChromeRestriction.RESTRICTION_TYPE_GOOGLE_PLAY_SERVICES)
public void testConsumerSignin() {
@@ -281,23 +293,23 @@ public class SigninTest extends ChromeTabbedActivityTestBase {
@Override
public void run() {
// Verify that the account isn't managed.
- assertNull(mSigninManager.getManagementDomain());
+ Assert.assertNull(mSigninManager.getManagementDomain());
// Verify that the password manager is enabled by default.
- assertTrue(mPrefService.isRememberPasswordsEnabled());
- assertFalse(mPrefService.isRememberPasswordsManaged());
+ Assert.assertTrue(mPrefService.isRememberPasswordsEnabled());
+ Assert.assertFalse(mPrefService.isRememberPasswordsManaged());
}
});
// Verify that its preference UI is enabled.
- Preferences prefActivity = startPreferences(null);
+ Preferences prefActivity = mActivityTestRule.startPreferences(null);
MainPreferences mainPrefs = getMainPreferences(prefActivity);
Preference passwordPref = mainPrefs.findPreference(MainPreferences.PREF_SAVED_PASSWORDS);
- assertNotNull(passwordPref);
+ Assert.assertNotNull(passwordPref);
// This preference opens a new fragment when clicked.
- assertNotNull(passwordPref.getFragment());
+ Assert.assertNotNull(passwordPref.getFragment());
// There is no icon for this preference by default.
- assertNull(passwordPref.getIcon());
+ Assert.assertNull(passwordPref.getIcon());
prefActivity.finish();
// Sign out now.
@@ -308,21 +320,21 @@ public class SigninTest extends ChromeTabbedActivityTestBase {
public void run() {
// Verify that the profile data hasn't been wiped when signing out of a normal
// account. We check that by looking for the test bookmark from setUp().
- assertEquals(1, mBookmarks.getChildCount(mBookmarks.getMobileFolderId()));
+ Assert.assertEquals(1, mBookmarks.getChildCount(mBookmarks.getMobileFolderId()));
}
});
}
private void signInToSingleAccount() {
// Verify that we aren't signed in yet.
- assertFalse(ChromeSigninController.get().isSignedIn());
+ Assert.assertFalse(ChromeSigninController.get().isSignedIn());
// Open the preferences UI.
- final Preferences prefActivity = startPreferences(null);
- getInstrumentation().waitForIdleSync();
+ final Preferences prefActivity = mActivityTestRule.startPreferences(null);
+ InstrumentationRegistry.getInstrumentation().waitForIdleSync();
// Create a monitor to catch the AccountSigninActivity when it is created.
- ActivityMonitor monitor = getInstrumentation().addMonitor(
+ ActivityMonitor monitor = InstrumentationRegistry.getInstrumentation().addMonitor(
AccountSigninActivity.class.getName(), null, false);
// Click sign in.
@@ -334,18 +346,21 @@ public class SigninTest extends ChromeTabbedActivityTestBase {
});
// Pick the mock account.
- AccountSigninActivity signinActivity = (AccountSigninActivity)
- getInstrumentation().waitForMonitor(monitor);
+ AccountSigninActivity signinActivity =
+ (AccountSigninActivity) InstrumentationRegistry.getInstrumentation().waitForMonitor(
+ monitor);
Button positiveButton = (Button) signinActivity.findViewById(R.id.positive_button);
// Press 'sign in'.
- TestTouchUtils.performClickOnMainSync(getInstrumentation(), positiveButton);
- getInstrumentation().waitForIdleSync();
+ TestTouchUtils.performClickOnMainSync(
+ InstrumentationRegistry.getInstrumentation(), positiveButton);
+ InstrumentationRegistry.getInstrumentation().waitForIdleSync();
// Press 'ok, got it' (the same button is reused).
- TestTouchUtils.performClickOnMainSync(getInstrumentation(), positiveButton);
+ TestTouchUtils.performClickOnMainSync(
+ InstrumentationRegistry.getInstrumentation(), positiveButton);
// Sync doesn't actually start up until we finish the sync setup. This usually happens
// in the resume of the Main activity, but we forcefully do this here.
- getInstrumentation().waitForIdleSync();
+ InstrumentationRegistry.getInstrumentation().waitForIdleSync();
ThreadUtils.runOnUiThreadBlocking(new Runnable() {
@Override
public void run() {
@@ -358,19 +373,19 @@ public class SigninTest extends ChromeTabbedActivityTestBase {
// Verify that signin succeeded.
mTestSignInObserver.waitForSignInEvents(1);
- assertEquals(1, mTestSignInObserver.mSignInCount);
- assertEquals(0, mTestSignInObserver.mSignOutCount);
- assertTrue(ChromeSigninController.get().isSignedIn());
+ Assert.assertEquals(1, mTestSignInObserver.mSignInCount);
+ Assert.assertEquals(0, mTestSignInObserver.mSignOutCount);
+ Assert.assertTrue(ChromeSigninController.get().isSignedIn());
}
private void signOut() {
// Verify that we are currently signed in.
- assertTrue(ChromeSigninController.get().isSignedIn());
+ Assert.assertTrue(ChromeSigninController.get().isSignedIn());
// Open the account preferences.
final Preferences prefActivity =
- startPreferences(AccountManagementFragment.class.getName());
- getInstrumentation().waitForIdleSync();
+ mActivityTestRule.startPreferences(AccountManagementFragment.class.getName());
+ InstrumentationRegistry.getInstrumentation().waitForIdleSync();
// Click on the signout button.
ThreadUtils.runOnUiThreadBlocking(new Runnable() {
@@ -385,50 +400,50 @@ public class SigninTest extends ChromeTabbedActivityTestBase {
// Verify that signout succeeded.
mTestSignInObserver.waitForSignInEvents(2);
- assertEquals(1, mTestSignInObserver.mSignInCount);
- assertEquals(1, mTestSignInObserver.mSignOutCount);
- assertFalse(ChromeSigninController.get().isSignedIn());
+ Assert.assertEquals(1, mTestSignInObserver.mSignInCount);
+ Assert.assertEquals(1, mTestSignInObserver.mSignOutCount);
+ Assert.assertFalse(ChromeSigninController.get().isSignedIn());
if (!prefActivity.isFinishing()) prefActivity.finish();
- getInstrumentation().waitForIdleSync();
+ InstrumentationRegistry.getInstrumentation().waitForIdleSync();
}
private static MainPreferences getMainPreferences(Preferences prefActivity) {
Fragment fragment = prefActivity.getFragmentForTest();
- assertNotNull(fragment);
- assertTrue(fragment instanceof MainPreferences);
+ Assert.assertNotNull(fragment);
+ Assert.assertTrue(fragment instanceof MainPreferences);
return (MainPreferences) fragment;
}
private static void clickSigninPreference(Preferences prefActivity) {
MainPreferences mainPrefs = getMainPreferences(prefActivity);
Preference signinPref = mainPrefs.findPreference(MainPreferences.PREF_SIGN_IN);
- assertNotNull(signinPref);
- assertTrue(signinPref instanceof SignInPreference);
- assertNotNull(signinPref.getOnPreferenceClickListener());
+ Assert.assertNotNull(signinPref);
+ Assert.assertTrue(signinPref instanceof SignInPreference);
+ Assert.assertNotNull(signinPref.getOnPreferenceClickListener());
signinPref.getOnPreferenceClickListener().onPreferenceClick(signinPref);
}
private static void clickSignOut(Preferences prefActivity) {
Fragment fragment = prefActivity.getFragmentForTest();
- assertNotNull(fragment);
- assertTrue(fragment instanceof AccountManagementFragment);
+ Assert.assertNotNull(fragment);
+ Assert.assertTrue(fragment instanceof AccountManagementFragment);
AccountManagementFragment managementFragment = (AccountManagementFragment) fragment;
Preference signOutPref = managementFragment.findPreference(
AccountManagementFragment.PREF_SIGN_OUT);
- assertNotNull(signOutPref);
- assertNotNull(signOutPref.getOnPreferenceClickListener());
+ Assert.assertNotNull(signOutPref);
+ Assert.assertNotNull(signOutPref.getOnPreferenceClickListener());
signOutPref.getOnPreferenceClickListener().onPreferenceClick(signOutPref);
}
private void acceptAlertDialogWithTag(Activity activity, String tag) {
- getInstrumentation().waitForIdleSync();
+ InstrumentationRegistry.getInstrumentation().waitForIdleSync();
DialogFragment fragment = ActivityUtils.waitForFragment(activity, tag);
AlertDialog dialog = (AlertDialog) fragment.getDialog();
- assertTrue(dialog != null);
- assertTrue(dialog.isShowing());
+ Assert.assertTrue(dialog != null);
+ Assert.assertTrue(dialog.isShowing());
Button button = dialog.getButton(DialogInterface.BUTTON_POSITIVE);
- assertNotNull("Could not find the accept button.", button);
- TestTouchUtils.performClickOnMainSync(getInstrumentation(), button);
+ Assert.assertNotNull("Could not find the accept button.", button);
+ TestTouchUtils.performClickOnMainSync(InstrumentationRegistry.getInstrumentation(), button);
}
}

Powered by Google App Engine
This is Rietveld 408576698