blob: 1b24b4e068f1be84dd3fd6e081a0c5517d97bec7 [file] [log] [blame]
James Robinson646469d2014-10-03 15:33:28 -07001// 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#ifndef BASE_PREFS_PREF_STORE_OBSERVER_MOCK_H_
6#define BASE_PREFS_PREF_STORE_OBSERVER_MOCK_H_
7
8#include <string>
9#include <vector>
10
11#include "base/compiler_specific.h"
12#include "base/macros.h"
13#include "base/prefs/pref_store.h"
14
15// A mock implementation of PrefStore::Observer.
16class PrefStoreObserverMock : public PrefStore::Observer {
17 public:
18 PrefStoreObserverMock();
James Robinsone1b30cf2014-10-21 12:25:40 -070019 ~PrefStoreObserverMock() override;
James Robinson646469d2014-10-03 15:33:28 -070020
21 void VerifyAndResetChangedKey(const std::string& expected);
22
23 // PrefStore::Observer implementation
James Robinsone1b30cf2014-10-21 12:25:40 -070024 void OnPrefValueChanged(const std::string& key) override;
25 void OnInitializationCompleted(bool success) override;
James Robinson646469d2014-10-03 15:33:28 -070026
27 std::vector<std::string> changed_keys;
28 bool initialized;
29 bool initialization_success; // Only valid if |initialized|.
30
31 private:
32 DISALLOW_COPY_AND_ASSIGN(PrefStoreObserverMock);
33};
34
35#endif // BASE_PREFS_PREF_STORE_OBSERVER_MOCK_H_