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

Unified Diff: chrome/android/javatests/src/org/chromium/chrome/browser/signin/OAuth2TokenServiceIntegrationTest.java

Issue 213823004: Calls FireRefreshTokenRevoked if an account is removed. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: comments + tests Created 6 years, 8 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/OAuth2TokenServiceIntegrationTest.java
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/signin/OAuth2TokenServiceIntegrationTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/signin/OAuth2TokenServiceIntegrationTest.java
index c4067ceb19b1c98001f7ab3d364db6bf88894a1f..1ba655ecc488b2416286d6a9805bbb5d9d627792 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/signin/OAuth2TokenServiceIntegrationTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/signin/OAuth2TokenServiceIntegrationTest.java
@@ -201,6 +201,122 @@ public class OAuth2TokenServiceIntegrationTest extends ChromeShellTestBase {
@MediumTest
@UiThreadTest
+ public void testValidateAccountsSingleAccountWithoutChanges() {
+ // Add account.
+ mAccountManager.addAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_1);
+
+ // Mark user as signed in.
+ mChromeSigninController.setSignedInAccountName(TEST_ACCOUNT1.name);
+
+ // Run one validation.
+ mOAuth2TokenService.validateAccounts(mContext);
+ assertEquals(1, mObserver.getAvailableCallCount());
+ assertEquals(0, mObserver.getRevokedCallCount());
+ assertEquals(0, mObserver.getLoadedCallCount());
+
+ // Re-run validation.
+ mOAuth2TokenService.validateAccounts(mContext);
+ assertEquals(2, mObserver.getAvailableCallCount());
+ assertEquals(0, mObserver.getRevokedCallCount());
+ assertEquals(0, mObserver.getLoadedCallCount());
+ }
+
+ @MediumTest
+ @UiThreadTest
+ public void testValidateAccountsSingleAccountThenAddOne() {
+ // Add account.
+ mAccountManager.addAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_1);
+
+ // Mark user as signed in.
+ mChromeSigninController.setSignedInAccountName(TEST_ACCOUNT1.name);
+
+ // Run one validation.
+ mOAuth2TokenService.validateAccounts(mContext);
+ assertEquals(1, mObserver.getAvailableCallCount());
+ assertEquals(0, mObserver.getRevokedCallCount());
+ assertEquals(0, mObserver.getLoadedCallCount());
+
+ // Add another account.
+ mAccountManager.addAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_2);
+
+ // Re-run validation.
+ mOAuth2TokenService.validateAccounts(mContext);
+ assertEquals(3, mObserver.getAvailableCallCount());
+ assertEquals(0, mObserver.getRevokedCallCount());
+ assertEquals(0, mObserver.getLoadedCallCount());
+ }
+
+ @MediumTest
+ @UiThreadTest
+ public void testValidateAccountsTwoAccountsThenRemoveOne() {
+ // Add accounts.
+ mAccountManager.addAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_1);
+ mAccountManager.addAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_2);
+
+ // Mark user as signed in.
+ mChromeSigninController.setSignedInAccountName(TEST_ACCOUNT1.name);
+
+ // Run one validation.
+ mOAuth2TokenService.validateAccounts(mContext);
+ assertEquals(2, mObserver.getAvailableCallCount());
+
+ mAccountManager.removeAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_2);
+ mOAuth2TokenService.validateAccounts(mContext);
+
+ assertEquals(3, mObserver.getAvailableCallCount());
+ assertEquals(1, mObserver.getRevokedCallCount());
+ assertEquals(0, mObserver.getLoadedCallCount());
+ }
+
+ @MediumTest
+ @UiThreadTest
+ public void testValidateAccountsTwoAccountsThenRemoveAll() {
+ // Add accounts.
+ mAccountManager.addAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_1);
+ mAccountManager.addAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_2);
+
+ // Mark user as signed in.
+ mChromeSigninController.setSignedInAccountName(TEST_ACCOUNT1.name);
+
+ mOAuth2TokenService.validateAccounts(mContext);
+ assertEquals(2, mObserver.getAvailableCallCount());
+
+ // Remove all.
+ mAccountManager.removeAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_1);
+ mAccountManager.removeAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_2);
+
+ // Re-validate and run checks.
+ mOAuth2TokenService.validateAccounts(mContext);
+ assertEquals(2, mObserver.getRevokedCallCount());
nyquist 2014/04/24 22:27:05 Nit: Add assertEquals(2, mObserver.getAvailableCal
+ assertEquals(0, mObserver.getLoadedCallCount());
+ }
+
+ @MediumTest
+ @UiThreadTest
+ public void testValidateAccountsTwoAccountsThenRemoveAllSignOut() {
+ // Add accounts.
+ mAccountManager.addAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_1);
+ mAccountManager.addAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_2);
+
+ // Mark user as signed in.
+ mChromeSigninController.setSignedInAccountName(TEST_ACCOUNT1.name);
+
+ mOAuth2TokenService.validateAccounts(mContext);
+ assertEquals(2, mObserver.getAvailableCallCount());
+
+ // Remove all.
+ mChromeSigninController.clearSignedInUser();
nyquist 2014/04/24 22:27:05 From the code, it seems like just clearing the sig
+ mAccountManager.removeAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_1);
+ mAccountManager.removeAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_2);
+
+ // Re-validate and run checks.
+ mOAuth2TokenService.validateAccounts(mContext);
nyquist 2014/04/24 22:27:05 Nit: Also assertEquals(2, mObserver.getAvailableCa
+ assertEquals(2, mObserver.getRevokedCallCount());
+ assertEquals(0, mObserver.getLoadedCallCount());
+ }
+
+ @MediumTest
+ @UiThreadTest
public void testValidateAccountsTwoAccountsRegisteredAndOneSignedIn() {
// Add accounts.
mAccountManager.addAccountHolderExplicitly(TEST_ACCOUNT_HOLDER_1);

Powered by Google App Engine
This is Rietveld 408576698