1 // Copyright (c) 2012 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.
5 #include "base/prefs/testing_pref_service.h"
8 #include "base/compiler_specific.h"
9 #include "base/prefs/default_pref_store.h"
10 #include "base/prefs/pref_notifier_impl.h"
11 #include "base/prefs/pref_registry_simple.h"
12 #include "base/prefs/pref_value_store.h"
13 #include "testing/gtest/include/gtest/gtest.h"
16 TestingPrefServiceBase
<PrefService
, PrefRegistry
>::TestingPrefServiceBase(
17 TestingPrefStore
* managed_prefs
,
18 TestingPrefStore
* user_prefs
,
19 TestingPrefStore
* recommended_prefs
,
20 PrefRegistry
* pref_registry
,
21 PrefNotifierImpl
* pref_notifier
)
24 new PrefValueStore(managed_prefs
,
30 pref_registry
->defaults().get(),
34 base::Bind(&TestingPrefServiceBase
<PrefService
,
35 PrefRegistry
>::HandleReadError
),
37 managed_prefs_(managed_prefs
),
38 user_prefs_(user_prefs
),
39 recommended_prefs_(recommended_prefs
) {}
41 TestingPrefServiceSimple::TestingPrefServiceSimple()
42 : TestingPrefServiceBase
<PrefService
, PrefRegistry
>(
43 new TestingPrefStore(),
44 new TestingPrefStore(),
45 new TestingPrefStore(),
46 new PrefRegistrySimple(),
47 new PrefNotifierImpl()) {}
49 TestingPrefServiceSimple::~TestingPrefServiceSimple() {
52 PrefRegistrySimple
* TestingPrefServiceSimple::registry() {
53 return static_cast<PrefRegistrySimple
*>(DeprecatedGetPrefRegistry());