Index: chrome/browser/prefs/pref_service_unittest.cc |
diff --git a/chrome/browser/prefs/pref_service_unittest.cc b/chrome/browser/prefs/pref_service_unittest.cc |
index ce2f91cb1a5f11386e855279c21cb9badeaf1a15..54cc3ddec87cf65b8b643c8a732fb019379255cd 100644 |
--- a/chrome/browser/prefs/pref_service_unittest.cc |
+++ b/chrome/browser/prefs/pref_service_unittest.cc |
@@ -31,6 +31,8 @@ using testing::Mock; |
using testing::Pointee; |
using testing::Property; |
+namespace { |
+ |
class TestPrefObserver : public NotificationObserver { |
public: |
TestPrefObserver(const PrefService* prefs, |
@@ -39,17 +41,16 @@ class TestPrefObserver : public NotificationObserver { |
: observer_fired_(false), |
prefs_(prefs), |
pref_name_(pref_name), |
- new_pref_value_(new_pref_value) { |
- } |
+ new_pref_value_(new_pref_value) {} |
virtual ~TestPrefObserver() {} |
virtual void Observe(NotificationType type, |
const NotificationSource& source, |
const NotificationDetails& details) { |
EXPECT_EQ(type.value, NotificationType::PREF_CHANGED); |
- PrefService* prefs_in = Source<PrefService>(source).ptr(); |
+ const PrefService* prefs_in = Source<PrefService>(source).ptr(); |
EXPECT_EQ(prefs_in, prefs_); |
- std::string* pref_name_in = Details<std::string>(details).ptr(); |
+ const std::string* pref_name_in = Details<std::string>(details).ptr(); |
EXPECT_EQ(*pref_name_in, pref_name_); |
EXPECT_EQ(new_pref_value_, prefs_in->GetString("homepage")); |
observer_fired_ = true; |
@@ -69,6 +70,8 @@ class TestPrefObserver : public NotificationObserver { |
std::string new_pref_value_; |
}; |
+} // namespace |
+ |
// TODO(port): port this test to POSIX. |
#if defined(OS_WIN) |
TEST(PrefServiceTest, LocalizedPrefs) { |
@@ -98,7 +101,7 @@ TEST(PrefServiceTest, NoObserverFire) { |
TestingPrefService prefs; |
const char pref_name[] = "homepage"; |
- prefs.RegisterStringPref(pref_name, ""); |
+ prefs.RegisterStringPref(pref_name, std::string()); |
const std::string new_pref_value("http://www.google.com/"); |
TestPrefObserver obs(&prefs, pref_name, new_pref_value); |
@@ -119,12 +122,12 @@ TEST(PrefServiceTest, NoObserverFire) { |
EXPECT_FALSE(obs.observer_fired()); |
// Clearing the pref should cause the pref to fire. |
- obs.Reset(""); |
+ obs.Reset(std::string()); |
prefs.ClearPref(pref_name); |
EXPECT_TRUE(obs.observer_fired()); |
// Clearing the pref again should not cause the pref to fire. |
- obs.Reset(""); |
+ obs.Reset(std::string()); |
prefs.ClearPref(pref_name); |
EXPECT_FALSE(obs.observer_fired()); |
} |
@@ -152,7 +155,7 @@ TEST(PrefServiceTest, Observers) { |
TestingPrefService prefs; |
prefs.SetUserPref(pref_name, Value::CreateStringValue("http://www.cnn.com")); |
- prefs.RegisterStringPref(pref_name, ""); |
+ prefs.RegisterStringPref(pref_name, std::string()); |
const std::string new_pref_value("http://www.google.com/"); |
TestPrefObserver obs(&prefs, pref_name, new_pref_value); |
@@ -177,7 +180,7 @@ TEST(PrefServiceTest, Observers) { |
// Make sure obs2 still works after removing obs. |
registrar.Remove(pref_name, &obs); |
- obs.Reset(""); |
+ obs.Reset(std::string()); |
obs2.Reset(new_pref_value); |
// This should only fire the observer in obs2. |
prefs.SetString(pref_name, new_pref_value); |
@@ -205,19 +208,14 @@ TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineOptions) { |
scoped_ptr<policy::MockConfigurationPolicyProvider> provider( |
new policy::MockConfigurationPolicyProvider()); |
Value* mode_value = Value::CreateIntegerValue( |
- policy::ConfigurationPolicyStore::kPolicyManuallyConfiguredProxyMode); |
- provider->AddPolicy( |
- policy::ConfigurationPolicyStore::kPolicyProxyServerMode, |
- mode_value); |
- provider->AddPolicy( |
- policy::ConfigurationPolicyStore::kPolicyProxyBypassList, |
- Value::CreateStringValue("abc")); |
- provider->AddPolicy( |
- policy::ConfigurationPolicyStore::kPolicyProxyPacUrl, |
- Value::CreateStringValue("def")); |
- provider->AddPolicy( |
- policy::ConfigurationPolicyStore::kPolicyProxyServer, |
- Value::CreateStringValue("ghi")); |
+ policy::kPolicyManuallyConfiguredProxyMode); |
+ provider->AddPolicy(policy::kPolicyProxyServerMode, mode_value); |
+ provider->AddPolicy(policy::kPolicyProxyBypassList, |
+ Value::CreateStringValue("abc")); |
+ provider->AddPolicy(policy::kPolicyProxyPacUrl, |
+ Value::CreateStringValue("def")); |
+ provider->AddPolicy(policy::kPolicyProxyServer, |
+ Value::CreateStringValue("ghi")); |
// First verify that command-line options are set correctly when |
// there is no policy in effect. |
@@ -249,10 +247,8 @@ TEST(PrefServiceTest, ProxyPolicyOverridesUnrelatedCommandLineOptions) { |
scoped_ptr<policy::MockConfigurationPolicyProvider> provider( |
new policy::MockConfigurationPolicyProvider()); |
Value* mode_value = Value::CreateIntegerValue( |
- policy::ConfigurationPolicyStore::kPolicyUseSystemProxyMode); |
- provider->AddPolicy( |
- policy::ConfigurationPolicyStore::kPolicyProxyServerMode, |
- mode_value); |
+ policy::kPolicyUseSystemProxyMode); |
+ provider->AddPolicy(policy::kPolicyProxyServerMode, mode_value); |
// First verify that command-line options are set correctly when |
// there is no policy in effect. |
@@ -272,9 +268,9 @@ TEST(PrefServiceTest, ProxyPolicyOverridesUnrelatedCommandLineOptions) { |
browser::RegisterUserPrefs(&prefs2); |
EXPECT_FALSE(prefs2.GetBoolean(prefs::kProxyAutoDetect)); |
EXPECT_FALSE(prefs2.GetBoolean(prefs::kNoProxyServer)); |
- EXPECT_EQ("", prefs2.GetString(prefs::kProxyServer)); |
- EXPECT_EQ("", prefs2.GetString(prefs::kProxyPacUrl)); |
- EXPECT_EQ("", prefs2.GetString(prefs::kProxyBypassList)); |
+ EXPECT_EQ(std::string(), prefs2.GetString(prefs::kProxyServer)); |
+ EXPECT_EQ(std::string(), prefs2.GetString(prefs::kProxyPacUrl)); |
+ EXPECT_EQ(std::string(), prefs2.GetString(prefs::kProxyBypassList)); |
} |
TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineNoProxy) { |
@@ -283,10 +279,8 @@ TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineNoProxy) { |
scoped_ptr<policy::MockConfigurationPolicyProvider> provider( |
new policy::MockConfigurationPolicyProvider()); |
Value* mode_value = Value::CreateIntegerValue( |
- policy::ConfigurationPolicyStore::kPolicyAutoDetectProxyMode); |
- provider->AddPolicy( |
- policy::ConfigurationPolicyStore::kPolicyProxyServerMode, |
- mode_value); |
+ policy::kPolicyAutoDetectProxyMode); |
+ provider->AddPolicy(policy::kPolicyProxyServerMode, mode_value); |
// First verify that command-line options are set correctly when |
// there is no policy in effect. |
@@ -294,9 +288,9 @@ TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineNoProxy) { |
browser::RegisterUserPrefs(&prefs); |
EXPECT_FALSE(prefs.GetBoolean(prefs::kProxyAutoDetect)); |
EXPECT_TRUE(prefs.GetBoolean(prefs::kNoProxyServer)); |
- EXPECT_EQ("", prefs.GetString(prefs::kProxyServer)); |
- EXPECT_EQ("", prefs.GetString(prefs::kProxyPacUrl)); |
- EXPECT_EQ("", prefs.GetString(prefs::kProxyBypassList)); |
+ EXPECT_EQ(std::string(), prefs.GetString(prefs::kProxyServer)); |
+ EXPECT_EQ(std::string(), prefs.GetString(prefs::kProxyPacUrl)); |
+ EXPECT_EQ(std::string(), prefs.GetString(prefs::kProxyBypassList)); |
// Try a second time time with the managed PrefStore in place, the |
// auto-detect should be overridden. The default pref store must be |
@@ -305,9 +299,9 @@ TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineNoProxy) { |
browser::RegisterUserPrefs(&prefs2); |
EXPECT_TRUE(prefs2.GetBoolean(prefs::kProxyAutoDetect)); |
EXPECT_FALSE(prefs2.GetBoolean(prefs::kNoProxyServer)); |
- EXPECT_EQ("", prefs2.GetString(prefs::kProxyServer)); |
- EXPECT_EQ("", prefs2.GetString(prefs::kProxyPacUrl)); |
- EXPECT_EQ("", prefs2.GetString(prefs::kProxyBypassList)); |
+ EXPECT_EQ(std::string(), prefs2.GetString(prefs::kProxyServer)); |
+ EXPECT_EQ(std::string(), prefs2.GetString(prefs::kProxyPacUrl)); |
+ EXPECT_EQ(std::string(), prefs2.GetString(prefs::kProxyBypassList)); |
} |
TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineAutoDetect) { |
@@ -316,10 +310,8 @@ TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineAutoDetect) { |
scoped_ptr<policy::MockConfigurationPolicyProvider> provider( |
new policy::MockConfigurationPolicyProvider()); |
Value* mode_value = Value::CreateIntegerValue( |
- policy::ConfigurationPolicyStore::kPolicyNoProxyServerMode); |
- provider->AddPolicy( |
- policy::ConfigurationPolicyStore::kPolicyProxyServerMode, |
- mode_value); |
+ policy::kPolicyNoProxyServerMode); |
+ provider->AddPolicy(policy::kPolicyProxyServerMode, mode_value); |
// First verify that the auto-detect is set if there is no managed |
// PrefStore. |
@@ -327,9 +319,9 @@ TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineAutoDetect) { |
browser::RegisterUserPrefs(&prefs); |
EXPECT_TRUE(prefs.GetBoolean(prefs::kProxyAutoDetect)); |
EXPECT_FALSE(prefs.GetBoolean(prefs::kNoProxyServer)); |
- EXPECT_EQ("", prefs.GetString(prefs::kProxyServer)); |
- EXPECT_EQ("", prefs.GetString(prefs::kProxyPacUrl)); |
- EXPECT_EQ("", prefs.GetString(prefs::kProxyBypassList)); |
+ EXPECT_EQ(std::string(), prefs.GetString(prefs::kProxyServer)); |
+ EXPECT_EQ(std::string(), prefs.GetString(prefs::kProxyPacUrl)); |
+ EXPECT_EQ(std::string(), prefs.GetString(prefs::kProxyBypassList)); |
// Try a second time time with the managed PrefStore in place, the |
// auto-detect should be overridden. The default pref store must be |
@@ -338,18 +330,18 @@ TEST(PrefServiceTest, ProxyPolicyOverridesCommandLineAutoDetect) { |
browser::RegisterUserPrefs(&prefs2); |
EXPECT_FALSE(prefs2.GetBoolean(prefs::kProxyAutoDetect)); |
EXPECT_TRUE(prefs2.GetBoolean(prefs::kNoProxyServer)); |
- EXPECT_EQ("", prefs2.GetString(prefs::kProxyServer)); |
- EXPECT_EQ("", prefs2.GetString(prefs::kProxyPacUrl)); |
- EXPECT_EQ("", prefs2.GetString(prefs::kProxyBypassList)); |
+ EXPECT_EQ(std::string(), prefs2.GetString(prefs::kProxyServer)); |
+ EXPECT_EQ(std::string(), prefs2.GetString(prefs::kProxyPacUrl)); |
+ EXPECT_EQ(std::string(), prefs2.GetString(prefs::kProxyBypassList)); |
} |
class PrefServiceSetValueTest : public testing::Test { |
protected: |
- static const char name_[]; |
- static const char value_[]; |
+ static const char kName[]; |
+ static const char kValue[]; |
PrefServiceSetValueTest() |
- : name_string_(name_), |
+ : name_string_(kName), |
null_value_(Value::CreateNullValue()) {} |
void SetExpectNoNotification() { |
@@ -369,97 +361,98 @@ class PrefServiceSetValueTest : public testing::Test { |
NotificationObserverMock observer_; |
}; |
-const char PrefServiceSetValueTest::name_[] = "name"; |
-const char PrefServiceSetValueTest::value_[] = "value"; |
+const char PrefServiceSetValueTest::kName[] = "name"; |
+const char PrefServiceSetValueTest::kValue[] = "value"; |
TEST_F(PrefServiceSetValueTest, SetStringValue) { |
const char default_string[] = "default"; |
- scoped_ptr<Value> default_value(Value::CreateStringValue(default_string)); |
- prefs_.RegisterStringPref(name_, default_string); |
+ const scoped_ptr<Value> default_value( |
+ Value::CreateStringValue(default_string)); |
+ prefs_.RegisterStringPref(kName, default_string); |
PrefChangeRegistrar registrar; |
registrar.Init(&prefs_); |
- registrar.Add(name_, &observer_); |
+ registrar.Add(kName, &observer_); |
// Changing the controlling store from default to user triggers notification. |
SetExpectPrefChanged(); |
- prefs_.Set(name_, *default_value); |
+ prefs_.Set(kName, *default_value); |
Mock::VerifyAndClearExpectations(&observer_); |
SetExpectNoNotification(); |
- prefs_.Set(name_, *default_value); |
+ prefs_.Set(kName, *default_value); |
Mock::VerifyAndClearExpectations(&observer_); |
- scoped_ptr<Value> new_value(Value::CreateStringValue(value_)); |
+ const scoped_ptr<Value> new_value(Value::CreateStringValue(kValue)); |
SetExpectPrefChanged(); |
- prefs_.Set(name_, *new_value); |
- EXPECT_EQ(value_, prefs_.GetString(name_)); |
+ prefs_.Set(kName, *new_value); |
+ EXPECT_EQ(kValue, prefs_.GetString(kName)); |
} |
TEST_F(PrefServiceSetValueTest, SetDictionaryValue) { |
- prefs_.RegisterDictionaryPref(name_); |
+ prefs_.RegisterDictionaryPref(kName); |
PrefChangeRegistrar registrar; |
registrar.Init(&prefs_); |
- registrar.Add(name_, &observer_); |
+ registrar.Add(kName, &observer_); |
// Dictionary values are special: setting one to NULL is the same as clearing |
// the user value, allowing the NULL default to take (or keep) control. |
SetExpectNoNotification(); |
- prefs_.Set(name_, *null_value_); |
+ prefs_.Set(kName, *null_value_); |
Mock::VerifyAndClearExpectations(&observer_); |
DictionaryValue new_value; |
- new_value.SetString(name_, value_); |
+ new_value.SetString(kName, kValue); |
SetExpectPrefChanged(); |
- prefs_.Set(name_, new_value); |
+ prefs_.Set(kName, new_value); |
Mock::VerifyAndClearExpectations(&observer_); |
- DictionaryValue* dict = prefs_.GetMutableDictionary(name_); |
+ DictionaryValue* dict = prefs_.GetMutableDictionary(kName); |
EXPECT_EQ(1U, dict->size()); |
std::string out_value; |
- dict->GetString(name_, &out_value); |
- EXPECT_EQ(value_, out_value); |
+ dict->GetString(kName, &out_value); |
+ EXPECT_EQ(kValue, out_value); |
SetExpectNoNotification(); |
- prefs_.Set(name_, new_value); |
+ prefs_.Set(kName, new_value); |
Mock::VerifyAndClearExpectations(&observer_); |
SetExpectPrefChanged(); |
- prefs_.Set(name_, *null_value_); |
+ prefs_.Set(kName, *null_value_); |
Mock::VerifyAndClearExpectations(&observer_); |
- dict = prefs_.GetMutableDictionary(name_); |
+ dict = prefs_.GetMutableDictionary(kName); |
EXPECT_EQ(0U, dict->size()); |
} |
TEST_F(PrefServiceSetValueTest, SetListValue) { |
- prefs_.RegisterListPref(name_); |
+ prefs_.RegisterListPref(kName); |
PrefChangeRegistrar registrar; |
registrar.Init(&prefs_); |
- registrar.Add(name_, &observer_); |
+ registrar.Add(kName, &observer_); |
// List values are special: setting one to NULL is the same as clearing the |
// user value, allowing the NULL default to take (or keep) control. |
SetExpectNoNotification(); |
- prefs_.Set(name_, *null_value_); |
+ prefs_.Set(kName, *null_value_); |
Mock::VerifyAndClearExpectations(&observer_); |
ListValue new_value; |
- new_value.Append(Value::CreateStringValue(value_)); |
+ new_value.Append(Value::CreateStringValue(kValue)); |
SetExpectPrefChanged(); |
- prefs_.Set(name_, new_value); |
+ prefs_.Set(kName, new_value); |
Mock::VerifyAndClearExpectations(&observer_); |
- ListValue* list = prefs_.GetMutableList(name_); |
+ const ListValue* list = prefs_.GetMutableList(kName); |
ASSERT_EQ(1U, list->GetSize()); |
std::string out_value; |
list->GetString(0, &out_value); |
- EXPECT_EQ(value_, out_value); |
+ EXPECT_EQ(kValue, out_value); |
SetExpectNoNotification(); |
- prefs_.Set(name_, new_value); |
+ prefs_.Set(kName, new_value); |
Mock::VerifyAndClearExpectations(&observer_); |
SetExpectPrefChanged(); |
- prefs_.Set(name_, *null_value_); |
+ prefs_.Set(kName, *null_value_); |
Mock::VerifyAndClearExpectations(&observer_); |
- list = prefs_.GetMutableList(name_); |
+ list = prefs_.GetMutableList(kName); |
EXPECT_EQ(0U, list->GetSize()); |
} |