Index: base/prefs/mock_pref_change_callback.cc |
diff --git a/base/prefs/mock_pref_change_callback.cc b/base/prefs/mock_pref_change_callback.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..96b71974eb6ffdf652571a1f722a3be6cddf96f1 |
--- /dev/null |
+++ b/base/prefs/mock_pref_change_callback.cc |
@@ -0,0 +1,24 @@ |
+// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "base/prefs/mock_pref_change_callback.h" |
+ |
+#include "base/bind.h" |
+ |
+MockPrefChangeCallback::MockPrefChangeCallback(PrefService* prefs) |
+ : prefs_(prefs) { |
+} |
+ |
+MockPrefChangeCallback::~MockPrefChangeCallback() {} |
+ |
+PrefChangeRegistrar::NamedChangeCallback MockPrefChangeCallback::GetCallback() { |
+ return base::Bind(&MockPrefChangeCallback::OnPreferenceChanged, |
+ base::Unretained(this)); |
+} |
+ |
+void MockPrefChangeCallback::Expect(const std::string& pref_name, |
+ const base::Value* value) { |
+ EXPECT_CALL(*this, OnPreferenceChanged(pref_name)) |
+ .With(PrefValueMatches(prefs_, pref_name, value)); |
+} |