Chromium Code Reviews| Index: components/sync/android/javatests/src/org/chromium/components/sync/AndroidSyncSettingsTest.java |
| diff --git a/components/sync/android/javatests/src/org/chromium/components/sync/AndroidSyncSettingsTest.java b/components/sync/android/javatests/src/org/chromium/components/sync/AndroidSyncSettingsTest.java |
| index af72394ae6ebb68c922fda95d3d0cd58b5bad358..b8e7c410bb3092f17086312703e9122a63b1ac46 100644 |
| --- a/components/sync/android/javatests/src/org/chromium/components/sync/AndroidSyncSettingsTest.java |
| +++ b/components/sync/android/javatests/src/org/chromium/components/sync/AndroidSyncSettingsTest.java |
| @@ -10,7 +10,9 @@ import android.os.Bundle; |
| import android.support.test.filters.SmallTest; |
| import android.test.InstrumentationTestCase; |
| +import org.chromium.base.Callback; |
| import org.chromium.base.ThreadUtils; |
| +import org.chromium.base.test.util.CallbackHelper; |
| import org.chromium.base.test.util.DisabledTest; |
| import org.chromium.base.test.util.Feature; |
| import org.chromium.components.signin.AccountManagerHelper; |
| @@ -19,6 +21,8 @@ import org.chromium.components.signin.test.util.MockAccountManager; |
| import org.chromium.components.sync.AndroidSyncSettings.AndroidSyncSettingsObserver; |
| import org.chromium.components.sync.test.util.MockSyncContentResolverDelegate; |
| +import java.util.concurrent.TimeoutException; |
| + |
| /** |
| * Tests for AndroidSyncSettings. |
| */ |
| @@ -152,12 +156,20 @@ public class AndroidSyncSettingsTest extends InstrumentationTestCase { |
| @SmallTest |
| @Feature({"Sync"}) |
| - public void testAccountInitialization() throws InterruptedException { |
| + public void testAccountInitialization() throws InterruptedException, TimeoutException { |
| // mAccount was set to be syncable and not have periodic syncs. |
| assertEquals(1, mSyncContentResolverDelegate.mSetIsSyncableCalls); |
| assertEquals(1, mSyncContentResolverDelegate.mRemovePeriodicSyncCalls); |
| - AndroidSyncSettings.updateAccount(mContext, null); |
| - mAccountManager.waitForGetAccountsTask(); |
|
pavely
2017/04/27 17:32:12
Could you remove waitForGetAccountsTask from MockA
bsazonov
2017/04/27 18:11:01
I will do that later, it you don't mind. I have so
|
| + |
| + final CallbackHelper callbackHelper = new CallbackHelper(); |
| + AndroidSyncSettings.updateAccount(mContext, null, new Callback<Void>() { |
| + @Override |
| + public void onResult(Void result) { |
| + callbackHelper.notifyCalled(); |
| + } |
| + }); |
| + callbackHelper.waitForCallback(0); |
| + |
| // mAccount was set to be not syncable. |
| assertEquals(2, mSyncContentResolverDelegate.mSetIsSyncableCalls); |
| assertEquals(1, mSyncContentResolverDelegate.mRemovePeriodicSyncCalls); |
| @@ -357,10 +369,19 @@ public class AndroidSyncSettingsTest extends InstrumentationTestCase { |
| @SmallTest |
| @Feature({"Sync"}) |
| - public void testIsSyncableOnSigninAndNotOnSignout() throws InterruptedException { |
| + public void testIsSyncableOnSigninAndNotOnSignout() |
| + throws InterruptedException, TimeoutException { |
| assertTrue(mSyncContentResolverDelegate.getIsSyncable(mAccount, mAuthority) == 1); |
| - AndroidSyncSettings.updateAccount(mContext, null); |
| - mAccountManager.waitForGetAccountsTask(); |
| + |
| + final CallbackHelper callbackHelper = new CallbackHelper(); |
| + AndroidSyncSettings.updateAccount(mContext, null, new Callback<Void>() { |
| + @Override |
| + public void onResult(Void result) { |
| + callbackHelper.notifyCalled(); |
| + } |
| + }); |
| + callbackHelper.waitForCallback(0); |
| + |
| assertTrue(mSyncContentResolverDelegate.getIsSyncable(mAccount, mAuthority) == 0); |
| AndroidSyncSettings.updateAccount(mContext, mAccount); |
| assertTrue(mSyncContentResolverDelegate.getIsSyncable(mAccount, mAuthority) == 1); |