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

Unified Diff: components/sync/android/javatests/src/org/chromium/components/sync/AndroidSyncSettingsTest.java

Issue 2847663003: Add callback to AndroidSyncSettings.updateAccount and fix related test (Closed)
Patch Set: Fixed build Created 3 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
« no previous file with comments | « components/sync/android/java/src/org/chromium/components/sync/AndroidSyncSettings.java ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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);
« no previous file with comments | « components/sync/android/java/src/org/chromium/components/sync/AndroidSyncSettings.java ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698