Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(14)

Unified Diff: chrome/browser/pref_value_store_unittest.cc

Issue 2823037: Add an ExtensionPrefStore, layered between the user prefs nad the managed pre... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/pref_value_store.cc ('k') | chrome/browser/tab_contents/web_contents_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/pref_value_store_unittest.cc
===================================================================
--- chrome/browser/pref_value_store_unittest.cc (revision 52073)
+++ chrome/browser/pref_value_store_unittest.cc (working copy)
@@ -16,19 +16,22 @@
// Names of the preferences used in this test program.
namespace prefs {
+ const wchar_t kCurrentThemeID[] = L"extensions.theme.id";
const wchar_t kDeleteCache[] = L"browser.clear_data.cache";
+ const wchar_t kExtensionPref[] = L"extension.pref";
+ const wchar_t kHomepage[] = L"homepage";
const wchar_t kMaxTabs[] = L"tabs.max_tabs";
- const wchar_t kHomepage[] = L"homepage";
const wchar_t kMissingPref[] = L"this.pref.does_not_exist";
const wchar_t kRecommendedPref[] = L"this.pref.recommended_value_only";
const wchar_t kSampleDict[] = L"sample.dict";
const wchar_t kSampleList[] = L"sample.list";
}
-// Expected values of all preferences used in this test programm.
-namespace expected {
+// Potentailly expected values of all preferences used in this test program.
+namespace user {
const int kMaxTabsValue = 31;
const bool kDeleteCacheValue = true;
+ const std::wstring kCurrentThemeIDValue = L"abcdefg";
const std::wstring kHomepageValue = L"http://www.google.com";
}
@@ -36,6 +39,11 @@
const std::wstring kHomepageValue = L"http://www.topeka.com";
}
+namespace extension {
+ const std::wstring kCurrentThemeIDValue = L"set by extension";
+ const std::wstring kHomepageValue = L"http://www.chromium.org";
+}
+
namespace recommended {
const int kMaxTabsValue = 10;
const bool kRecommendedPrefValue = true;
@@ -47,23 +55,28 @@
// |PrefStore|s are owned by the |PrefValueStore|.
DummyPrefStore* enforced_pref_store_;
+ DummyPrefStore* extension_pref_store_;
DummyPrefStore* recommended_pref_store_;
DummyPrefStore* user_pref_store_;
// Preferences are owned by the individual |DummyPrefStores|.
DictionaryValue* enforced_prefs_;
+ DictionaryValue* extension_prefs_;
DictionaryValue* user_prefs_;
DictionaryValue* recommended_prefs_;
virtual void SetUp() {
// Create dummy user preferences.
enforced_prefs_= CreateEnforcedPrefs();
+ extension_prefs_ = CreateExtensionPrefs();
user_prefs_ = CreateUserPrefs();
recommended_prefs_ = CreateRecommendedPrefs();
// Create |DummyPrefStore|s.
enforced_pref_store_ = new DummyPrefStore();
enforced_pref_store_->set_prefs(enforced_prefs_);
+ extension_pref_store_ = new DummyPrefStore();
+ extension_pref_store_->set_prefs(extension_prefs_);
user_pref_store_ = new DummyPrefStore();
user_pref_store_->set_read_only(false);
user_pref_store_->set_prefs(user_prefs_);
@@ -72,6 +85,7 @@
// Create a new pref-value-store.
pref_value_store_.reset(new PrefValueStore(enforced_pref_store_,
+ extension_pref_store_,
user_pref_store_,
recommended_pref_store_));
}
@@ -80,9 +94,10 @@
// in it.
DictionaryValue* CreateUserPrefs() {
DictionaryValue* user_prefs = new DictionaryValue();
- user_prefs->SetBoolean(prefs::kDeleteCache, expected::kDeleteCacheValue);
- user_prefs->SetInteger(prefs::kMaxTabs, expected::kMaxTabsValue);
- user_prefs->SetString(prefs::kHomepage, expected::kHomepageValue);
+ user_prefs->SetBoolean(prefs::kDeleteCache, user::kDeleteCacheValue);
+ user_prefs->SetInteger(prefs::kMaxTabs, user::kMaxTabsValue);
+ user_prefs->SetString(prefs::kCurrentThemeID, user::kCurrentThemeIDValue);
+ user_prefs->SetString(prefs::kHomepage, user::kHomepageValue);
return user_prefs;
}
@@ -92,6 +107,14 @@
return enforced_prefs;
}
+ DictionaryValue* CreateExtensionPrefs() {
+ DictionaryValue* extension_prefs = new DictionaryValue();
+ extension_prefs->SetString(prefs::kCurrentThemeID,
+ extension::kCurrentThemeIDValue);
+ extension_prefs->SetString(prefs::kHomepage, extension::kHomepageValue);
+ return extension_prefs;
+ }
+
DictionaryValue* CreateRecommendedPrefs() {
DictionaryValue* recommended_prefs = new DictionaryValue();
recommended_prefs->SetInteger(prefs::kMaxTabs, recommended::kMaxTabsValue);
@@ -123,6 +146,7 @@
TEST_F(PrefValueStoreTest, IsReadOnly) {
enforced_pref_store_->set_read_only(true);
+ extension_pref_store_->set_read_only(true);
user_pref_store_->set_read_only(true);
recommended_pref_store_->set_read_only(true);
EXPECT_TRUE(pref_value_store_->ReadOnly());
@@ -134,26 +158,33 @@
TEST_F(PrefValueStoreTest, GetValue) {
Value* value;
- // Test getting an enforced value overwriting a user defined value.
+ // Test getting an enforced value overwriting a user-defined and
+ // extension-defined value.
value = NULL;
ASSERT_TRUE(pref_value_store_->GetValue(prefs::kHomepage, &value));
std::wstring actual_str_value;
EXPECT_TRUE(value->GetAsString(&actual_str_value));
EXPECT_EQ(enforced::kHomepageValue, actual_str_value);
- // Test getting a user set value.
+ // Test getting an extension value overwriting a user-defined value.
value = NULL;
+ ASSERT_TRUE(pref_value_store_->GetValue(prefs::kCurrentThemeID, &value));
+ EXPECT_TRUE(value->GetAsString(&actual_str_value));
+ EXPECT_EQ(extension::kCurrentThemeIDValue, actual_str_value);
+
+ // Test getting a user-set value.
+ value = NULL;
ASSERT_TRUE(pref_value_store_->GetValue(prefs::kDeleteCache, &value));
bool actual_bool_value = false;
EXPECT_TRUE(value->GetAsBoolean(&actual_bool_value));
- EXPECT_EQ(expected::kDeleteCacheValue, actual_bool_value);
+ EXPECT_EQ(user::kDeleteCacheValue, actual_bool_value);
// Test getting a user set value overwriting a recommended value.
value = NULL;
ASSERT_TRUE(pref_value_store_->GetValue(prefs::kMaxTabs, &value));
int actual_int_value = -1;
EXPECT_TRUE(value->GetAsInteger(&actual_int_value));
- EXPECT_EQ(expected::kMaxTabsValue, actual_int_value);
+ EXPECT_EQ(user::kMaxTabsValue, actual_int_value);
// Test getting a recommended value.
value = NULL;
@@ -217,7 +248,7 @@
pref_value_store_->GetValue(prefs::kMaxTabs, &actual_value);
int int_value;
EXPECT_TRUE(actual_value->GetAsInteger(&int_value));
- EXPECT_EQ(expected::kMaxTabsValue, int_value);
+ EXPECT_EQ(user::kMaxTabsValue, int_value);
new_value = Value::CreateIntegerValue(1);
pref_value_store_->SetUserPrefValue(prefs::kMaxTabs, new_value);
Property changes on: chrome\browser\pref_value_store_unittest.cc
___________________________________________________________________
Added: svn:eol-style
+ LF
« no previous file with comments | « chrome/browser/pref_value_store.cc ('k') | chrome/browser/tab_contents/web_contents_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698