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

Side by Side Diff: chrome/browser/prefs/pref_value_store_unittest.cc

Issue 5915004: Introduce incognito preference settings. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixed whitespaces in mac files Created 9 years, 11 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <set> 5 #include <set>
6 #include <string> 6 #include <string>
7 7
8 #include "base/scoped_ptr.h" 8 #include "base/scoped_ptr.h"
9 #include "base/values.h" 9 #include "base/values.h"
10 #include "chrome/browser/browser_thread.h" 10 #include "chrome/browser/browser_thread.h"
11 #include "chrome/browser/policy/configuration_policy_pref_store.h" 11 #include "chrome/browser/policy/configuration_policy_pref_store.h"
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
102 // Create a fresh PrefValueStore. 102 // Create a fresh PrefValueStore.
103 pref_value_store_ = new PrefValueStore( 103 pref_value_store_ = new PrefValueStore(
104 managed_platform_pref_store_, 104 managed_platform_pref_store_,
105 device_management_pref_store_, 105 device_management_pref_store_,
106 extension_pref_store_, 106 extension_pref_store_,
107 command_line_pref_store_, 107 command_line_pref_store_,
108 user_pref_store_, 108 user_pref_store_,
109 recommended_pref_store_, 109 recommended_pref_store_,
110 default_pref_store_, 110 default_pref_store_,
111 &pref_notifier_); 111 &pref_notifier_);
112
113 // Register prefs with the PrefValueStore.
114 pref_value_store_->RegisterPreferenceType(prefs::kApplicationLocale,
115 Value::TYPE_STRING);
116 pref_value_store_->RegisterPreferenceType(prefs::kCurrentThemeID,
117 Value::TYPE_STRING);
118 pref_value_store_->RegisterPreferenceType(
119 prefs::kDefaultSearchProviderName,
120 Value::TYPE_STRING);
121 pref_value_store_->RegisterPreferenceType(prefs::kDeleteCache,
122 Value::TYPE_BOOLEAN);
123 pref_value_store_->RegisterPreferenceType(prefs::kHomePage,
124 Value::TYPE_STRING);
125 pref_value_store_->RegisterPreferenceType(prefs::kStabilityLaunchCount,
126 Value::TYPE_INTEGER);
127 pref_value_store_->RegisterPreferenceType(prefs::kRecommendedPref,
128 Value::TYPE_BOOLEAN);
129 pref_value_store_->RegisterPreferenceType(prefs::kSampleDict,
130 Value::TYPE_DICTIONARY);
131 pref_value_store_->RegisterPreferenceType(prefs::kSampleList,
132 Value::TYPE_LIST);
133 pref_value_store_->RegisterPreferenceType(prefs::kDefaultPref,
134 Value::TYPE_INTEGER);
135 pref_value_store_->RegisterPreferenceType(prefs::kProxyMode,
136 Value::TYPE_INTEGER);
137 } 112 }
138 113
139 // Creates a new dictionary and stores some sample user preferences 114 // Creates a new dictionary and stores some sample user preferences
140 // in it. 115 // in it.
141 void CreateUserPrefs() { 116 void CreateUserPrefs() {
142 user_pref_store_ = new TestingPrefStore; 117 user_pref_store_ = new TestingPrefStore;
143 user_pref_store_->SetBoolean(prefs::kDeleteCache, 118 user_pref_store_->SetBoolean(prefs::kDeleteCache,
144 user_pref::kDeleteCacheValue); 119 user_pref::kDeleteCacheValue);
145 user_pref_store_->SetInteger(prefs::kStabilityLaunchCount, 120 user_pref_store_->SetInteger(prefs::kStabilityLaunchCount,
146 user_pref::kStabilityLaunchCountValue); 121 user_pref::kStabilityLaunchCountValue);
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
217 sample_list->Set(0, Value::CreateIntegerValue(0)); 192 sample_list->Set(0, Value::CreateIntegerValue(0));
218 sample_list->Set(1, Value::CreateIntegerValue(1)); 193 sample_list->Set(1, Value::CreateIntegerValue(1));
219 sample_list->Set(2, Value::CreateIntegerValue(2)); 194 sample_list->Set(2, Value::CreateIntegerValue(2));
220 sample_list->Set(3, Value::CreateIntegerValue(3)); 195 sample_list->Set(3, Value::CreateIntegerValue(3));
221 return sample_list; 196 return sample_list;
222 } 197 }
223 198
224 MockPrefNotifier pref_notifier_; 199 MockPrefNotifier pref_notifier_;
225 scoped_refptr<PrefValueStore> pref_value_store_; 200 scoped_refptr<PrefValueStore> pref_value_store_;
226 201
227 // |PrefStore|s are owned by the |PrefValueStore|. 202 scoped_refptr<TestingPrefStore> managed_platform_pref_store_;
228 TestingPrefStore* managed_platform_pref_store_; 203 scoped_refptr<TestingPrefStore> device_management_pref_store_;
229 TestingPrefStore* device_management_pref_store_; 204 scoped_refptr<TestingPrefStore> extension_pref_store_;
230 TestingPrefStore* extension_pref_store_; 205 scoped_refptr<TestingPrefStore> command_line_pref_store_;
231 TestingPrefStore* command_line_pref_store_; 206 scoped_refptr<TestingPrefStore> user_pref_store_;
232 TestingPrefStore* user_pref_store_; 207 scoped_refptr<TestingPrefStore> recommended_pref_store_;
233 TestingPrefStore* recommended_pref_store_; 208 scoped_refptr<TestingPrefStore> default_pref_store_;
234 TestingPrefStore* default_pref_store_;
235 }; 209 };
236 210
237 TEST_F(PrefValueStoreTest, GetValue) { 211 TEST_F(PrefValueStoreTest, GetValue) {
238 Value* value; 212 Value* value;
239 213
240 // Test getting a managed platform value overwriting a user-defined and 214 // Test getting a managed platform value overwriting a user-defined and
241 // extension-defined value. 215 // extension-defined value.
242 value = NULL; 216 value = NULL;
243 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kHomePage, &value)); 217 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kHomePage, Value::TYPE_STRING,
218 &value));
244 std::string actual_str_value; 219 std::string actual_str_value;
245 EXPECT_TRUE(value->GetAsString(&actual_str_value)); 220 EXPECT_TRUE(value->GetAsString(&actual_str_value));
246 EXPECT_EQ(managed_platform_pref::kHomepageValue, actual_str_value); 221 EXPECT_EQ(managed_platform_pref::kHomepageValue, actual_str_value);
247 222
248 // Test getting a managed platform value overwriting a user-defined value. 223 // Test getting a managed platform value overwriting a user-defined value.
249 value = NULL; 224 value = NULL;
250 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kDefaultSearchProviderName, 225 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kDefaultSearchProviderName,
251 &value)); 226 Value::TYPE_STRING, &value));
252 EXPECT_TRUE(value->GetAsString(&actual_str_value)); 227 EXPECT_TRUE(value->GetAsString(&actual_str_value));
253 EXPECT_EQ(device_management_pref::kSearchProviderNameValue, 228 EXPECT_EQ(device_management_pref::kSearchProviderNameValue,
254 actual_str_value); 229 actual_str_value);
255 230
256 // Test getting an extension value overwriting a user-defined and 231 // Test getting an extension value overwriting a user-defined and
257 // command-line-defined value. 232 // command-line-defined value.
258 value = NULL; 233 value = NULL;
259 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kCurrentThemeID, &value)); 234 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kCurrentThemeID,
235 Value::TYPE_STRING, &value));
260 EXPECT_TRUE(value->GetAsString(&actual_str_value)); 236 EXPECT_TRUE(value->GetAsString(&actual_str_value));
261 EXPECT_EQ(extension_pref::kCurrentThemeIDValue, actual_str_value); 237 EXPECT_EQ(extension_pref::kCurrentThemeIDValue, actual_str_value);
262 238
263 // Test getting a command-line value overwriting a user-defined value. 239 // Test getting a command-line value overwriting a user-defined value.
264 value = NULL; 240 value = NULL;
265 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kApplicationLocale, &value)); 241 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kApplicationLocale,
242 Value::TYPE_STRING, &value));
266 EXPECT_TRUE(value->GetAsString(&actual_str_value)); 243 EXPECT_TRUE(value->GetAsString(&actual_str_value));
267 EXPECT_EQ(command_line_pref::kApplicationLocaleValue, actual_str_value); 244 EXPECT_EQ(command_line_pref::kApplicationLocaleValue, actual_str_value);
268 245
269 // Test getting a user-set value. 246 // Test getting a user-set value.
270 value = NULL; 247 value = NULL;
271 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kDeleteCache, &value)); 248 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kDeleteCache,
249 Value::TYPE_BOOLEAN, &value));
272 bool actual_bool_value = false; 250 bool actual_bool_value = false;
273 EXPECT_TRUE(value->GetAsBoolean(&actual_bool_value)); 251 EXPECT_TRUE(value->GetAsBoolean(&actual_bool_value));
274 EXPECT_EQ(user_pref::kDeleteCacheValue, actual_bool_value); 252 EXPECT_EQ(user_pref::kDeleteCacheValue, actual_bool_value);
275 253
276 // Test getting a user set value overwriting a recommended value. 254 // Test getting a user set value overwriting a recommended value.
277 value = NULL; 255 value = NULL;
278 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kStabilityLaunchCount, 256 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kStabilityLaunchCount,
279 &value)); 257 Value::TYPE_INTEGER, &value));
280 int actual_int_value = -1; 258 int actual_int_value = -1;
281 EXPECT_TRUE(value->GetAsInteger(&actual_int_value)); 259 EXPECT_TRUE(value->GetAsInteger(&actual_int_value));
282 EXPECT_EQ(user_pref::kStabilityLaunchCountValue, actual_int_value); 260 EXPECT_EQ(user_pref::kStabilityLaunchCountValue, actual_int_value);
283 261
284 // Test getting a recommended value. 262 // Test getting a recommended value.
285 value = NULL; 263 value = NULL;
286 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kRecommendedPref, &value)); 264 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kRecommendedPref,
265 Value::TYPE_BOOLEAN, &value));
287 actual_bool_value = false; 266 actual_bool_value = false;
288 EXPECT_TRUE(value->GetAsBoolean(&actual_bool_value)); 267 EXPECT_TRUE(value->GetAsBoolean(&actual_bool_value));
289 EXPECT_EQ(recommended_pref::kRecommendedPrefValue, actual_bool_value); 268 EXPECT_EQ(recommended_pref::kRecommendedPrefValue, actual_bool_value);
290 269
291 // Test getting a default value. 270 // Test getting a default value.
292 value = NULL; 271 value = NULL;
293 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kDefaultPref, &value)); 272 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kDefaultPref,
273 Value::TYPE_INTEGER, &value));
294 actual_int_value = -1; 274 actual_int_value = -1;
295 EXPECT_TRUE(value->GetAsInteger(&actual_int_value)); 275 EXPECT_TRUE(value->GetAsInteger(&actual_int_value));
296 EXPECT_EQ(default_pref::kDefaultValue, actual_int_value); 276 EXPECT_EQ(default_pref::kDefaultValue, actual_int_value);
297 277
298 // Test getting a preference value that the |PrefValueStore| 278 // Test getting a preference value that the |PrefValueStore|
299 // does not contain. 279 // does not contain.
300 FundamentalValue tmp_dummy_value(true); 280 FundamentalValue tmp_dummy_value(true);
301 Value* v_null = &tmp_dummy_value; 281 Value* v_null = &tmp_dummy_value;
302 ASSERT_FALSE(pref_value_store_->GetValue(prefs::kMissingPref, &v_null)); 282 ASSERT_FALSE(pref_value_store_->GetValue(prefs::kMissingPref,
283 Value::TYPE_STRING, &v_null));
303 ASSERT_TRUE(v_null == NULL); 284 ASSERT_TRUE(v_null == NULL);
304 } 285 }
305 286
306 // Make sure that if a preference changes type, so the wrong type is stored in
307 // the user pref file, it uses the correct fallback value instead.
308 TEST_F(PrefValueStoreTest, GetValueChangedType) {
309 EXPECT_CALL(pref_notifier_, OnPreferenceChanged(_)).Times(AnyNumber());
310
311 // Check falling back to a recommended value.
312 user_pref_store_->SetString(prefs::kStabilityLaunchCount,
313 "not an integer");
314 Value* value = NULL;
315 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kStabilityLaunchCount,
316 &value));
317 ASSERT_TRUE(value != NULL);
318 ASSERT_EQ(Value::TYPE_INTEGER, value->GetType());
319 int actual_int_value = -1;
320 EXPECT_TRUE(value->GetAsInteger(&actual_int_value));
321 EXPECT_EQ(recommended_pref::kStabilityLaunchCountValue, actual_int_value);
322
323 // Check falling back multiple times, to a default string.
324 default_pref_store_->SetString(prefs::kHomePage,
325 default_pref::kHomepageValue);
326 managed_platform_pref_store_->SetInteger(prefs::kHomePage, 1);
327 device_management_pref_store_->SetInteger(prefs::kHomePage, 1);
328 extension_pref_store_->SetInteger(prefs::kHomePage, 1);
329 command_line_pref_store_->SetInteger(prefs::kHomePage, 1);
330 user_pref_store_->SetInteger(prefs::kHomePage, 1);
331 recommended_pref_store_->SetInteger(prefs::kHomePage, 1);
332
333 value = NULL;
334 ASSERT_TRUE(pref_value_store_->GetValue(prefs::kHomePage, &value));
335 ASSERT_TRUE(value != NULL);
336 ASSERT_EQ(Value::TYPE_STRING, value->GetType());
337 std::string actual_str_value;
338 EXPECT_TRUE(value->GetAsString(&actual_str_value));
339 EXPECT_EQ(default_pref::kHomepageValue, actual_str_value);
340 }
341
342 TEST_F(PrefValueStoreTest, HasPrefPath) {
343 // Managed Platform preference
344 EXPECT_TRUE(pref_value_store_->HasPrefPath(prefs::kHomePage));
345 // Device management preference
346 EXPECT_TRUE(pref_value_store_->HasPrefPath(
347 prefs::kDefaultSearchProviderName));
348 // Extension preference
349 EXPECT_TRUE(pref_value_store_->HasPrefPath(prefs::kCurrentThemeID));
350 // User preference
351 EXPECT_TRUE(pref_value_store_->HasPrefPath(prefs::kDeleteCache));
352 // Recommended preference
353 EXPECT_TRUE(pref_value_store_->HasPrefPath(prefs::kRecommendedPref));
354 // Default preference
355 EXPECT_FALSE(pref_value_store_->HasPrefPath(prefs::kDefaultPref));
356 // Unknown preference
357 EXPECT_FALSE(pref_value_store_->HasPrefPath(prefs::kMissingPref));
358 }
359
360 TEST_F(PrefValueStoreTest, PrefChanges) { 287 TEST_F(PrefValueStoreTest, PrefChanges) {
361 // Setup. 288 // Setup.
362 EXPECT_CALL(pref_notifier_, OnPreferenceChanged(_)).Times(AnyNumber()); 289 EXPECT_CALL(pref_notifier_, OnPreferenceChanged(_)).Times(AnyNumber());
363 const char managed_platform_pref_path[] = "managed_platform_pref"; 290 const char managed_platform_pref_path[] = "managed_platform_pref";
364 pref_value_store_->RegisterPreferenceType(managed_platform_pref_path,
365 Value::TYPE_STRING);
366 managed_platform_pref_store_->SetString(managed_platform_pref_path, 291 managed_platform_pref_store_->SetString(managed_platform_pref_path,
367 "managed value"); 292 "managed value");
368 const char user_pref_path[] = "user_pref"; 293 const char user_pref_path[] = "user_pref";
369 pref_value_store_->RegisterPreferenceType(user_pref_path, Value::TYPE_STRING);
370 user_pref_store_->SetString(user_pref_path, "user value"); 294 user_pref_store_->SetString(user_pref_path, "user value");
371 const char default_pref_path[] = "default_pref"; 295 const char default_pref_path[] = "default_pref";
372 pref_value_store_->RegisterPreferenceType(default_pref_path,
373 Value::TYPE_STRING);
374 default_pref_store_->SetString(default_pref_path, "default value"); 296 default_pref_store_->SetString(default_pref_path, "default value");
375 Mock::VerifyAndClearExpectations(&pref_notifier_); 297 Mock::VerifyAndClearExpectations(&pref_notifier_);
376 298
377 // Check pref controlled by highest-priority store. 299 // Check pref controlled by highest-priority store.
378 EXPECT_CALL(pref_notifier_, OnPreferenceChanged(managed_platform_pref_path)); 300 EXPECT_CALL(pref_notifier_, OnPreferenceChanged(managed_platform_pref_path));
379 managed_platform_pref_store_->NotifyPrefValueChanged( 301 managed_platform_pref_store_->NotifyPrefValueChanged(
380 managed_platform_pref_path); 302 managed_platform_pref_path);
381 Mock::VerifyAndClearExpectations(&pref_notifier_); 303 Mock::VerifyAndClearExpectations(&pref_notifier_);
382 304
383 EXPECT_CALL(pref_notifier_, OnPreferenceChanged(_)).Times(0); 305 EXPECT_CALL(pref_notifier_, OnPreferenceChanged(_)).Times(0);
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
418 Mock::VerifyAndClearExpectations(&pref_notifier_); 340 Mock::VerifyAndClearExpectations(&pref_notifier_);
419 341
420 // The notification should only be triggered after the last store is done. 342 // The notification should only be triggered after the last store is done.
421 EXPECT_CALL(pref_notifier_, OnInitializationCompleted()).Times(1); 343 EXPECT_CALL(pref_notifier_, OnInitializationCompleted()).Times(1);
422 user_pref_store_->SetInitializationCompleted(); 344 user_pref_store_->SetInitializationCompleted();
423 Mock::VerifyAndClearExpectations(&pref_notifier_); 345 Mock::VerifyAndClearExpectations(&pref_notifier_);
424 } 346 }
425 347
426 TEST_F(PrefValueStoreTest, PrefValueInManagedPlatformStore) { 348 TEST_F(PrefValueStoreTest, PrefValueInManagedPlatformStore) {
427 // Test a managed platform preference. 349 // Test a managed platform preference.
428 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kHomePage));
429 EXPECT_TRUE(pref_value_store_->PrefValueInManagedPlatformStore( 350 EXPECT_TRUE(pref_value_store_->PrefValueInManagedPlatformStore(
430 prefs::kHomePage)); 351 prefs::kHomePage));
431 352
432 // Test a device management preference. 353 // Test a device management preference.
433 ASSERT_TRUE(pref_value_store_->HasPrefPath(
434 prefs::kDefaultSearchProviderName));
435 EXPECT_TRUE(pref_value_store_->PrefValueInDeviceManagementStore( 354 EXPECT_TRUE(pref_value_store_->PrefValueInDeviceManagementStore(
436 prefs::kDefaultSearchProviderName)); 355 prefs::kDefaultSearchProviderName));
437 356
438 // Test an extension preference. 357 // Test an extension preference.
439 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kCurrentThemeID));
440 EXPECT_FALSE(pref_value_store_->PrefValueInManagedPlatformStore( 358 EXPECT_FALSE(pref_value_store_->PrefValueInManagedPlatformStore(
441 prefs::kCurrentThemeID)); 359 prefs::kCurrentThemeID));
442 360
443 // Test a command-line preference. 361 // Test a command-line preference.
444 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kApplicationLocale));
445 EXPECT_FALSE(pref_value_store_->PrefValueInManagedPlatformStore( 362 EXPECT_FALSE(pref_value_store_->PrefValueInManagedPlatformStore(
446 prefs::kApplicationLocale)); 363 prefs::kApplicationLocale));
447 364
448 // Test a user preference. 365 // Test a user preference.
449 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kStabilityLaunchCount));
450 EXPECT_FALSE(pref_value_store_->PrefValueInManagedPlatformStore( 366 EXPECT_FALSE(pref_value_store_->PrefValueInManagedPlatformStore(
451 prefs::kStabilityLaunchCount)); 367 prefs::kStabilityLaunchCount));
452 368
453 // Test a preference from the recommended pref store. 369 // Test a preference from the recommended pref store.
454 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kRecommendedPref));
455 EXPECT_FALSE(pref_value_store_->PrefValueInManagedPlatformStore( 370 EXPECT_FALSE(pref_value_store_->PrefValueInManagedPlatformStore(
456 prefs::kRecommendedPref)); 371 prefs::kRecommendedPref));
457 372
458 // Test a preference from the default pref store. 373 // Test a preference from the default pref store.
459 ASSERT_FALSE(pref_value_store_->HasPrefPath(prefs::kDefaultPref));
460 EXPECT_FALSE(pref_value_store_->PrefValueInManagedPlatformStore( 374 EXPECT_FALSE(pref_value_store_->PrefValueInManagedPlatformStore(
461 prefs::kDefaultPref)); 375 prefs::kDefaultPref));
462 376
463 // Test a preference for which the PrefValueStore does not contain a value. 377 // Test a preference for which the PrefValueStore does not contain a value.
464 ASSERT_FALSE(pref_value_store_->HasPrefPath(prefs::kMissingPref));
465 EXPECT_FALSE(pref_value_store_->PrefValueInManagedPlatformStore( 378 EXPECT_FALSE(pref_value_store_->PrefValueInManagedPlatformStore(
466 prefs::kMissingPref)); 379 prefs::kMissingPref));
467 } 380 }
468 381
469 TEST_F(PrefValueStoreTest, PrefValueInExtensionStore) { 382 TEST_F(PrefValueStoreTest, PrefValueInExtensionStore) {
470 // Test a managed platform preference. 383 // Test a managed platform preference.
471 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kHomePage));
472 EXPECT_TRUE(pref_value_store_->PrefValueInExtensionStore(prefs::kHomePage)); 384 EXPECT_TRUE(pref_value_store_->PrefValueInExtensionStore(prefs::kHomePage));
473 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore( 385 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore(
474 prefs::kHomePage)); 386 prefs::kHomePage));
475 387
476 // Test a device management preference. 388 // Test a device management preference.
477 ASSERT_TRUE(pref_value_store_->HasPrefPath(
478 prefs::kDefaultSearchProviderName));
479 EXPECT_TRUE(pref_value_store_->PrefValueInExtensionStore( 389 EXPECT_TRUE(pref_value_store_->PrefValueInExtensionStore(
480 prefs::kDefaultSearchProviderName)); 390 prefs::kDefaultSearchProviderName));
481 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore( 391 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore(
482 prefs::kDefaultSearchProviderName)); 392 prefs::kDefaultSearchProviderName));
483 393
484 // Test an extension preference. 394 // Test an extension preference.
485 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kCurrentThemeID));
486 EXPECT_TRUE(pref_value_store_->PrefValueInExtensionStore( 395 EXPECT_TRUE(pref_value_store_->PrefValueInExtensionStore(
487 prefs::kCurrentThemeID)); 396 prefs::kCurrentThemeID));
488 EXPECT_TRUE(pref_value_store_->PrefValueFromExtensionStore( 397 EXPECT_TRUE(pref_value_store_->PrefValueFromExtensionStore(
489 prefs::kCurrentThemeID)); 398 prefs::kCurrentThemeID));
490 399
491 // Test a command-line preference. 400 // Test a command-line preference.
492 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kApplicationLocale));
493 EXPECT_FALSE(pref_value_store_->PrefValueInExtensionStore( 401 EXPECT_FALSE(pref_value_store_->PrefValueInExtensionStore(
494 prefs::kApplicationLocale)); 402 prefs::kApplicationLocale));
495 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore( 403 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore(
496 prefs::kApplicationLocale)); 404 prefs::kApplicationLocale));
497 405
498 // Test a user preference. 406 // Test a user preference.
499 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kStabilityLaunchCount));
500 EXPECT_FALSE(pref_value_store_->PrefValueInExtensionStore( 407 EXPECT_FALSE(pref_value_store_->PrefValueInExtensionStore(
501 prefs::kStabilityLaunchCount)); 408 prefs::kStabilityLaunchCount));
502 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore( 409 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore(
503 prefs::kStabilityLaunchCount)); 410 prefs::kStabilityLaunchCount));
504 411
505 // Test a preference from the recommended pref store. 412 // Test a preference from the recommended pref store.
506 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kRecommendedPref));
507 EXPECT_FALSE(pref_value_store_->PrefValueInExtensionStore( 413 EXPECT_FALSE(pref_value_store_->PrefValueInExtensionStore(
508 prefs::kRecommendedPref)); 414 prefs::kRecommendedPref));
509 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore( 415 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore(
510 prefs::kRecommendedPref)); 416 prefs::kRecommendedPref));
511 417
512 // Test a preference from the default pref store. 418 // Test a preference from the default pref store.
513 ASSERT_FALSE(pref_value_store_->HasPrefPath(prefs::kDefaultPref));
514 EXPECT_FALSE(pref_value_store_->PrefValueInExtensionStore( 419 EXPECT_FALSE(pref_value_store_->PrefValueInExtensionStore(
515 prefs::kDefaultPref)); 420 prefs::kDefaultPref));
516 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore( 421 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore(
517 prefs::kDefaultPref)); 422 prefs::kDefaultPref));
518 423
519 // Test a preference for which the PrefValueStore does not contain a value. 424 // Test a preference for which the PrefValueStore does not contain a value.
520 ASSERT_FALSE(pref_value_store_->HasPrefPath(prefs::kMissingPref));
521 EXPECT_FALSE(pref_value_store_->PrefValueInExtensionStore( 425 EXPECT_FALSE(pref_value_store_->PrefValueInExtensionStore(
522 prefs::kMissingPref)); 426 prefs::kMissingPref));
523 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore( 427 EXPECT_FALSE(pref_value_store_->PrefValueFromExtensionStore(
524 prefs::kMissingPref)); 428 prefs::kMissingPref));
525 } 429 }
526 430
527 TEST_F(PrefValueStoreTest, PrefValueInUserStore) { 431 TEST_F(PrefValueStoreTest, PrefValueInUserStore) {
528 // Test a managed platform preference. 432 // Test a managed platform preference.
529 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kHomePage));
530 EXPECT_TRUE(pref_value_store_->PrefValueInUserStore(prefs::kHomePage)); 433 EXPECT_TRUE(pref_value_store_->PrefValueInUserStore(prefs::kHomePage));
531 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore(prefs::kHomePage)); 434 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore(prefs::kHomePage));
532 435
533 // Test a device management preference. 436 // Test a device management preference.
534 ASSERT_TRUE(pref_value_store_->HasPrefPath(
535 prefs::kDefaultSearchProviderName));
536 EXPECT_TRUE(pref_value_store_->PrefValueInUserStore( 437 EXPECT_TRUE(pref_value_store_->PrefValueInUserStore(
537 prefs::kDefaultSearchProviderName)); 438 prefs::kDefaultSearchProviderName));
538 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore( 439 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore(
539 prefs::kDefaultSearchProviderName)); 440 prefs::kDefaultSearchProviderName));
540 441
541 // Test an extension preference. 442 // Test an extension preference.
542 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kCurrentThemeID));
543 EXPECT_TRUE(pref_value_store_->PrefValueInUserStore( 443 EXPECT_TRUE(pref_value_store_->PrefValueInUserStore(
544 prefs::kCurrentThemeID)); 444 prefs::kCurrentThemeID));
545 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore( 445 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore(
546 prefs::kCurrentThemeID)); 446 prefs::kCurrentThemeID));
547 447
548 // Test a command-line preference. 448 // Test a command-line preference.
549 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kApplicationLocale));
550 EXPECT_TRUE(pref_value_store_->PrefValueInUserStore( 449 EXPECT_TRUE(pref_value_store_->PrefValueInUserStore(
551 prefs::kApplicationLocale)); 450 prefs::kApplicationLocale));
552 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore( 451 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore(
553 prefs::kApplicationLocale)); 452 prefs::kApplicationLocale));
554 453
555 // Test a user preference. 454 // Test a user preference.
556 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kStabilityLaunchCount));
557 EXPECT_TRUE(pref_value_store_->PrefValueInUserStore( 455 EXPECT_TRUE(pref_value_store_->PrefValueInUserStore(
558 prefs::kStabilityLaunchCount)); 456 prefs::kStabilityLaunchCount));
559 EXPECT_TRUE(pref_value_store_->PrefValueFromUserStore( 457 EXPECT_TRUE(pref_value_store_->PrefValueFromUserStore(
560 prefs::kStabilityLaunchCount)); 458 prefs::kStabilityLaunchCount));
561 459
562 // Test a preference from the recommended pref store. 460 // Test a preference from the recommended pref store.
563 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kRecommendedPref));
564 EXPECT_FALSE(pref_value_store_->PrefValueInUserStore( 461 EXPECT_FALSE(pref_value_store_->PrefValueInUserStore(
565 prefs::kRecommendedPref)); 462 prefs::kRecommendedPref));
566 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore( 463 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore(
567 prefs::kRecommendedPref)); 464 prefs::kRecommendedPref));
568 465
569 // Test a preference from the default pref store. 466 // Test a preference from the default pref store.
570 ASSERT_FALSE(pref_value_store_->HasPrefPath(prefs::kDefaultPref));
571 EXPECT_FALSE(pref_value_store_->PrefValueInUserStore(prefs::kDefaultPref)); 467 EXPECT_FALSE(pref_value_store_->PrefValueInUserStore(prefs::kDefaultPref));
572 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore(prefs::kDefaultPref)); 468 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore(prefs::kDefaultPref));
573 469
574 // Test a preference for which the PrefValueStore does not contain a value. 470 // Test a preference for which the PrefValueStore does not contain a value.
575 ASSERT_FALSE(pref_value_store_->HasPrefPath(prefs::kMissingPref));
576 EXPECT_FALSE(pref_value_store_->PrefValueInUserStore(prefs::kMissingPref)); 471 EXPECT_FALSE(pref_value_store_->PrefValueInUserStore(prefs::kMissingPref));
577 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore(prefs::kMissingPref)); 472 EXPECT_FALSE(pref_value_store_->PrefValueFromUserStore(prefs::kMissingPref));
578 } 473 }
579 474
580 TEST_F(PrefValueStoreTest, PrefValueFromDefaultStore) { 475 TEST_F(PrefValueStoreTest, PrefValueFromDefaultStore) {
581 // Test a managed platform preference. 476 // Test a managed platform preference.
582 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kHomePage));
583 EXPECT_FALSE(pref_value_store_->PrefValueFromDefaultStore(prefs::kHomePage)); 477 EXPECT_FALSE(pref_value_store_->PrefValueFromDefaultStore(prefs::kHomePage));
584 478
585 // Test a device management preference. 479 // Test a device management preference.
586 ASSERT_TRUE(pref_value_store_->HasPrefPath(
587 prefs::kDefaultSearchProviderName));
588 EXPECT_FALSE(pref_value_store_->PrefValueFromDefaultStore( 480 EXPECT_FALSE(pref_value_store_->PrefValueFromDefaultStore(
589 prefs::kDefaultSearchProviderName)); 481 prefs::kDefaultSearchProviderName));
590 482
591 // Test an extension preference. 483 // Test an extension preference.
592 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kCurrentThemeID));
593 EXPECT_FALSE(pref_value_store_->PrefValueFromDefaultStore( 484 EXPECT_FALSE(pref_value_store_->PrefValueFromDefaultStore(
594 prefs::kCurrentThemeID)); 485 prefs::kCurrentThemeID));
595 486
596 // Test a command-line preference. 487 // Test a command-line preference.
597 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kApplicationLocale));
598 EXPECT_FALSE(pref_value_store_->PrefValueFromDefaultStore( 488 EXPECT_FALSE(pref_value_store_->PrefValueFromDefaultStore(
599 prefs::kApplicationLocale)); 489 prefs::kApplicationLocale));
600 490
601 // Test a user preference. 491 // Test a user preference.
602 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kStabilityLaunchCount));
603 EXPECT_FALSE(pref_value_store_->PrefValueFromDefaultStore( 492 EXPECT_FALSE(pref_value_store_->PrefValueFromDefaultStore(
604 prefs::kStabilityLaunchCount)); 493 prefs::kStabilityLaunchCount));
605 494
606 // Test a preference from the recommended pref store. 495 // Test a preference from the recommended pref store.
607 ASSERT_TRUE(pref_value_store_->HasPrefPath(prefs::kRecommendedPref));
608 EXPECT_FALSE(pref_value_store_->PrefValueFromDefaultStore( 496 EXPECT_FALSE(pref_value_store_->PrefValueFromDefaultStore(
609 prefs::kRecommendedPref)); 497 prefs::kRecommendedPref));
610 498
611 // Test a preference from the default pref store. 499 // Test a preference from the default pref store.
612 ASSERT_FALSE(pref_value_store_->HasPrefPath(prefs::kDefaultPref));
613 EXPECT_TRUE( 500 EXPECT_TRUE(
614 pref_value_store_->PrefValueFromDefaultStore(prefs::kDefaultPref)); 501 pref_value_store_->PrefValueFromDefaultStore(prefs::kDefaultPref));
615 502
616 // Test a preference for which the PrefValueStore does not contain a value. 503 // Test a preference for which the PrefValueStore does not contain a value.
617 ASSERT_FALSE(pref_value_store_->HasPrefPath(prefs::kMissingPref));
618 EXPECT_FALSE( 504 EXPECT_FALSE(
619 pref_value_store_->PrefValueFromDefaultStore(prefs::kMissingPref)); 505 pref_value_store_->PrefValueFromDefaultStore(prefs::kMissingPref));
620 } 506 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698