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()); |
+} |