preferences_helper.h revision 2a99a7e74a7f215066514fe81d2bfa6639d9eddd
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.
4
5#ifndef CHROME_BROWSER_SYNC_TEST_INTEGRATION_PREFERENCES_HELPER_H_
6#define CHROME_BROWSER_SYNC_TEST_INTEGRATION_PREFERENCES_HELPER_H_
7
8#include "base/files/file_path.h"
9#include "base/values.h"
10
11#include <string>
12
13class PrefService;
14
15namespace preferences_helper {
16
17// Used to access the preferences within a particular sync profile.
18PrefService* GetPrefs(int index);
19
20// Used to access the preferences within the verifier sync profile.
21PrefService* GetVerifierPrefs();
22
23// Inverts the value of the boolean preference with name |pref_name| in the
24// profile with index |index|. Also inverts its value in |verifier| if
25// DisableVerifier() hasn't been called.
26void ChangeBooleanPref(int index, const char* pref_name);
27
28// Changes the value of the integer preference with name |pref_name| in the
29// profile with index |index| to |new_value|. Also changes its value in
30// |verifier| if DisableVerifier() hasn't been called.
31void ChangeIntegerPref(int index, const char* pref_name, int new_value);
32
33// Changes the value of the int64 preference with name |pref_name| in the
34// profile with index |index| to |new_value|. Also changes its value in
35// |verifier| if DisableVerifier() hasn't been called.
36void ChangeInt64Pref(int index, const char* pref_name, int64 new_value);
37
38// Changes the value of the double preference with name |pref_name| in the
39// profile with index |index| to |new_value|. Also changes its value in
40// |verifier| if DisableVerifier() hasn't been called.
41void ChangeDoublePref(int index, const char* pref_name, double new_value);
42
43// Changes the value of the string preference with name |pref_name| in the
44// profile with index |index| to |new_value|. Also changes its value in
45// |verifier| if DisableVerifier() hasn't been called.
46void ChangeStringPref(int index,
47                      const char* pref_name,
48                      const std::string& new_value);
49
50// Modifies the value of the string preference with name |pref_name| in the
51// profile with index |index| by appending |append_value| to its current
52// value. Also changes its value in |verifier| if DisableVerifier() hasn't
53// been called.
54void AppendStringPref(int index,
55                      const char* pref_name,
56                      const std::string& append_value);
57
58// Changes the value of the file path preference with name |pref_name| in the
59// profile with index |index| to |new_value|. Also changes its value in
60// |verifier| if DisableVerifier() hasn't been called.
61void ChangeFilePathPref(int index,
62                        const char* pref_name,
63                        const base::FilePath& new_value);
64
65// Changes the value of the list preference with name |pref_name| in the
66// profile with index |index| to |new_value|. Also changes its value in
67// |verifier| if DisableVerifier() hasn't been called.
68void ChangeListPref(int index,
69                    const char* pref_name,
70                    const ListValue& new_value);
71
72// Used to verify that the boolean preference with name |pref_name| has the
73// same value across all profiles. Also checks |verifier| if DisableVerifier()
74// hasn't been called.
75bool BooleanPrefMatches(const char* pref_name) WARN_UNUSED_RESULT;
76
77// Used to verify that the integer preference with name |pref_name| has the
78// same value across all profiles. Also checks |verifier| if DisableVerifier()
79// hasn't been called.
80bool IntegerPrefMatches(const char* pref_name) WARN_UNUSED_RESULT;
81
82// Used to verify that the int64 preference with name |pref_name| has the
83// same value across all profiles. Also checks |verifier| if DisableVerifier()
84// hasn't been called.
85bool Int64PrefMatches(const char* pref_name) WARN_UNUSED_RESULT;
86
87// Used to verify that the double preference with name |pref_name| has the
88// same value across all profiles. Also checks |verifier| if DisableVerifier()
89// hasn't been called.
90bool DoublePrefMatches(const char* pref_name) WARN_UNUSED_RESULT;
91
92// Used to verify that the string preference with name |pref_name| has the
93// same value across all profiles. Also checks |verifier| if DisableVerifier()
94// hasn't been called.
95bool StringPrefMatches(const char* pref_name) WARN_UNUSED_RESULT;
96
97// Used to verify that the file path preference with name |pref_name| has the
98// same value across all profiles. Also checks |verifier| if DisableVerifier()
99// hasn't been called.
100bool FilePathPrefMatches(const char* pref_name) WARN_UNUSED_RESULT;
101
102// Used to verify that the list preference with name |pref_name| has the
103// same value across all profiles. Also checks |verifier| if DisableVerifier()
104// hasn't been called.
105bool ListPrefMatches(const char* pref_name) WARN_UNUSED_RESULT;
106
107}  // namespace preferences_helper
108
109#endif  // CHROME_BROWSER_SYNC_TEST_INTEGRATION_PREFERENCES_HELPER_H_
110