diff options
author | nyquist@chromium.org <nyquist@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-08-01 16:20:01 +0000 |
---|---|---|
committer | nyquist@chromium.org <nyquist@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-08-01 16:20:01 +0000 |
commit | 6cc5dab2db1834a2b80e70d8d3c26254935cd014 (patch) | |
tree | 3afba7bf67c8af0dd21067a858eeb7e44e7dcac8 /sync/test/android | |
parent | 6788061c49ff424e0a7fa5e2f48d10de8e413aae (diff) | |
download | chromium_src-6cc5dab2db1834a2b80e70d8d3c26254935cd014.zip chromium_src-6cc5dab2db1834a2b80e70d8d3c26254935cd014.tar.gz chromium_src-6cc5dab2db1834a2b80e70d8d3c26254935cd014.tar.bz2 |
Fix issue with null-value OAuth2 tokens for Android.
Currently, AndroidProfileOAuth2TokenServiceHelper crashes if the auth
token returned from the account manager is null. This CL makes it
possible to get null tokens back.
A test is also added, and the test harness is improved to support adding
null auth-tokens.
This is try 2. Original CL reviewed in:
https://chromiumcodereview.appspot.com/20692003
BUG=239491
NOTRY=true
Review URL: https://chromiumcodereview.appspot.com/21436002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@215048 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sync/test/android')
-rw-r--r-- | sync/test/android/javatests/src/org/chromium/sync/test/util/AccountHolder.java | 4 | ||||
-rw-r--r-- | sync/test/android/javatests/src/org/chromium/sync/test/util/MockAccountManager.java | 4 |
2 files changed, 7 insertions, 1 deletions
diff --git a/sync/test/android/javatests/src/org/chromium/sync/test/util/AccountHolder.java b/sync/test/android/javatests/src/org/chromium/sync/test/util/AccountHolder.java index 1b346a1..cff504c 100644 --- a/sync/test/android/javatests/src/org/chromium/sync/test/util/AccountHolder.java +++ b/sync/test/android/javatests/src/org/chromium/sync/test/util/AccountHolder.java @@ -48,6 +48,10 @@ public class AccountHolder { return mPassword; } + public boolean hasAuthTokenRegistered(String authTokenType) { + return mAuthTokens.containsKey(authTokenType); + } + public String getAuthToken(String authTokenType) { return mAuthTokens.get(authTokenType); } diff --git a/sync/test/android/javatests/src/org/chromium/sync/test/util/MockAccountManager.java b/sync/test/android/javatests/src/org/chromium/sync/test/util/MockAccountManager.java index da16fae..cb330b8 100644 --- a/sync/test/android/javatests/src/org/chromium/sync/test/util/MockAccountManager.java +++ b/sync/test/android/javatests/src/org/chromium/sync/test/util/MockAccountManager.java @@ -264,7 +264,9 @@ public class MockAccountManager implements AccountManagerDelegate { private String internalGenerateAndStoreAuthToken(AccountHolder ah, String authTokenType) { synchronized (mAccounts) { - if (ah.getAuthToken(authTokenType) == null) { + // Some tests register auth tokens with value null, and those should be preserved. + if (!ah.hasAuthTokenRegistered(authTokenType) && + ah.getAuthToken(authTokenType) == null) { // No authtoken registered. Need to create one. String authToken = UUID.randomUUID().toString(); Log.d(TAG, "Created new auth token for " + ah.getAccount() + |