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

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

Issue 1075343003: Ensure that isSyncable is set when Chrome sync is enabled. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@2357
Patch Set: Created 5 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
Index: sync/android/javatests/src/org/chromium/sync/AndroidSyncSettingsTest.java
diff --git a/sync/android/javatests/src/org/chromium/sync/AndroidSyncSettingsTest.java b/sync/android/javatests/src/org/chromium/sync/AndroidSyncSettingsTest.java
index aeba67f607e4d8ace6affb72da8db34cd2c268cf..5b4e57528cfed9d71cf56ab24dead4d499bf5856 100644
--- a/sync/android/javatests/src/org/chromium/sync/AndroidSyncSettingsTest.java
+++ b/sync/android/javatests/src/org/chromium/sync/AndroidSyncSettingsTest.java
@@ -294,4 +294,29 @@ public class AndroidSyncSettingsTest extends InstrumentationTestCase {
assertFalse("disableChromeSync shouldn't observers",
mSyncSettingsObserver.receivedNotification());
}
+
+ /**
+ * Regression test for crbug.com/475299.
+ */
+ @SmallTest
+ @Feature({"Sync"})
+ public void testSyncableIsAlwaysSetWhenEnablingSync() throws InterruptedException {
+ // Setup bad state.
+ mSyncContentResolverDelegate.setMasterSyncAutomatically(true);
+ mSyncContentResolverDelegate.waitForLastNotificationCompleted();
+ mSyncContentResolverDelegate.setIsSyncable(mAccount, mAuthority, 1);
+ mSyncContentResolverDelegate.waitForLastNotificationCompleted();
+ mSyncContentResolverDelegate.setSyncAutomatically(mAccount, mAuthority, true);
+ mSyncContentResolverDelegate.waitForLastNotificationCompleted();
+ mSyncContentResolverDelegate.setIsSyncable(mAccount, mAuthority, 0);
+ mSyncContentResolverDelegate.waitForLastNotificationCompleted();
+ assertTrue(mSyncContentResolverDelegate.getIsSyncable(mAccount, mAuthority) == 0);
+ assertTrue(mSyncContentResolverDelegate.getSyncAutomatically(mAccount, mAuthority));
+
+ // Ensure bug is fixed.
+ mAndroid.enableChromeSync();
+ assertTrue(mSyncContentResolverDelegate.getIsSyncable(mAccount, mAuthority) == 1);
+ // Should still be enabled.
+ assertTrue(mSyncContentResolverDelegate.getSyncAutomatically(mAccount, mAuthority));
+ }
}

Powered by Google App Engine
This is Rietveld 408576698