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

Unified Diff: chrome/browser/prefs/prefs_syncable_service_unittest.cc

Issue 444763005: Clear a preference when sync tries to delete a preference (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 4 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 | « chrome/browser/prefs/pref_model_associator.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/prefs/prefs_syncable_service_unittest.cc
diff --git a/chrome/browser/prefs/prefs_syncable_service_unittest.cc b/chrome/browser/prefs/prefs_syncable_service_unittest.cc
index e9650eec8d8f0a5b8ed1c1380711a42ceba3a6ae..e5d06a7a15b670cdec4bc50937f03a2f16d3636e 100644
--- a/chrome/browser/prefs/prefs_syncable_service_unittest.cc
+++ b/chrome/browser/prefs/prefs_syncable_service_unittest.cc
@@ -693,7 +693,7 @@ TEST_F(PrefsSyncableServiceTest, DynamicManagedDefaultPreferences) {
// Switch kHomePage to managed and set a different value.
base::StringValue managed_value("http://example.com/managed");
GetTestingPrefService()->SetManagedPref(prefs::kHomePage,
- managed_value.DeepCopy());
+ managed_value.DeepCopy());
// The pref value should be the one dictated by policy.
EXPECT_TRUE(managed_value.Equals(&GetPreferenceValue(prefs::kHomePage)));
EXPECT_FALSE(pref->IsDefaultValue());
@@ -706,3 +706,19 @@ TEST_F(PrefsSyncableServiceTest, DynamicManagedDefaultPreferences) {
// There should still be no synced value.
EXPECT_FALSE(FindValue(prefs::kHomePage, out).get());
}
+
+TEST_F(PrefsSyncableServiceTest, DeletePreference) {
+ prefs_.SetString(prefs::kHomePage, kExampleUrl0);
+ const PrefService::Preference* pref =
+ prefs_.FindPreference(prefs::kHomePage);
+ EXPECT_FALSE(pref->IsDefaultValue());
+
+ InitWithNoSyncData();
+
+ scoped_ptr<base::Value> null_value(base::Value::CreateNullValue());
+ syncer::SyncChangeList list;
+ list.push_back(MakeRemoteChange(
+ 1, prefs::kHomePage, *null_value, SyncChange::ACTION_DELETE));
+ pref_sync_service_->ProcessSyncChanges(FROM_HERE, list);
+ EXPECT_TRUE(pref->IsDefaultValue());
+}
« no previous file with comments | « chrome/browser/prefs/pref_model_associator.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698