| Index: chrome/browser/prefs/pref_change_registrar_unittest.cc
 | 
| diff --git a/chrome/browser/prefs/pref_change_registrar_unittest.cc b/chrome/browser/prefs/pref_change_registrar_unittest.cc
 | 
| index 4d7f747c913dc757ceb1847828369a1154622cc7..8096ee66d75861b3b2ddf5dd10e6b5c3086fb20a 100644
 | 
| --- a/chrome/browser/prefs/pref_change_registrar_unittest.cc
 | 
| +++ b/chrome/browser/prefs/pref_change_registrar_unittest.cc
 | 
| @@ -63,6 +63,7 @@ TEST_F(PrefChangeRegistrarTest, AddAndRemove) {
 | 
|                AddPrefObserver(Eq(std::string("test.pref.2")), observer()));
 | 
|    registrar.Add("test.pref.1", observer());
 | 
|    registrar.Add("test.pref.2", observer());
 | 
| +  EXPECT_FALSE(registrar.IsEmpty());
 | 
|  
 | 
|    // Test removing.
 | 
|    Mock::VerifyAndClearExpectations(service());
 | 
| @@ -72,6 +73,11 @@ TEST_F(PrefChangeRegistrarTest, AddAndRemove) {
 | 
|                RemovePrefObserver(Eq(std::string("test.pref.2")), observer()));
 | 
|    registrar.Remove("test.pref.1", observer());
 | 
|    registrar.Remove("test.pref.2", observer());
 | 
| +  EXPECT_TRUE(registrar.IsEmpty());
 | 
| +
 | 
| +  // Explicitly check the expectations now to make sure that the Removes
 | 
| +  // worked (rather than the registrar destructor doing the work).
 | 
| +  Mock::VerifyAndClearExpectations(service());
 | 
|  }
 | 
|  
 | 
|  TEST_F(PrefChangeRegistrarTest, AutoRemove) {
 | 
| @@ -83,8 +89,33 @@ TEST_F(PrefChangeRegistrarTest, AutoRemove) {
 | 
|                AddPrefObserver(Eq(std::string("test.pref.1")), observer()));
 | 
|    registrar.Add("test.pref.1", observer());
 | 
|    Mock::VerifyAndClearExpectations(service());
 | 
| +  EXPECT_FALSE(registrar.IsEmpty());
 | 
|  
 | 
|    // Test auto-removing.
 | 
|    EXPECT_CALL(*service(),
 | 
|                RemovePrefObserver(Eq(std::string("test.pref.1")), observer()));
 | 
|  }
 | 
| +
 | 
| +TEST_F(PrefChangeRegistrarTest, RemoveAll) {
 | 
| +  PrefChangeRegistrar registrar;
 | 
| +  registrar.Init(service());
 | 
| +
 | 
| +  EXPECT_CALL(*service(),
 | 
| +              AddPrefObserver(Eq(std::string("test.pref.1")), observer()));
 | 
| +  EXPECT_CALL(*service(),
 | 
| +              AddPrefObserver(Eq(std::string("test.pref.2")), observer()));
 | 
| +  registrar.Add("test.pref.1", observer());
 | 
| +  registrar.Add("test.pref.2", observer());
 | 
| +  Mock::VerifyAndClearExpectations(service());
 | 
| +
 | 
| +  EXPECT_CALL(*service(),
 | 
| +              RemovePrefObserver(Eq(std::string("test.pref.1")), observer()));
 | 
| +  EXPECT_CALL(*service(),
 | 
| +              RemovePrefObserver(Eq(std::string("test.pref.2")), observer()));
 | 
| +  registrar.RemoveAll();
 | 
| +  EXPECT_TRUE(registrar.IsEmpty());
 | 
| +
 | 
| +  // Explicitly check the expectations now to make sure that the RemoveAll
 | 
| +  // worked (rather than the registrar destructor doing the work).
 | 
| +  Mock::VerifyAndClearExpectations(service());
 | 
| +}
 | 
| 
 |