1// Copyright (c) 2011 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "base/prefs/mock_pref_change_callback.h"
6
7#include "base/bind.h"
8
9MockPrefChangeCallback::MockPrefChangeCallback(PrefService* prefs)
10    : prefs_(prefs) {
11}
12
13MockPrefChangeCallback::~MockPrefChangeCallback() {}
14
15PrefChangeRegistrar::NamedChangeCallback MockPrefChangeCallback::GetCallback() {
16  return base::Bind(&MockPrefChangeCallback::OnPreferenceChanged,
17                    base::Unretained(this));
18}
19
20void MockPrefChangeCallback::Expect(const std::string& pref_name,
21                                    const base::Value* value) {
22  EXPECT_CALL(*this, OnPreferenceChanged(pref_name))
23      .With(PrefValueMatches(prefs_, pref_name, value));
24}
25