Commit be15d305 authored by bsazonov's avatar bsazonov Committed by Commit bot

Rename MockAccountManager to FakeAccountManagerDelegate

This CL makes several minor changes to MockAccountManager:
1. Add 'Delegate' to the name, because it implements AccountManagerDelegate and
   should be used with AccountManagerHelper.
2. Replace 'Mock' with 'Fake' in the name.
3. Remove redundant testContext from constructor arguments.

BUG=698258

Review-Url: https://codereview.chromium.org/2845113003
Cr-Commit-Position: refs/heads/master@{#467942}
parent 93c0e261
......@@ -27,7 +27,7 @@ import org.chromium.chrome.browser.preferences.password.SavePasswordsPreferences
import org.chromium.chrome.browser.sync.ProfileSyncService;
import org.chromium.components.signin.AccountManagerHelper;
import org.chromium.components.signin.test.util.AccountHolder;
import org.chromium.components.signin.test.util.MockAccountManager;
import org.chromium.components.signin.test.util.FakeAccountManagerDelegate;
import org.chromium.components.sync.AndroidSyncSettings;
import org.chromium.components.sync.test.util.MockSyncContentResolverDelegate;
import org.chromium.content.browser.test.NativeLibraryTestRule;
......@@ -50,7 +50,7 @@ public class PasswordViewingTypeTest {
private MockSyncContentResolverDelegate mSyncContentResolverDelegate;
private String mAuthority;
private Account mAccount;
private MockAccountManager mAccountManager;
private FakeAccountManagerDelegate mAccountManager;
@Before
public void setUp() throws Exception {
......@@ -69,7 +69,7 @@ public class PasswordViewingTypeTest {
}
private void setupTestAccount(Context context) {
mAccountManager = new MockAccountManager(context, context);
mAccountManager = new FakeAccountManagerDelegate(context);
AccountManagerHelper.overrideAccountManagerHelperForTests(context, mAccountManager);
mAccount = AccountManagerHelper.createAccountFromName("account@example.com");
AccountHolder.Builder accountHolder =
......
......@@ -27,7 +27,7 @@ import org.chromium.chrome.test.util.ApplicationData;
import org.chromium.components.signin.AccountManagerHelper;
import org.chromium.components.signin.ChromeSigninController;
import org.chromium.components.signin.test.util.AccountHolder;
import org.chromium.components.signin.test.util.MockAccountManager;
import org.chromium.components.signin.test.util.FakeAccountManagerDelegate;
import org.chromium.content.browser.test.NativeLibraryTestRule;
import java.util.concurrent.Callable;
......@@ -56,7 +56,7 @@ public class OAuth2TokenServiceIntegrationTest {
private AdvancedMockContext mContext;
private OAuth2TokenService mOAuth2TokenService;
private MockAccountManager mAccountManager;
private FakeAccountManagerDelegate mAccountManager;
private TestObserver mObserver;
private ChromeSigninController mChromeSigninController;
......@@ -70,8 +70,7 @@ public class OAuth2TokenServiceIntegrationTest {
// be initialized beforehand.
mContext = new AdvancedMockContext(
InstrumentationRegistry.getInstrumentation().getTargetContext());
mAccountManager = new MockAccountManager(
mContext, InstrumentationRegistry.getInstrumentation().getContext());
mAccountManager = new FakeAccountManagerDelegate(mContext);
AccountManagerHelper.overrideAccountManagerHelperForTests(mContext, mAccountManager);
mActivityTestRule.loadNativeLibraryAndInitBrowserProcess();
......
......@@ -20,7 +20,7 @@ import org.chromium.base.test.util.Feature;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
import org.chromium.components.signin.AccountManagerHelper;
import org.chromium.components.signin.test.util.AccountHolder;
import org.chromium.components.signin.test.util.MockAccountManager;
import org.chromium.components.signin.test.util.FakeAccountManagerDelegate;
import java.util.Arrays;
import java.util.concurrent.TimeUnit;
......@@ -29,15 +29,13 @@ import java.util.concurrent.TimeUnit;
@RunWith(ChromeJUnit4ClassRunner.class)
public class OAuth2TokenServiceTest {
private AdvancedMockContext mContext;
private MockAccountManager mAccountManager;
private FakeAccountManagerDelegate mAccountManager;
@Before
public void setUp() throws Exception {
// Mock out the account manager on the device.
mContext = new AdvancedMockContext(
InstrumentationRegistry.getInstrumentation().getTargetContext());
mAccountManager = new MockAccountManager(
mContext, InstrumentationRegistry.getInstrumentation().getContext());
mAccountManager = new FakeAccountManagerDelegate(mContext);
AccountManagerHelper.overrideAccountManagerHelperForTests(mContext, mAccountManager);
}
......
......@@ -22,14 +22,14 @@ import org.chromium.chrome.test.util.browser.signin.MockChangeEventChecker;
import org.chromium.components.signin.AccountManagerHelper;
import org.chromium.components.signin.ChromeSigninController;
import org.chromium.components.signin.test.util.AccountHolder;
import org.chromium.components.signin.test.util.MockAccountManager;
import org.chromium.components.signin.test.util.FakeAccountManagerDelegate;
/**
* Instrumentation tests for {@link SigninHelper}.
*/
@RunWith(ChromeJUnit4ClassRunner.class)
public class SigninHelperTest {
private MockAccountManager mAccountManager;
private FakeAccountManagerDelegate mAccountManager;
private AdvancedMockContext mContext;
private MockChangeEventChecker mEventChecker;
......@@ -39,9 +39,7 @@ public class SigninHelperTest {
InstrumentationRegistry.getInstrumentation().getTargetContext());
mEventChecker = new MockChangeEventChecker();
// Mock out the account manager on the device.
mAccountManager = new MockAccountManager(
mContext, InstrumentationRegistry.getInstrumentation().getContext());
mAccountManager = new FakeAccountManagerDelegate(mContext);
AccountManagerHelper.overrideAccountManagerHelperForTests(mContext, mAccountManager);
}
......
......@@ -39,7 +39,7 @@ import org.chromium.content.browser.test.util.TestTouchUtils;
* These tests cover the sign in flow for both consumer and managed accounts. They also verify
* the state of the browser while signed in, and any changes when signing out.
*
* The accounts used to sign in are mocked by a MockAccountManager.
* The accounts used to sign in are mocked by a FakeAccountManagerDelegate.
*/
public class SigninTest extends ChromeTabbedActivityTestBase {
......
......@@ -26,7 +26,7 @@ import org.chromium.base.test.util.AdvancedMockContext;
import org.chromium.base.test.util.Feature;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
import org.chromium.components.signin.AccountManagerHelper;
import org.chromium.components.signin.test.util.MockAccountManager;
import org.chromium.components.signin.test.util.FakeAccountManagerDelegate;
import java.util.ArrayList;
import java.util.List;
......@@ -39,7 +39,7 @@ import java.util.concurrent.Callable;
public class FeatureUtilitiesTest {
private IntentTestMockContext mContextWithSpeech;
private IntentTestMockContext mContextWithoutSpeech;
private MockAuthenticationAccountManager mAccountManager;
private FakeAuthenticationAccountManager mAccountManager;
private AdvancedMockContext mAccountTestingContext;
private Account mTestAccount;
......@@ -105,13 +105,12 @@ public class FeatureUtilitiesTest {
}
}
private static class MockAuthenticationAccountManager extends MockAccountManager {
private static class FakeAuthenticationAccountManager extends FakeAccountManagerDelegate {
private final String mAccountType;
public MockAuthenticationAccountManager(Context localContext, Context testContext,
String accountType, Account... accounts) {
super(localContext, testContext, accounts);
public FakeAuthenticationAccountManager(
Context localContext, String accountType, Account... accounts) {
super(localContext, accounts);
mAccountType = accountType;
}
......@@ -151,13 +150,11 @@ public class FeatureUtilitiesTest {
}
private void setUpAccount(final String accountType) {
mAccountManager = new MockAuthenticationAccountManager(mAccountTestingContext,
InstrumentationRegistry.getInstrumentation().getContext(), accountType,
mTestAccount);
mAccountManager = new FakeAuthenticationAccountManager(
mAccountTestingContext, accountType, mTestAccount);
AccountManagerHelper.overrideAccountManagerHelperForTests(
mAccountTestingContext,
mAccountManager);
mAccountTestingContext, mAccountManager);
}
@Test
......
......@@ -17,7 +17,7 @@ import android.text.TextUtils;
import org.chromium.components.signin.ChromeSigninController;
import org.chromium.components.signin.test.util.AccountHolder;
import org.chromium.components.signin.test.util.MockAccountManager;
import org.chromium.components.signin.test.util.FakeAccountManagerDelegate;
import java.io.IOException;
......@@ -34,7 +34,7 @@ public class ChromeSigninUtils {
private static final String GOOGLE_ACCOUNT_TYPE = "com.google";
private AccountManager mAccountManager;
private MockAccountManager mMockAccountManager;
private FakeAccountManagerDelegate mFakeAccountManagerDelegate;
private Context mContext;
private Context mTargetContext;
......@@ -48,7 +48,7 @@ public class ChromeSigninUtils {
mContext = instrumentation.getContext();
mTargetContext = instrumentation.getTargetContext();
mAccountManager = AccountManager.get(mTargetContext);
mMockAccountManager = new MockAccountManager(mContext, mTargetContext);
mFakeAccountManagerDelegate = new FakeAccountManagerDelegate(mContext);
}
/**
......@@ -76,17 +76,18 @@ public class ChromeSigninUtils {
}
Account account = new Account(username, GOOGLE_ACCOUNT_TYPE);
mMockAccountManager = new MockAccountManager(mContext, mTargetContext, account);
mFakeAccountManagerDelegate = new FakeAccountManagerDelegate(mContext, account);
AccountHolder accountHolder = AccountHolder.builder(account).password(password).build();
mMockAccountManager.addAccountHolderExplicitly(accountHolder);
mFakeAccountManagerDelegate.addAccountHolderExplicitly(accountHolder);
}
/**
* Removes all fake accounts from the OS.
*/
public void removeAllFakeAccountsFromOs() {
for (Account acct : mMockAccountManager.getAccountsByType(GOOGLE_ACCOUNT_TYPE)) {
mMockAccountManager.removeAccountHolderExplicitly(AccountHolder.builder(acct).build());
for (Account acct : mFakeAccountManagerDelegate.getAccountsByType(GOOGLE_ACCOUNT_TYPE)) {
mFakeAccountManagerDelegate.removeAccountHolderExplicitly(
AccountHolder.builder(acct).build());
}
}
......@@ -97,11 +98,11 @@ public class ChromeSigninUtils {
* @return {@code true} if fake account is on OS, false otherwise.
*/
public boolean isExistingFakeAccountOnOs(String username) {
if (mMockAccountManager.getAccountsByType(GOOGLE_ACCOUNT_TYPE).length == 0) {
if (mFakeAccountManagerDelegate.getAccountsByType(GOOGLE_ACCOUNT_TYPE).length == 0) {
return false;
}
for (Account acct : mMockAccountManager.getAccountsByType(GOOGLE_ACCOUNT_TYPE)) {
for (Account acct : mFakeAccountManagerDelegate.getAccountsByType(GOOGLE_ACCOUNT_TYPE)) {
if (username.equals(acct.name)) {
return true;
}
......
......@@ -17,7 +17,7 @@ import org.chromium.chrome.browser.signin.OAuth2TokenService;
import org.chromium.components.signin.AccountManagerHelper;
import org.chromium.components.signin.ChromeSigninController;
import org.chromium.components.signin.test.util.AccountHolder;
import org.chromium.components.signin.test.util.MockAccountManager;
import org.chromium.components.signin.test.util.FakeAccountManagerDelegate;
import java.util.HashSet;
......@@ -30,7 +30,7 @@ public final class SigninTestUtil {
private static final String DEFAULT_ACCOUNT = "test@gmail.com";
private static Context sContext;
private static MockAccountManager sAccountManager;
private static FakeAccountManagerDelegate sAccountManager;
/**
* Sets up the test authentication environment.
......@@ -46,7 +46,7 @@ public final class SigninTestUtil {
ProcessInitializationHandler.getInstance().initializePreNative();
}
});
sAccountManager = new MockAccountManager(sContext, instrumentation.getContext());
sAccountManager = new FakeAccountManagerDelegate(sContext);
AccountManagerHelper.overrideAccountManagerHelperForTests(sContext, sAccountManager);
overrideAccountIdProvider();
resetSigninState();
......
......@@ -54,7 +54,7 @@ android_library("signin_java_test_support") {
java_files = [
"javatests/src/org/chromium/components/signin/test/util/AccountHolder.java",
"javatests/src/org/chromium/components/signin/test/util/MockAccountManager.java",
"javatests/src/org/chromium/components/signin/test/util/FakeAccountManagerDelegate.java",
"javatests/src/org/chromium/components/signin/test/util/SimpleFuture.java",
]
}
......@@ -11,14 +11,14 @@ import android.test.InstrumentationTestCase;
import org.chromium.components.signin.AccountManagerHelper;
import org.chromium.components.signin.test.util.AccountHolder;
import org.chromium.components.signin.test.util.MockAccountManager;
import org.chromium.components.signin.test.util.FakeAccountManagerDelegate;
import org.chromium.components.signin.test.util.SimpleFuture;
/**
* Test class for {@link AccountManagerHelper}.
*/
public class AccountManagerHelperTest extends InstrumentationTestCase {
private MockAccountManager mAccountManager;
private FakeAccountManagerDelegate mDelegate;
private AccountManagerHelper mHelper;
@Override
......@@ -26,8 +26,8 @@ public class AccountManagerHelperTest extends InstrumentationTestCase {
super.setUp();
Context context = getInstrumentation().getTargetContext();
mAccountManager = new MockAccountManager(context, context);
AccountManagerHelper.overrideAccountManagerHelperForTests(context, mAccountManager);
mDelegate = new FakeAccountManagerDelegate(context);
AccountManagerHelper.overrideAccountManagerHelperForTests(context, mDelegate);
mHelper = AccountManagerHelper.get();
}
......@@ -62,7 +62,7 @@ public class AccountManagerHelperTest extends InstrumentationTestCase {
Account account = AccountManagerHelper.createAccountFromName(accountName);
AccountHolder.Builder accountHolder =
AccountHolder.builder(account).password(password).alwaysAccept(true);
mAccountManager.addAccountHolderExplicitly(accountHolder.build());
mDelegate.addAccountHolderExplicitly(accountHolder.build());
return account;
}
......
......@@ -13,7 +13,7 @@ import java.util.Map;
import java.util.Set;
/**
* This class is used by the {@link MockAccountManager} to hold information about a given
* This class is used by the {@link FakeAccountManagerDelegate} to hold information about a given
* account, such as its password and set of granted auth tokens.
*/
public class AccountHolder {
......
......@@ -22,7 +22,7 @@ import java.util.Set;
import java.util.UUID;
/**
* The MockAccountManager helps out if you want to mock out all calls to the Android AccountManager.
* The FakeAccountManagerDelegate is intended for testing components that use AccountManagerHelper.
*
* You should provide a set of accounts as a constructor argument, or use the more direct approach
* and provide an array of AccountHolder objects.
......@@ -36,21 +36,19 @@ import java.util.UUID;
* If you want to auto-approve all auth token types for a given account, use the {@link
* AccountHolder} builder method alwaysAccept(true).
*/
public class MockAccountManager implements AccountManagerDelegate {
private static final String TAG = "MockAccountManager";
protected final Context mContext;
public class FakeAccountManagerDelegate implements AccountManagerDelegate {
private static final String TAG = "FakeAccountManager";
private final Context mContext;
private final Set<AccountHolder> mAccounts = new HashSet<>();
// Tracks the number of in-progress getAccountsByType() tasks so that tests can wait for
// their completion.
private final ZeroCounter mGetAccountsTaskCounter;
private final ZeroCounter mGetAccountsTaskCounter = new ZeroCounter();
@VisibleForTesting
public MockAccountManager(Context context, Context testContext, Account... accounts) {
public FakeAccountManagerDelegate(Context context, Account... accounts) {
mContext = context;
mGetAccountsTaskCounter = new ZeroCounter();
if (accounts != null) {
for (Account account : accounts) {
mAccounts.add(AccountHolder.builder(account).alwaysAccept(true).build());
......@@ -108,7 +106,8 @@ public class MockAccountManager implements AccountManagerDelegate {
&& ah.getAuthToken(authTokenScope) == null) {
// No authtoken registered. Need to create one.
String authToken = UUID.randomUUID().toString();
Log.d(TAG, "Created new auth token for " + ah.getAccount() + ": authTokenScope = "
Log.d(TAG,
"Created new auth token for " + ah.getAccount() + ": authTokenScope = "
+ authTokenScope + ", authToken = " + authToken);
ah = ah.withAuthToken(authTokenScope, authToken);
mAccounts.add(ah);
......
......@@ -17,7 +17,7 @@ import org.chromium.base.test.util.DisabledTest;
import org.chromium.base.test.util.Feature;
import org.chromium.components.signin.AccountManagerHelper;
import org.chromium.components.signin.test.util.AccountHolder;
import org.chromium.components.signin.test.util.MockAccountManager;
import org.chromium.components.signin.test.util.FakeAccountManagerDelegate;
import org.chromium.components.sync.AndroidSyncSettings.AndroidSyncSettingsObserver;
import org.chromium.components.sync.test.util.MockSyncContentResolverDelegate;
......@@ -97,7 +97,7 @@ public class AndroidSyncSettingsTest extends InstrumentationTestCase {
private Account mAccount;
private Account mAlternateAccount;
private MockSyncSettingsObserver mSyncSettingsObserver;
private MockAccountManager mAccountManager;
private FakeAccountManagerDelegate mAccountManager;
@Override
protected void setUp() throws Exception {
......@@ -116,7 +116,7 @@ public class AndroidSyncSettingsTest extends InstrumentationTestCase {
}
private void setupTestAccounts(Context context) {
mAccountManager = new MockAccountManager(context, context);
mAccountManager = new FakeAccountManagerDelegate(context);
AccountManagerHelper.overrideAccountManagerHelperForTests(context, mAccountManager);
mAccount = setupTestAccount("account@example.com");
mAlternateAccount = setupTestAccount("alternate@example.com");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment