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..15b3fa56b46b2e94ebd273ac5948e5d47d977696 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(); |
+ |
+ final CallbackHelper callbackHelper = new CallbackHelper(); |
+ AndroidSyncSettings.updateAccount(mContext, null, new Callback<Boolean>() { |
+ @Override |
+ public void onResult(Boolean 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<Boolean>() { |
+ @Override |
+ public void onResult(Boolean result) { |
+ callbackHelper.notifyCalled(); |
+ } |
+ }); |
+ callbackHelper.waitForCallback(0); |
+ |
assertTrue(mSyncContentResolverDelegate.getIsSyncable(mAccount, mAuthority) == 0); |
AndroidSyncSettings.updateAccount(mContext, mAccount); |
assertTrue(mSyncContentResolverDelegate.getIsSyncable(mAccount, mAuthority) == 1); |