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

Side by Side Diff: chrome/browser/extensions/extension_prefs_unittest.cc

Issue 12212047: Linux/ChromeOS Chromium style checker cleanup, chrome/browser/extensions edition. (Closed) Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: Created 7 years, 10 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) 2012 The Chromium Authors. All rights reserved. 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 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 "extension_prefs_unittest.h" 5 #include "extension_prefs_unittest.h"
6 6
7 #include "base/basictypes.h" 7 #include "base/basictypes.h"
8 #include "base/files/scoped_temp_dir.h" 8 #include "base/files/scoped_temp_dir.h"
9 #include "base/path_service.h" 9 #include "base/path_service.h"
10 #include "base/prefs/public/pref_change_registrar.h" 10 #include "base/prefs/public/pref_change_registrar.h"
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 message_loop_.RunUntilIdle(); 77 message_loop_.RunUntilIdle();
78 } 78 }
79 79
80 // Tests the LastPingDay/SetLastPingDay functions. 80 // Tests the LastPingDay/SetLastPingDay functions.
81 class ExtensionPrefsLastPingDay : public ExtensionPrefsTest { 81 class ExtensionPrefsLastPingDay : public ExtensionPrefsTest {
82 public: 82 public:
83 ExtensionPrefsLastPingDay() 83 ExtensionPrefsLastPingDay()
84 : extension_time_(Time::Now() - TimeDelta::FromHours(4)), 84 : extension_time_(Time::Now() - TimeDelta::FromHours(4)),
85 blacklist_time_(Time::Now() - TimeDelta::FromHours(2)) {} 85 blacklist_time_(Time::Now() - TimeDelta::FromHours(2)) {}
86 86
87 virtual void Initialize() { 87 virtual void Initialize() OVERRIDE {
88 extension_id_ = prefs_.AddExtensionAndReturnId("last_ping_day"); 88 extension_id_ = prefs_.AddExtensionAndReturnId("last_ping_day");
89 EXPECT_TRUE(prefs()->LastPingDay(extension_id_).is_null()); 89 EXPECT_TRUE(prefs()->LastPingDay(extension_id_).is_null());
90 prefs()->SetLastPingDay(extension_id_, extension_time_); 90 prefs()->SetLastPingDay(extension_id_, extension_time_);
91 prefs()->SetBlacklistLastPingDay(blacklist_time_); 91 prefs()->SetBlacklistLastPingDay(blacklist_time_);
92 } 92 }
93 93
94 virtual void Verify() { 94 virtual void Verify() OVERRIDE {
95 Time result = prefs()->LastPingDay(extension_id_); 95 Time result = prefs()->LastPingDay(extension_id_);
96 EXPECT_FALSE(result.is_null()); 96 EXPECT_FALSE(result.is_null());
97 EXPECT_TRUE(result == extension_time_); 97 EXPECT_TRUE(result == extension_time_);
98 result = prefs()->BlacklistLastPingDay(); 98 result = prefs()->BlacklistLastPingDay();
99 EXPECT_FALSE(result.is_null()); 99 EXPECT_FALSE(result.is_null());
100 EXPECT_TRUE(result == blacklist_time_); 100 EXPECT_TRUE(result == blacklist_time_);
101 } 101 }
102 102
103 private: 103 private:
104 Time extension_time_; 104 Time extension_time_;
(...skipping 10 matching lines...) Expand all
115 permission.pref_id = gallery; 115 permission.pref_id = gallery;
116 permission.has_permission = has_access; 116 permission.has_permission = has_access;
117 vector->push_back(permission); 117 vector->push_back(permission);
118 } 118 }
119 119
120 } // namspace 120 } // namspace
121 121
122 // Test the MediaGalleries permissions functions. 122 // Test the MediaGalleries permissions functions.
123 class MediaGalleriesPermissions : public ExtensionPrefsTest { 123 class MediaGalleriesPermissions : public ExtensionPrefsTest {
124 public: 124 public:
125 virtual void Initialize() { 125 virtual void Initialize() OVERRIDE {
126 extension1_id_ = prefs_.AddExtensionAndReturnId("test1"); 126 extension1_id_ = prefs_.AddExtensionAndReturnId("test1");
127 extension2_id_ = prefs_.AddExtensionAndReturnId("test2"); 127 extension2_id_ = prefs_.AddExtensionAndReturnId("test2");
128 extension3_id_ = prefs_.AddExtensionAndReturnId("test3"); 128 extension3_id_ = prefs_.AddExtensionAndReturnId("test3");
129 // Id4 isn't used to ensure that an empty permission list is ok. 129 // Id4 isn't used to ensure that an empty permission list is ok.
130 extension4_id_ = prefs_.AddExtensionAndReturnId("test4"); 130 extension4_id_ = prefs_.AddExtensionAndReturnId("test4");
131 Verify(); 131 Verify();
132 132
133 prefs()->SetMediaGalleryPermission(extension1_id_, 1, false); 133 prefs()->SetMediaGalleryPermission(extension1_id_, 1, false);
134 AddGalleryPermission(1, false, &extension1_expectation_); 134 AddGalleryPermission(1, false, &extension1_expectation_);
135 Verify(); 135 Verify();
(...skipping 21 matching lines...) Expand all
157 prefs()->RemoveMediaGalleryPermissions(3); 157 prefs()->RemoveMediaGalleryPermissions(3);
158 extension2_expectation_.erase(extension2_expectation_.begin() + 1); 158 extension2_expectation_.erase(extension2_expectation_.begin() + 1);
159 extension3_expectation_.erase(extension3_expectation_.begin()); 159 extension3_expectation_.erase(extension3_expectation_.begin());
160 Verify(); 160 Verify();
161 161
162 prefs()->UnsetMediaGalleryPermission(extension1_id_, 1); 162 prefs()->UnsetMediaGalleryPermission(extension1_id_, 1);
163 extension1_expectation_.erase(extension1_expectation_.begin()); 163 extension1_expectation_.erase(extension1_expectation_.begin());
164 Verify(); 164 Verify();
165 } 165 }
166 166
167 virtual void Verify() { 167 virtual void Verify() OVERRIDE {
168 struct TestData { 168 struct TestData {
169 std::string* id; 169 std::string* id;
170 std::vector<chrome::MediaGalleryPermission>* expectation; 170 std::vector<chrome::MediaGalleryPermission>* expectation;
171 }; 171 };
172 172
173 const TestData test_data[] = {{&extension1_id_, &extension1_expectation_}, 173 const TestData test_data[] = {{&extension1_id_, &extension1_expectation_},
174 {&extension2_id_, &extension2_expectation_}, 174 {&extension2_id_, &extension2_expectation_},
175 {&extension3_id_, &extension3_expectation_}, 175 {&extension3_id_, &extension3_expectation_},
176 {&extension4_id_, &extension4_expectation_}}; 176 {&extension4_id_, &extension4_expectation_}};
177 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(test_data); i++) { 177 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(test_data); i++) {
(...skipping 21 matching lines...) Expand all
199 std::vector<chrome::MediaGalleryPermission> extension1_expectation_; 199 std::vector<chrome::MediaGalleryPermission> extension1_expectation_;
200 std::vector<chrome::MediaGalleryPermission> extension2_expectation_; 200 std::vector<chrome::MediaGalleryPermission> extension2_expectation_;
201 std::vector<chrome::MediaGalleryPermission> extension3_expectation_; 201 std::vector<chrome::MediaGalleryPermission> extension3_expectation_;
202 std::vector<chrome::MediaGalleryPermission> extension4_expectation_; 202 std::vector<chrome::MediaGalleryPermission> extension4_expectation_;
203 }; 203 };
204 TEST_F(MediaGalleriesPermissions, MediaGalleries) {} 204 TEST_F(MediaGalleriesPermissions, MediaGalleries) {}
205 205
206 // Tests the GetToolbarOrder/SetToolbarOrder functions. 206 // Tests the GetToolbarOrder/SetToolbarOrder functions.
207 class ExtensionPrefsToolbarOrder : public ExtensionPrefsTest { 207 class ExtensionPrefsToolbarOrder : public ExtensionPrefsTest {
208 public: 208 public:
209 virtual void Initialize() { 209 virtual void Initialize() OVERRIDE {
210 list_.push_back(prefs_.AddExtensionAndReturnId("1")); 210 list_.push_back(prefs_.AddExtensionAndReturnId("1"));
211 list_.push_back(prefs_.AddExtensionAndReturnId("2")); 211 list_.push_back(prefs_.AddExtensionAndReturnId("2"));
212 list_.push_back(prefs_.AddExtensionAndReturnId("3")); 212 list_.push_back(prefs_.AddExtensionAndReturnId("3"));
213 std::vector<std::string> before_list = prefs()->GetToolbarOrder(); 213 std::vector<std::string> before_list = prefs()->GetToolbarOrder();
214 EXPECT_TRUE(before_list.empty()); 214 EXPECT_TRUE(before_list.empty());
215 prefs()->SetToolbarOrder(list_); 215 prefs()->SetToolbarOrder(list_);
216 } 216 }
217 217
218 virtual void Verify() { 218 virtual void Verify() OVERRIDE {
219 std::vector<std::string> result = prefs()->GetToolbarOrder(); 219 std::vector<std::string> result = prefs()->GetToolbarOrder();
220 ASSERT_EQ(list_.size(), result.size()); 220 ASSERT_EQ(list_.size(), result.size());
221 for (size_t i = 0; i < list_.size(); i++) { 221 for (size_t i = 0; i < list_.size(); i++) {
222 EXPECT_EQ(list_[i], result[i]); 222 EXPECT_EQ(list_[i], result[i]);
223 } 223 }
224 } 224 }
225 225
226 private: 226 private:
227 std::vector<std::string> list_; 227 std::vector<std::string> list_;
228 }; 228 };
229 TEST_F(ExtensionPrefsToolbarOrder, ToolbarOrder) {} 229 TEST_F(ExtensionPrefsToolbarOrder, ToolbarOrder) {}
230 230
231 231
232 // Tests the IsExtensionDisabled/SetExtensionState functions. 232 // Tests the IsExtensionDisabled/SetExtensionState functions.
233 class ExtensionPrefsExtensionState : public ExtensionPrefsTest { 233 class ExtensionPrefsExtensionState : public ExtensionPrefsTest {
234 public: 234 public:
235 virtual void Initialize() { 235 virtual void Initialize() OVERRIDE {
236 extension = prefs_.AddExtension("test"); 236 extension = prefs_.AddExtension("test");
237 prefs()->SetExtensionState(extension->id(), Extension::DISABLED); 237 prefs()->SetExtensionState(extension->id(), Extension::DISABLED);
238 } 238 }
239 239
240 virtual void Verify() { 240 virtual void Verify() OVERRIDE {
241 EXPECT_TRUE(prefs()->IsExtensionDisabled(extension->id())); 241 EXPECT_TRUE(prefs()->IsExtensionDisabled(extension->id()));
242 } 242 }
243 243
244 private: 244 private:
245 scoped_refptr<Extension> extension; 245 scoped_refptr<Extension> extension;
246 }; 246 };
247 TEST_F(ExtensionPrefsExtensionState, ExtensionState) {} 247 TEST_F(ExtensionPrefsExtensionState, ExtensionState) {}
248 248
249 class ExtensionPrefsEscalatePermissions : public ExtensionPrefsTest { 249 class ExtensionPrefsEscalatePermissions : public ExtensionPrefsTest {
250 public: 250 public:
251 virtual void Initialize() { 251 virtual void Initialize() OVERRIDE {
252 extension = prefs_.AddExtension("test"); 252 extension = prefs_.AddExtension("test");
253 prefs()->SetDidExtensionEscalatePermissions(extension.get(), true); 253 prefs()->SetDidExtensionEscalatePermissions(extension.get(), true);
254 } 254 }
255 255
256 virtual void Verify() { 256 virtual void Verify() OVERRIDE {
257 EXPECT_TRUE(prefs()->DidExtensionEscalatePermissions(extension->id())); 257 EXPECT_TRUE(prefs()->DidExtensionEscalatePermissions(extension->id()));
258 } 258 }
259 259
260 private: 260 private:
261 scoped_refptr<Extension> extension; 261 scoped_refptr<Extension> extension;
262 }; 262 };
263 TEST_F(ExtensionPrefsEscalatePermissions, EscalatePermissions) {} 263 TEST_F(ExtensionPrefsEscalatePermissions, EscalatePermissions) {}
264 264
265 // Tests the AddGrantedPermissions / GetGrantedPermissions functions. 265 // Tests the AddGrantedPermissions / GetGrantedPermissions functions.
266 class ExtensionPrefsGrantedPermissions : public ExtensionPrefsTest { 266 class ExtensionPrefsGrantedPermissions : public ExtensionPrefsTest {
267 public: 267 public:
268 virtual void Initialize() { 268 virtual void Initialize() OVERRIDE {
269 const APIPermissionInfo* permission_info = 269 const APIPermissionInfo* permission_info =
270 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket); 270 PermissionsInfo::GetInstance()->GetByID(APIPermission::kSocket);
271 271
272 extension_id_ = prefs_.AddExtensionAndReturnId("test"); 272 extension_id_ = prefs_.AddExtensionAndReturnId("test");
273 273
274 api_perm_set1_.insert(APIPermission::kTab); 274 api_perm_set1_.insert(APIPermission::kTab);
275 api_perm_set1_.insert(APIPermission::kBookmark); 275 api_perm_set1_.insert(APIPermission::kBookmark);
276 scoped_ptr<APIPermission> permission( 276 scoped_ptr<APIPermission> permission(
277 permission_info->CreateAPIPermission()); 277 permission_info->CreateAPIPermission());
278 { 278 {
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
378 EXPECT_EQ(ehost_permissions_, 378 EXPECT_EQ(ehost_permissions_,
379 granted_permissions->explicit_hosts()); 379 granted_permissions->explicit_hosts());
380 EXPECT_EQ(shost_permissions_, 380 EXPECT_EQ(shost_permissions_,
381 granted_permissions->scriptable_hosts()); 381 granted_permissions->scriptable_hosts());
382 effective_permissions_.ClearPatterns(); 382 effective_permissions_.ClearPatterns();
383 URLPatternSet::CreateUnion(ehost_permissions_, shost_permissions_, 383 URLPatternSet::CreateUnion(ehost_permissions_, shost_permissions_,
384 &effective_permissions_); 384 &effective_permissions_);
385 EXPECT_EQ(effective_permissions_, granted_permissions->effective_hosts()); 385 EXPECT_EQ(effective_permissions_, granted_permissions->effective_hosts());
386 } 386 }
387 387
388 virtual void Verify() { 388 virtual void Verify() OVERRIDE {
389 scoped_refptr<PermissionSet> permissions( 389 scoped_refptr<PermissionSet> permissions(
390 prefs()->GetGrantedPermissions(extension_id_)); 390 prefs()->GetGrantedPermissions(extension_id_));
391 EXPECT_TRUE(permissions.get()); 391 EXPECT_TRUE(permissions.get());
392 EXPECT_FALSE(permissions->HasEffectiveFullAccess()); 392 EXPECT_FALSE(permissions->HasEffectiveFullAccess());
393 EXPECT_EQ(api_permissions_, permissions->apis()); 393 EXPECT_EQ(api_permissions_, permissions->apis());
394 EXPECT_EQ(ehost_permissions_, 394 EXPECT_EQ(ehost_permissions_,
395 permissions->explicit_hosts()); 395 permissions->explicit_hosts());
396 EXPECT_EQ(shost_permissions_, 396 EXPECT_EQ(shost_permissions_,
397 permissions->scriptable_hosts()); 397 permissions->scriptable_hosts());
398 } 398 }
(...skipping 10 matching lines...) Expand all
409 APIPermissionSet api_permissions_; 409 APIPermissionSet api_permissions_;
410 URLPatternSet ehost_permissions_; 410 URLPatternSet ehost_permissions_;
411 URLPatternSet shost_permissions_; 411 URLPatternSet shost_permissions_;
412 URLPatternSet effective_permissions_; 412 URLPatternSet effective_permissions_;
413 }; 413 };
414 TEST_F(ExtensionPrefsGrantedPermissions, GrantedPermissions) {} 414 TEST_F(ExtensionPrefsGrantedPermissions, GrantedPermissions) {}
415 415
416 // Tests the SetActivePermissions / GetActivePermissions functions. 416 // Tests the SetActivePermissions / GetActivePermissions functions.
417 class ExtensionPrefsActivePermissions : public ExtensionPrefsTest { 417 class ExtensionPrefsActivePermissions : public ExtensionPrefsTest {
418 public: 418 public:
419 virtual void Initialize() { 419 virtual void Initialize() OVERRIDE {
420 extension_id_ = prefs_.AddExtensionAndReturnId("test"); 420 extension_id_ = prefs_.AddExtensionAndReturnId("test");
421 421
422 APIPermissionSet api_perms; 422 APIPermissionSet api_perms;
423 api_perms.insert(APIPermission::kTab); 423 api_perms.insert(APIPermission::kTab);
424 api_perms.insert(APIPermission::kBookmark); 424 api_perms.insert(APIPermission::kBookmark);
425 api_perms.insert(APIPermission::kHistory); 425 api_perms.insert(APIPermission::kHistory);
426 426
427 URLPatternSet ehosts; 427 URLPatternSet ehosts;
428 AddPattern(&ehosts, "http://*.google.com/*"); 428 AddPattern(&ehosts, "http://*.google.com/*");
429 AddPattern(&ehosts, "http://example.com/*"); 429 AddPattern(&ehosts, "http://example.com/*");
(...skipping 12 matching lines...) Expand all
442 442
443 // Set the active permissions. 443 // Set the active permissions.
444 prefs()->SetActivePermissions(extension_id_, active_perms_.get()); 444 prefs()->SetActivePermissions(extension_id_, active_perms_.get());
445 active = prefs()->GetActivePermissions(extension_id_); 445 active = prefs()->GetActivePermissions(extension_id_);
446 EXPECT_EQ(active_perms_->apis(), active->apis()); 446 EXPECT_EQ(active_perms_->apis(), active->apis());
447 EXPECT_EQ(active_perms_->explicit_hosts(), active->explicit_hosts()); 447 EXPECT_EQ(active_perms_->explicit_hosts(), active->explicit_hosts());
448 EXPECT_EQ(active_perms_->scriptable_hosts(), active->scriptable_hosts()); 448 EXPECT_EQ(active_perms_->scriptable_hosts(), active->scriptable_hosts());
449 EXPECT_EQ(*active_perms_, *active); 449 EXPECT_EQ(*active_perms_, *active);
450 } 450 }
451 451
452 virtual void Verify() { 452 virtual void Verify() OVERRIDE {
453 scoped_refptr<PermissionSet> permissions( 453 scoped_refptr<PermissionSet> permissions(
454 prefs()->GetActivePermissions(extension_id_)); 454 prefs()->GetActivePermissions(extension_id_));
455 EXPECT_EQ(*active_perms_, *permissions); 455 EXPECT_EQ(*active_perms_, *permissions);
456 } 456 }
457 457
458 private: 458 private:
459 std::string extension_id_; 459 std::string extension_id_;
460 scoped_refptr<PermissionSet> active_perms_; 460 scoped_refptr<PermissionSet> active_perms_;
461 }; 461 };
462 TEST_F(ExtensionPrefsActivePermissions, SetAndGetActivePermissions) {} 462 TEST_F(ExtensionPrefsActivePermissions, SetAndGetActivePermissions) {}
463 463
464 // Tests the GetVersionString function. 464 // Tests the GetVersionString function.
465 class ExtensionPrefsVersionString : public ExtensionPrefsTest { 465 class ExtensionPrefsVersionString : public ExtensionPrefsTest {
466 public: 466 public:
467 virtual void Initialize() { 467 virtual void Initialize() OVERRIDE {
468 extension = prefs_.AddExtension("test"); 468 extension = prefs_.AddExtension("test");
469 EXPECT_EQ("0.1", prefs()->GetVersionString(extension->id())); 469 EXPECT_EQ("0.1", prefs()->GetVersionString(extension->id()));
470 prefs()->OnExtensionUninstalled(extension->id(), 470 prefs()->OnExtensionUninstalled(extension->id(),
471 Manifest::INTERNAL, false); 471 Manifest::INTERNAL, false);
472 } 472 }
473 473
474 virtual void Verify() { 474 virtual void Verify() OVERRIDE {
475 EXPECT_EQ("", prefs()->GetVersionString(extension->id())); 475 EXPECT_EQ("", prefs()->GetVersionString(extension->id()));
476 } 476 }
477 477
478 private: 478 private:
479 scoped_refptr<Extension> extension; 479 scoped_refptr<Extension> extension;
480 }; 480 };
481 TEST_F(ExtensionPrefsVersionString, VersionString) {} 481 TEST_F(ExtensionPrefsVersionString, VersionString) {}
482 482
483 class ExtensionPrefsAcknowledgment : public ExtensionPrefsTest { 483 class ExtensionPrefsAcknowledgment : public ExtensionPrefsTest {
484 public: 484 public:
485 virtual void Initialize() { 485 virtual void Initialize() OVERRIDE {
486 not_installed_id_ = "pghjnghklobnfoidcldiidjjjhkeeaoi"; 486 not_installed_id_ = "pghjnghklobnfoidcldiidjjjhkeeaoi";
487 487
488 // Install some extensions. 488 // Install some extensions.
489 for (int i = 0; i < 5; i++) { 489 for (int i = 0; i < 5; i++) {
490 std::string name = "test" + base::IntToString(i); 490 std::string name = "test" + base::IntToString(i);
491 extensions_.push_back(prefs_.AddExtension(name)); 491 extensions_.push_back(prefs_.AddExtension(name));
492 } 492 }
493 EXPECT_EQ(NULL, 493 EXPECT_EQ(NULL,
494 prefs()->GetInstalledExtensionInfo(not_installed_id_).get()); 494 prefs()->GetInstalledExtensionInfo(not_installed_id_).get());
495 495
(...skipping 12 matching lines...) Expand all
508 } 508 }
509 } 509 }
510 // For each type of acknowledgment, acknowledge one installed and one 510 // For each type of acknowledgment, acknowledge one installed and one
511 // not-installed extension id. 511 // not-installed extension id.
512 prefs()->AcknowledgeExternalExtension(external_id_); 512 prefs()->AcknowledgeExternalExtension(external_id_);
513 prefs()->AcknowledgeBlacklistedExtension(blacklisted_id_); 513 prefs()->AcknowledgeBlacklistedExtension(blacklisted_id_);
514 prefs()->AcknowledgeExternalExtension(not_installed_id_); 514 prefs()->AcknowledgeExternalExtension(not_installed_id_);
515 prefs()->AcknowledgeBlacklistedExtension(not_installed_id_); 515 prefs()->AcknowledgeBlacklistedExtension(not_installed_id_);
516 } 516 }
517 517
518 virtual void Verify() { 518 virtual void Verify() OVERRIDE {
519 ExtensionList::const_iterator iter; 519 ExtensionList::const_iterator iter;
520 for (iter = extensions_.begin(); iter != extensions_.end(); ++iter) { 520 for (iter = extensions_.begin(); iter != extensions_.end(); ++iter) {
521 std::string id = (*iter)->id(); 521 std::string id = (*iter)->id();
522 if (id == external_id_) { 522 if (id == external_id_) {
523 EXPECT_TRUE(prefs()->IsExternalExtensionAcknowledged(id)); 523 EXPECT_TRUE(prefs()->IsExternalExtensionAcknowledged(id));
524 } else { 524 } else {
525 EXPECT_FALSE(prefs()->IsExternalExtensionAcknowledged(id)); 525 EXPECT_FALSE(prefs()->IsExternalExtensionAcknowledged(id));
526 } 526 }
527 if (id == blacklisted_id_) { 527 if (id == blacklisted_id_) {
528 EXPECT_TRUE(prefs()->IsBlacklistedExtensionAcknowledged(id)); 528 EXPECT_TRUE(prefs()->IsBlacklistedExtensionAcknowledged(id));
(...skipping 10 matching lines...) Expand all
539 539
540 std::string not_installed_id_; 540 std::string not_installed_id_;
541 std::string external_id_; 541 std::string external_id_;
542 std::string blacklisted_id_; 542 std::string blacklisted_id_;
543 }; 543 };
544 TEST_F(ExtensionPrefsAcknowledgment, Acknowledgment) {} 544 TEST_F(ExtensionPrefsAcknowledgment, Acknowledgment) {}
545 545
546 // Tests force hiding browser actions. 546 // Tests force hiding browser actions.
547 class ExtensionPrefsHidingBrowserActions : public ExtensionPrefsTest { 547 class ExtensionPrefsHidingBrowserActions : public ExtensionPrefsTest {
548 public: 548 public:
549 virtual void Initialize() { 549 virtual void Initialize() OVERRIDE {
550 // Install 5 extensions. 550 // Install 5 extensions.
551 for (int i = 0; i < 5; i++) { 551 for (int i = 0; i < 5; i++) {
552 std::string name = "test" + base::IntToString(i); 552 std::string name = "test" + base::IntToString(i);
553 extensions_.push_back(prefs_.AddExtension(name)); 553 extensions_.push_back(prefs_.AddExtension(name));
554 } 554 }
555 555
556 ExtensionList::const_iterator iter; 556 ExtensionList::const_iterator iter;
557 for (iter = extensions_.begin(); iter != extensions_.end(); ++iter) 557 for (iter = extensions_.begin(); iter != extensions_.end(); ++iter)
558 EXPECT_TRUE(prefs()->GetBrowserActionVisibility(*iter)); 558 EXPECT_TRUE(prefs()->GetBrowserActionVisibility(*iter));
559 559
560 prefs()->SetBrowserActionVisibility(extensions_[0], false); 560 prefs()->SetBrowserActionVisibility(extensions_[0], false);
561 prefs()->SetBrowserActionVisibility(extensions_[1], true); 561 prefs()->SetBrowserActionVisibility(extensions_[1], true);
562 } 562 }
563 563
564 virtual void Verify() { 564 virtual void Verify() OVERRIDE {
565 // Make sure the one we hid is hidden. 565 // Make sure the one we hid is hidden.
566 EXPECT_FALSE(prefs()->GetBrowserActionVisibility(extensions_[0])); 566 EXPECT_FALSE(prefs()->GetBrowserActionVisibility(extensions_[0]));
567 567
568 // Make sure the other id's are not hidden. 568 // Make sure the other id's are not hidden.
569 ExtensionList::const_iterator iter = extensions_.begin() + 1; 569 ExtensionList::const_iterator iter = extensions_.begin() + 1;
570 for (; iter != extensions_.end(); ++iter) { 570 for (; iter != extensions_.end(); ++iter) {
571 SCOPED_TRACE(base::StringPrintf("Loop %d ", 571 SCOPED_TRACE(base::StringPrintf("Loop %d ",
572 static_cast<int>(iter - extensions_.begin()))); 572 static_cast<int>(iter - extensions_.begin())));
573 EXPECT_TRUE(prefs()->GetBrowserActionVisibility(*iter)); 573 EXPECT_TRUE(prefs()->GetBrowserActionVisibility(*iter));
574 } 574 }
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
612 612
613 bool HasInfoForId(extensions::ExtensionPrefs::ExtensionsInfo* info, 613 bool HasInfoForId(extensions::ExtensionPrefs::ExtensionsInfo* info,
614 const std::string& id) { 614 const std::string& id) {
615 for (size_t i = 0; i < info->size(); ++i) { 615 for (size_t i = 0; i < info->size(); ++i) {
616 if (info->at(i)->extension_id == id) 616 if (info->at(i)->extension_id == id)
617 return true; 617 return true;
618 } 618 }
619 return false; 619 return false;
620 } 620 }
621 621
622 virtual void Initialize() { 622 virtual void Initialize() OVERRIDE {
623 PathService::Get(chrome::DIR_TEST_DATA, &basedir_); 623 PathService::Get(chrome::DIR_TEST_DATA, &basedir_);
624 now_ = Time::Now(); 624 now_ = Time::Now();
625 id1_ = prefs_.AddExtensionAndReturnId("1"); 625 id1_ = prefs_.AddExtensionAndReturnId("1");
626 id2_ = prefs_.AddExtensionAndReturnId("2"); 626 id2_ = prefs_.AddExtensionAndReturnId("2");
627 id3_ = prefs_.AddExtensionAndReturnId("3"); 627 id3_ = prefs_.AddExtensionAndReturnId("3");
628 id4_ = prefs_.AddExtensionAndReturnId("4"); 628 id4_ = prefs_.AddExtensionAndReturnId("4");
629 629
630 // Set info for two extensions, then remove it. 630 // Set info for two extensions, then remove it.
631 SetIdleInfo(id1_, 1); 631 SetIdleInfo(id1_, 1);
632 SetIdleInfo(id2_, 2); 632 SetIdleInfo(id2_, 2);
(...skipping 22 matching lines...) Expand all
655 SetIdleInfo(id2_, 2); 655 SetIdleInfo(id2_, 2);
656 SetIdleInfo(id3_, 3); 656 SetIdleInfo(id3_, 3);
657 SetIdleInfo(id4_, 4); 657 SetIdleInfo(id4_, 4);
658 VerifyIdleInfo(id1_, 1); 658 VerifyIdleInfo(id1_, 1);
659 VerifyIdleInfo(id2_, 2); 659 VerifyIdleInfo(id2_, 2);
660 VerifyIdleInfo(id3_, 3); 660 VerifyIdleInfo(id3_, 3);
661 VerifyIdleInfo(id4_, 4); 661 VerifyIdleInfo(id4_, 4);
662 prefs()->RemoveDelayedInstallInfo(id3_); 662 prefs()->RemoveDelayedInstallInfo(id3_);
663 } 663 }
664 664
665 virtual void Verify() { 665 virtual void Verify() OVERRIDE {
666 // Make sure the info for the 3 extensions we expect is present. 666 // Make sure the info for the 3 extensions we expect is present.
667 scoped_ptr<extensions::ExtensionPrefs::ExtensionsInfo> info( 667 scoped_ptr<extensions::ExtensionPrefs::ExtensionsInfo> info(
668 prefs()->GetAllDelayedInstallInfo()); 668 prefs()->GetAllDelayedInstallInfo());
669 EXPECT_EQ(3u, info->size()); 669 EXPECT_EQ(3u, info->size());
670 EXPECT_TRUE(HasInfoForId(info.get(), id1_)); 670 EXPECT_TRUE(HasInfoForId(info.get(), id1_));
671 EXPECT_TRUE(HasInfoForId(info.get(), id2_)); 671 EXPECT_TRUE(HasInfoForId(info.get(), id2_));
672 EXPECT_TRUE(HasInfoForId(info.get(), id4_)); 672 EXPECT_TRUE(HasInfoForId(info.get(), id4_));
673 VerifyIdleInfo(id1_, 1); 673 VerifyIdleInfo(id1_, 1);
674 VerifyIdleInfo(id2_, 2); 674 VerifyIdleInfo(id2_, 2);
675 VerifyIdleInfo(id4_, 4); 675 VerifyIdleInfo(id4_, 4);
676 676
677 // Make sure there isn't info the for the one extension id we removed. 677 // Make sure there isn't info the for the one extension id we removed.
678 EXPECT_FALSE(prefs()->GetDelayedInstallInfo(id3_)); 678 EXPECT_FALSE(prefs()->GetDelayedInstallInfo(id3_));
679 } 679 }
680 680
681 protected: 681 protected:
682 Time now_; 682 Time now_;
683 FilePath basedir_; 683 FilePath basedir_;
684 std::string id1_; 684 std::string id1_;
685 std::string id2_; 685 std::string id2_;
686 std::string id3_; 686 std::string id3_;
687 std::string id4_; 687 std::string id4_;
688 }; 688 };
689 TEST_F(ExtensionPrefsDelayedInstallInfo, DelayedInstallInfo) {} 689 TEST_F(ExtensionPrefsDelayedInstallInfo, DelayedInstallInfo) {}
690 690
691 class ExtensionPrefsOnExtensionInstalled : public ExtensionPrefsTest { 691 class ExtensionPrefsOnExtensionInstalled : public ExtensionPrefsTest {
692 public: 692 public:
693 virtual void Initialize() { 693 virtual void Initialize() OVERRIDE {
694 extension_ = prefs_.AddExtension("on_extension_installed"); 694 extension_ = prefs_.AddExtension("on_extension_installed");
695 EXPECT_FALSE(prefs()->IsExtensionDisabled(extension_->id())); 695 EXPECT_FALSE(prefs()->IsExtensionDisabled(extension_->id()));
696 prefs()->OnExtensionInstalled( 696 prefs()->OnExtensionInstalled(
697 extension_.get(), Extension::DISABLED, 697 extension_.get(), Extension::DISABLED,
698 syncer::StringOrdinal()); 698 syncer::StringOrdinal());
699 } 699 }
700 700
701 virtual void Verify() { 701 virtual void Verify() OVERRIDE {
702 EXPECT_TRUE(prefs()->IsExtensionDisabled(extension_->id())); 702 EXPECT_TRUE(prefs()->IsExtensionDisabled(extension_->id()));
703 } 703 }
704 704
705 private: 705 private:
706 scoped_refptr<Extension> extension_; 706 scoped_refptr<Extension> extension_;
707 }; 707 };
708 TEST_F(ExtensionPrefsOnExtensionInstalled, 708 TEST_F(ExtensionPrefsOnExtensionInstalled,
709 ExtensionPrefsOnExtensionInstalled) {} 709 ExtensionPrefsOnExtensionInstalled) {}
710 710
711 class ExtensionPrefsAppDraggedByUser : public ExtensionPrefsTest { 711 class ExtensionPrefsAppDraggedByUser : public ExtensionPrefsTest {
712 public: 712 public:
713 virtual void Initialize() { 713 virtual void Initialize() OVERRIDE {
714 extension_ = prefs_.AddExtension("on_extension_installed"); 714 extension_ = prefs_.AddExtension("on_extension_installed");
715 EXPECT_FALSE(prefs()->WasAppDraggedByUser(extension_->id())); 715 EXPECT_FALSE(prefs()->WasAppDraggedByUser(extension_->id()));
716 prefs()->OnExtensionInstalled(extension_.get(), Extension::ENABLED, 716 prefs()->OnExtensionInstalled(extension_.get(), Extension::ENABLED,
717 syncer::StringOrdinal()); 717 syncer::StringOrdinal());
718 } 718 }
719 719
720 virtual void Verify() { 720 virtual void Verify() OVERRIDE {
721 // Set the flag and see if it persisted. 721 // Set the flag and see if it persisted.
722 prefs()->SetAppDraggedByUser(extension_->id()); 722 prefs()->SetAppDraggedByUser(extension_->id());
723 EXPECT_TRUE(prefs()->WasAppDraggedByUser(extension_->id())); 723 EXPECT_TRUE(prefs()->WasAppDraggedByUser(extension_->id()));
724 724
725 // Make sure it doesn't change on consecutive calls. 725 // Make sure it doesn't change on consecutive calls.
726 prefs()->SetAppDraggedByUser(extension_->id()); 726 prefs()->SetAppDraggedByUser(extension_->id());
727 EXPECT_TRUE(prefs()->WasAppDraggedByUser(extension_->id())); 727 EXPECT_TRUE(prefs()->WasAppDraggedByUser(extension_->id()));
728 } 728 }
729 729
730 private: 730 private:
731 scoped_refptr<Extension> extension_; 731 scoped_refptr<Extension> extension_;
732 }; 732 };
733 TEST_F(ExtensionPrefsAppDraggedByUser, ExtensionPrefsAppDraggedByUser) {} 733 TEST_F(ExtensionPrefsAppDraggedByUser, ExtensionPrefsAppDraggedByUser) {}
734 734
735 class ExtensionPrefsFlags : public ExtensionPrefsTest { 735 class ExtensionPrefsFlags : public ExtensionPrefsTest {
736 public: 736 public:
737 virtual void Initialize() { 737 virtual void Initialize() OVERRIDE {
738 { 738 {
739 base::DictionaryValue dictionary; 739 base::DictionaryValue dictionary;
740 dictionary.SetString(extension_manifest_keys::kName, "from_webstore"); 740 dictionary.SetString(extension_manifest_keys::kName, "from_webstore");
741 dictionary.SetString(extension_manifest_keys::kVersion, "0.1"); 741 dictionary.SetString(extension_manifest_keys::kVersion, "0.1");
742 webstore_extension_ = prefs_.AddExtensionWithManifestAndFlags( 742 webstore_extension_ = prefs_.AddExtensionWithManifestAndFlags(
743 dictionary, Manifest::INTERNAL, Extension::FROM_WEBSTORE); 743 dictionary, Manifest::INTERNAL, Extension::FROM_WEBSTORE);
744 } 744 }
745 745
746 { 746 {
747 base::DictionaryValue dictionary; 747 base::DictionaryValue dictionary;
748 dictionary.SetString(extension_manifest_keys::kName, "from_bookmark"); 748 dictionary.SetString(extension_manifest_keys::kName, "from_bookmark");
749 dictionary.SetString(extension_manifest_keys::kVersion, "0.1"); 749 dictionary.SetString(extension_manifest_keys::kVersion, "0.1");
750 bookmark_extension_ = prefs_.AddExtensionWithManifestAndFlags( 750 bookmark_extension_ = prefs_.AddExtensionWithManifestAndFlags(
751 dictionary, Manifest::INTERNAL, Extension::FROM_BOOKMARK); 751 dictionary, Manifest::INTERNAL, Extension::FROM_BOOKMARK);
752 } 752 }
753 753
754 { 754 {
755 base::DictionaryValue dictionary; 755 base::DictionaryValue dictionary;
756 dictionary.SetString(extension_manifest_keys::kName, 756 dictionary.SetString(extension_manifest_keys::kName,
757 "was_installed_by_default"); 757 "was_installed_by_default");
758 dictionary.SetString(extension_manifest_keys::kVersion, "0.1"); 758 dictionary.SetString(extension_manifest_keys::kVersion, "0.1");
759 default_extension_ = prefs_.AddExtensionWithManifestAndFlags( 759 default_extension_ = prefs_.AddExtensionWithManifestAndFlags(
760 dictionary, 760 dictionary,
761 Manifest::INTERNAL, 761 Manifest::INTERNAL,
762 Extension::WAS_INSTALLED_BY_DEFAULT); 762 Extension::WAS_INSTALLED_BY_DEFAULT);
763 } 763 }
764 } 764 }
765 765
766 virtual void Verify() { 766 virtual void Verify() OVERRIDE {
767 EXPECT_TRUE(prefs()->IsFromWebStore(webstore_extension_->id())); 767 EXPECT_TRUE(prefs()->IsFromWebStore(webstore_extension_->id()));
768 EXPECT_FALSE(prefs()->IsFromBookmark(webstore_extension_->id())); 768 EXPECT_FALSE(prefs()->IsFromBookmark(webstore_extension_->id()));
769 769
770 EXPECT_TRUE(prefs()->IsFromBookmark(bookmark_extension_->id())); 770 EXPECT_TRUE(prefs()->IsFromBookmark(bookmark_extension_->id()));
771 EXPECT_FALSE(prefs()->IsFromWebStore(bookmark_extension_->id())); 771 EXPECT_FALSE(prefs()->IsFromWebStore(bookmark_extension_->id()));
772 772
773 EXPECT_TRUE(prefs()->WasInstalledByDefault(default_extension_->id())); 773 EXPECT_TRUE(prefs()->WasInstalledByDefault(default_extension_->id()));
774 } 774 }
775 775
776 private: 776 private:
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
886 if (extensions[i]->id() == extension_id) { 886 if (extensions[i]->id() == extension_id) {
887 installed[i] = false; 887 installed[i] = false;
888 break; 888 break;
889 } 889 }
890 } 890 }
891 prefs()->OnExtensionUninstalled(extension_id, Manifest::INTERNAL, false); 891 prefs()->OnExtensionUninstalled(extension_id, Manifest::INTERNAL, false);
892 } 892 }
893 893
894 class ExtensionPrefsInstallOneExtension 894 class ExtensionPrefsInstallOneExtension
895 : public ExtensionPrefsPrepopulatedTest { 895 : public ExtensionPrefsPrepopulatedTest {
896 virtual void Initialize() { 896 virtual void Initialize() OVERRIDE {
897 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1")); 897 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1"));
898 } 898 }
899 virtual void Verify() { 899 virtual void Verify() OVERRIDE {
900 std::string actual = prefs()->pref_service()->GetString(kPref1); 900 std::string actual = prefs()->pref_service()->GetString(kPref1);
901 EXPECT_EQ("val1", actual); 901 EXPECT_EQ("val1", actual);
902 } 902 }
903 }; 903 };
904 TEST_F(ExtensionPrefsInstallOneExtension, ExtensionPrefsInstallOneExtension) {} 904 TEST_F(ExtensionPrefsInstallOneExtension, ExtensionPrefsInstallOneExtension) {}
905 905
906 // Check that we do not forget persistent incognito values after a reload. 906 // Check that we do not forget persistent incognito values after a reload.
907 class ExtensionPrefsInstallIncognitoPersistent 907 class ExtensionPrefsInstallIncognitoPersistent
908 : public ExtensionPrefsPrepopulatedTest { 908 : public ExtensionPrefsPrepopulatedTest {
909 public: 909 public:
910 virtual void Initialize() { 910 virtual void Initialize() OVERRIDE {
911 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1")); 911 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1"));
912 InstallExtControlledPrefIncognito(ext1_, kPref1, 912 InstallExtControlledPrefIncognito(ext1_, kPref1,
913 Value::CreateStringValue("val2")); 913 Value::CreateStringValue("val2"));
914 scoped_ptr<PrefService> incog_prefs(prefs_.CreateIncognitoPrefService()); 914 scoped_ptr<PrefService> incog_prefs(prefs_.CreateIncognitoPrefService());
915 std::string actual = incog_prefs->GetString(kPref1); 915 std::string actual = incog_prefs->GetString(kPref1);
916 EXPECT_EQ("val2", actual); 916 EXPECT_EQ("val2", actual);
917 } 917 }
918 virtual void Verify() { 918 virtual void Verify() OVERRIDE {
919 // Main pref service shall see only non-incognito settings. 919 // Main pref service shall see only non-incognito settings.
920 std::string actual = prefs()->pref_service()->GetString(kPref1); 920 std::string actual = prefs()->pref_service()->GetString(kPref1);
921 EXPECT_EQ("val1", actual); 921 EXPECT_EQ("val1", actual);
922 // Incognito pref service shall see incognito values. 922 // Incognito pref service shall see incognito values.
923 scoped_ptr<PrefService> incog_prefs(prefs_.CreateIncognitoPrefService()); 923 scoped_ptr<PrefService> incog_prefs(prefs_.CreateIncognitoPrefService());
924 actual = incog_prefs->GetString(kPref1); 924 actual = incog_prefs->GetString(kPref1);
925 EXPECT_EQ("val2", actual); 925 EXPECT_EQ("val2", actual);
926 } 926 }
927 }; 927 };
928 TEST_F(ExtensionPrefsInstallIncognitoPersistent, 928 TEST_F(ExtensionPrefsInstallIncognitoPersistent,
929 ExtensionPrefsInstallOneExtension) {} 929 ExtensionPrefsInstallOneExtension) {}
930 930
931 // Check that we forget 'session only' incognito values after a reload. 931 // Check that we forget 'session only' incognito values after a reload.
932 class ExtensionPrefsInstallIncognitoSessionOnly 932 class ExtensionPrefsInstallIncognitoSessionOnly
933 : public ExtensionPrefsPrepopulatedTest { 933 : public ExtensionPrefsPrepopulatedTest {
934 public: 934 public:
935 ExtensionPrefsInstallIncognitoSessionOnly() : iteration_(0) {} 935 ExtensionPrefsInstallIncognitoSessionOnly() : iteration_(0) {}
936 936
937 virtual void Initialize() { 937 virtual void Initialize() OVERRIDE {
938 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1")); 938 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1"));
939 InstallExtControlledPrefIncognitoSessionOnly( 939 InstallExtControlledPrefIncognitoSessionOnly(
940 ext1_, kPref1, Value::CreateStringValue("val2")); 940 ext1_, kPref1, Value::CreateStringValue("val2"));
941 scoped_ptr<PrefService> incog_prefs(prefs_.CreateIncognitoPrefService()); 941 scoped_ptr<PrefService> incog_prefs(prefs_.CreateIncognitoPrefService());
942 std::string actual = incog_prefs->GetString(kPref1); 942 std::string actual = incog_prefs->GetString(kPref1);
943 EXPECT_EQ("val2", actual); 943 EXPECT_EQ("val2", actual);
944 } 944 }
945 virtual void Verify() { 945 virtual void Verify() OVERRIDE {
946 // Main pref service shall see only non-incognito settings. 946 // Main pref service shall see only non-incognito settings.
947 std::string actual = prefs()->pref_service()->GetString(kPref1); 947 std::string actual = prefs()->pref_service()->GetString(kPref1);
948 EXPECT_EQ("val1", actual); 948 EXPECT_EQ("val1", actual);
949 // Incognito pref service shall see session-only incognito values only 949 // Incognito pref service shall see session-only incognito values only
950 // during first run. Once the pref service was reloaded, all values shall be 950 // during first run. Once the pref service was reloaded, all values shall be
951 // discarded. 951 // discarded.
952 scoped_ptr<PrefService> incog_prefs(prefs_.CreateIncognitoPrefService()); 952 scoped_ptr<PrefService> incog_prefs(prefs_.CreateIncognitoPrefService());
953 actual = incog_prefs->GetString(kPref1); 953 actual = incog_prefs->GetString(kPref1);
954 if (iteration_ == 0) { 954 if (iteration_ == 0) {
955 EXPECT_EQ("val2", actual); 955 EXPECT_EQ("val2", actual);
956 } else { 956 } else {
957 EXPECT_EQ("val1", actual); 957 EXPECT_EQ("val1", actual);
958 } 958 }
959 ++iteration_; 959 ++iteration_;
960 } 960 }
961 int iteration_; 961 int iteration_;
962 }; 962 };
963 TEST_F(ExtensionPrefsInstallIncognitoSessionOnly, 963 TEST_F(ExtensionPrefsInstallIncognitoSessionOnly,
964 ExtensionPrefsInstallOneExtension) {} 964 ExtensionPrefsInstallOneExtension) {}
965 965
966 class ExtensionPrefsUninstallExtension : public ExtensionPrefsPrepopulatedTest { 966 class ExtensionPrefsUninstallExtension : public ExtensionPrefsPrepopulatedTest {
967 virtual void Initialize() { 967 virtual void Initialize() OVERRIDE {
968 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1")); 968 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1"));
969 InstallExtControlledPref(ext1_, kPref2, Value::CreateStringValue("val2")); 969 InstallExtControlledPref(ext1_, kPref2, Value::CreateStringValue("val2"));
970 ContentSettingsStore* store = prefs()->content_settings_store(); 970 ContentSettingsStore* store = prefs()->content_settings_store();
971 ContentSettingsPattern pattern = 971 ContentSettingsPattern pattern =
972 ContentSettingsPattern::FromString("http://[*.]example.com"); 972 ContentSettingsPattern::FromString("http://[*.]example.com");
973 store->SetExtensionContentSetting(ext1_->id(), 973 store->SetExtensionContentSetting(ext1_->id(),
974 pattern, pattern, 974 pattern, pattern,
975 CONTENT_SETTINGS_TYPE_IMAGES, 975 CONTENT_SETTINGS_TYPE_IMAGES,
976 std::string(), 976 std::string(),
977 CONTENT_SETTING_BLOCK, 977 CONTENT_SETTING_BLOCK,
978 kExtensionPrefsScopeRegular); 978 kExtensionPrefsScopeRegular);
979 979
980 UninstallExtension(ext1_->id()); 980 UninstallExtension(ext1_->id());
981 } 981 }
982 virtual void Verify() { 982 virtual void Verify() OVERRIDE {
983 EXPECT_EQ(NULL, prefs()->GetExtensionPref(ext1_->id())); 983 EXPECT_EQ(NULL, prefs()->GetExtensionPref(ext1_->id()));
984 984
985 std::string actual; 985 std::string actual;
986 actual = prefs()->pref_service()->GetString(kPref1); 986 actual = prefs()->pref_service()->GetString(kPref1);
987 EXPECT_EQ(kDefaultPref1, actual); 987 EXPECT_EQ(kDefaultPref1, actual);
988 actual = prefs()->pref_service()->GetString(kPref2); 988 actual = prefs()->pref_service()->GetString(kPref2);
989 EXPECT_EQ(kDefaultPref2, actual); 989 EXPECT_EQ(kDefaultPref2, actual);
990 } 990 }
991 }; 991 };
992 TEST_F(ExtensionPrefsUninstallExtension, 992 TEST_F(ExtensionPrefsUninstallExtension,
993 ExtensionPrefsUninstallExtension) {} 993 ExtensionPrefsUninstallExtension) {}
994 994
995 // Tests triggering of notifications to registered observers. 995 // Tests triggering of notifications to registered observers.
996 class ExtensionPrefsNotifyWhenNeeded : public ExtensionPrefsPrepopulatedTest { 996 class ExtensionPrefsNotifyWhenNeeded : public ExtensionPrefsPrepopulatedTest {
997 virtual void Initialize() { 997 virtual void Initialize() OVERRIDE {
998 using testing::_; 998 using testing::_;
999 using testing::Mock; 999 using testing::Mock;
1000 using testing::StrEq; 1000 using testing::StrEq;
1001 1001
1002 MockPrefChangeCallback observer(prefs()->pref_service()); 1002 MockPrefChangeCallback observer(prefs()->pref_service());
1003 PrefChangeRegistrar registrar; 1003 PrefChangeRegistrar registrar;
1004 registrar.Init(prefs()->pref_service()); 1004 registrar.Init(prefs()->pref_service());
1005 registrar.Add(kPref1, observer.GetCallback()); 1005 registrar.Add(kPref1, observer.GetCallback());
1006 1006
1007 MockPrefChangeCallback incognito_observer(prefs()->pref_service()); 1007 MockPrefChangeCallback incognito_observer(prefs()->pref_service());
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
1053 // Uninstall. 1053 // Uninstall.
1054 EXPECT_CALL(observer, OnPreferenceChanged(_)); 1054 EXPECT_CALL(observer, OnPreferenceChanged(_));
1055 EXPECT_CALL(incognito_observer, OnPreferenceChanged(_)); 1055 EXPECT_CALL(incognito_observer, OnPreferenceChanged(_));
1056 UninstallExtension(ext1_->id()); 1056 UninstallExtension(ext1_->id());
1057 Mock::VerifyAndClearExpectations(&observer); 1057 Mock::VerifyAndClearExpectations(&observer);
1058 Mock::VerifyAndClearExpectations(&incognito_observer); 1058 Mock::VerifyAndClearExpectations(&incognito_observer);
1059 1059
1060 registrar.Remove(kPref1); 1060 registrar.Remove(kPref1);
1061 incognito_registrar.Remove(kPref1); 1061 incognito_registrar.Remove(kPref1);
1062 } 1062 }
1063 virtual void Verify() { 1063 virtual void Verify() OVERRIDE {
1064 std::string actual = prefs()->pref_service()->GetString(kPref1); 1064 std::string actual = prefs()->pref_service()->GetString(kPref1);
1065 EXPECT_EQ(kDefaultPref1, actual); 1065 EXPECT_EQ(kDefaultPref1, actual);
1066 } 1066 }
1067 }; 1067 };
1068 TEST_F(ExtensionPrefsNotifyWhenNeeded, 1068 TEST_F(ExtensionPrefsNotifyWhenNeeded,
1069 ExtensionPrefsNotifyWhenNeeded) {} 1069 ExtensionPrefsNotifyWhenNeeded) {}
1070 1070
1071 // Tests disabling an extension. 1071 // Tests disabling an extension.
1072 class ExtensionPrefsDisableExt : public ExtensionPrefsPrepopulatedTest { 1072 class ExtensionPrefsDisableExt : public ExtensionPrefsPrepopulatedTest {
1073 virtual void Initialize() { 1073 virtual void Initialize() OVERRIDE {
1074 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1")); 1074 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1"));
1075 std::string actual = prefs()->pref_service()->GetString(kPref1); 1075 std::string actual = prefs()->pref_service()->GetString(kPref1);
1076 EXPECT_EQ("val1", actual); 1076 EXPECT_EQ("val1", actual);
1077 prefs()->SetExtensionState(ext1_->id(), Extension::DISABLED); 1077 prefs()->SetExtensionState(ext1_->id(), Extension::DISABLED);
1078 } 1078 }
1079 virtual void Verify() { 1079 virtual void Verify() OVERRIDE {
1080 std::string actual = prefs()->pref_service()->GetString(kPref1); 1080 std::string actual = prefs()->pref_service()->GetString(kPref1);
1081 EXPECT_EQ(kDefaultPref1, actual); 1081 EXPECT_EQ(kDefaultPref1, actual);
1082 } 1082 }
1083 }; 1083 };
1084 TEST_F(ExtensionPrefsDisableExt, ExtensionPrefsDisableExt) {} 1084 TEST_F(ExtensionPrefsDisableExt, ExtensionPrefsDisableExt) {}
1085 1085
1086 // Tests disabling and reenabling an extension. 1086 // Tests disabling and reenabling an extension.
1087 class ExtensionPrefsReenableExt : public ExtensionPrefsPrepopulatedTest { 1087 class ExtensionPrefsReenableExt : public ExtensionPrefsPrepopulatedTest {
1088 virtual void Initialize() { 1088 virtual void Initialize() OVERRIDE {
1089 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1")); 1089 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1"));
1090 prefs()->SetExtensionState(ext1_->id(), Extension::DISABLED); 1090 prefs()->SetExtensionState(ext1_->id(), Extension::DISABLED);
1091 prefs()->SetExtensionState(ext1_->id(), Extension::ENABLED); 1091 prefs()->SetExtensionState(ext1_->id(), Extension::ENABLED);
1092 } 1092 }
1093 virtual void Verify() { 1093 virtual void Verify() OVERRIDE {
1094 std::string actual = prefs()->pref_service()->GetString(kPref1); 1094 std::string actual = prefs()->pref_service()->GetString(kPref1);
1095 EXPECT_EQ("val1", actual); 1095 EXPECT_EQ("val1", actual);
1096 } 1096 }
1097 }; 1097 };
1098 TEST_F(ExtensionPrefsDisableExt, ExtensionPrefsReenableExt) {} 1098 TEST_F(ExtensionPrefsDisableExt, ExtensionPrefsReenableExt) {}
1099 1099
1100 // Mock class to test whether objects are deleted correctly. 1100 // Mock class to test whether objects are deleted correctly.
1101 class MockStringValue : public StringValue { 1101 class MockStringValue : public StringValue {
1102 public: 1102 public:
1103 explicit MockStringValue(const std::string& in_value) 1103 explicit MockStringValue(const std::string& in_value)
1104 : StringValue(in_value) { 1104 : StringValue(in_value) {
1105 } 1105 }
1106 virtual ~MockStringValue() { 1106 virtual ~MockStringValue() {
1107 Die(); 1107 Die();
1108 } 1108 }
1109 MOCK_METHOD0(Die, void()); 1109 MOCK_METHOD0(Die, void());
1110 }; 1110 };
1111 1111
1112 class ExtensionPrefsSetExtensionControlledPref 1112 class ExtensionPrefsSetExtensionControlledPref
1113 : public ExtensionPrefsPrepopulatedTest { 1113 : public ExtensionPrefsPrepopulatedTest {
1114 public: 1114 public:
1115 virtual void Initialize() { 1115 virtual void Initialize() OVERRIDE {
1116 MockStringValue* v1 = new MockStringValue("https://www.chromium.org"); 1116 MockStringValue* v1 = new MockStringValue("https://www.chromium.org");
1117 MockStringValue* v2 = new MockStringValue("https://www.chromium.org"); 1117 MockStringValue* v2 = new MockStringValue("https://www.chromium.org");
1118 MockStringValue* v1i = new MockStringValue("https://www.chromium.org"); 1118 MockStringValue* v1i = new MockStringValue("https://www.chromium.org");
1119 MockStringValue* v2i = new MockStringValue("https://www.chromium.org"); 1119 MockStringValue* v2i = new MockStringValue("https://www.chromium.org");
1120 // Ownership is taken, value shall not be deleted. 1120 // Ownership is taken, value shall not be deleted.
1121 EXPECT_CALL(*v1, Die()).Times(0); 1121 EXPECT_CALL(*v1, Die()).Times(0);
1122 EXPECT_CALL(*v1i, Die()).Times(0); 1122 EXPECT_CALL(*v1i, Die()).Times(0);
1123 InstallExtControlledPref(ext1_, kPref1, v1); 1123 InstallExtControlledPref(ext1_, kPref1, v1);
1124 InstallExtControlledPrefIncognito(ext1_, kPref1, v1i); 1124 InstallExtControlledPrefIncognito(ext1_, kPref1, v1i);
1125 testing::Mock::VerifyAndClearExpectations(v1); 1125 testing::Mock::VerifyAndClearExpectations(v1);
1126 testing::Mock::VerifyAndClearExpectations(v1i); 1126 testing::Mock::VerifyAndClearExpectations(v1i);
1127 // Make sure there is no memory leak and both values are deleted. 1127 // Make sure there is no memory leak and both values are deleted.
1128 EXPECT_CALL(*v1, Die()).Times(1); 1128 EXPECT_CALL(*v1, Die()).Times(1);
1129 EXPECT_CALL(*v1i, Die()).Times(1); 1129 EXPECT_CALL(*v1i, Die()).Times(1);
1130 EXPECT_CALL(*v2, Die()).Times(1); 1130 EXPECT_CALL(*v2, Die()).Times(1);
1131 EXPECT_CALL(*v2i, Die()).Times(1); 1131 EXPECT_CALL(*v2i, Die()).Times(1);
1132 InstallExtControlledPref(ext1_, kPref1, v2); 1132 InstallExtControlledPref(ext1_, kPref1, v2);
1133 InstallExtControlledPrefIncognito(ext1_, kPref1, v2i); 1133 InstallExtControlledPrefIncognito(ext1_, kPref1, v2i);
1134 prefs_.RecreateExtensionPrefs(); 1134 prefs_.RecreateExtensionPrefs();
1135 testing::Mock::VerifyAndClearExpectations(v1); 1135 testing::Mock::VerifyAndClearExpectations(v1);
1136 testing::Mock::VerifyAndClearExpectations(v1i); 1136 testing::Mock::VerifyAndClearExpectations(v1i);
1137 testing::Mock::VerifyAndClearExpectations(v2); 1137 testing::Mock::VerifyAndClearExpectations(v2);
1138 testing::Mock::VerifyAndClearExpectations(v2i); 1138 testing::Mock::VerifyAndClearExpectations(v2i);
1139 } 1139 }
1140 1140
1141 virtual void Verify() { 1141 virtual void Verify() OVERRIDE {
1142 } 1142 }
1143 }; 1143 };
1144 TEST_F(ExtensionPrefsSetExtensionControlledPref, 1144 TEST_F(ExtensionPrefsSetExtensionControlledPref,
1145 ExtensionPrefsSetExtensionControlledPref) {} 1145 ExtensionPrefsSetExtensionControlledPref) {}
1146 1146
1147 // Tests that the switches::kDisableExtensions command-line flag prevents 1147 // Tests that the switches::kDisableExtensions command-line flag prevents
1148 // extension controlled preferences from being enacted. 1148 // extension controlled preferences from being enacted.
1149 class ExtensionPrefsDisableExtensions : public ExtensionPrefsPrepopulatedTest { 1149 class ExtensionPrefsDisableExtensions : public ExtensionPrefsPrepopulatedTest {
1150 public: 1150 public:
1151 ExtensionPrefsDisableExtensions() 1151 ExtensionPrefsDisableExtensions()
1152 : iteration_(0) {} 1152 : iteration_(0) {}
1153 virtual ~ExtensionPrefsDisableExtensions() {} 1153 virtual ~ExtensionPrefsDisableExtensions() {}
1154 virtual void Initialize() { 1154 virtual void Initialize() OVERRIDE {
1155 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1")); 1155 InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1"));
1156 // This becomes only active in the second verification phase. 1156 // This becomes only active in the second verification phase.
1157 prefs_.set_extensions_disabled(true); 1157 prefs_.set_extensions_disabled(true);
1158 } 1158 }
1159 virtual void Verify() { 1159 virtual void Verify() OVERRIDE {
1160 std::string actual = prefs()->pref_service()->GetString(kPref1); 1160 std::string actual = prefs()->pref_service()->GetString(kPref1);
1161 if (iteration_ == 0) { 1161 if (iteration_ == 0) {
1162 EXPECT_EQ("val1", actual); 1162 EXPECT_EQ("val1", actual);
1163 ++iteration_; 1163 ++iteration_;
1164 } else { 1164 } else {
1165 EXPECT_EQ(kDefaultPref1, actual); 1165 EXPECT_EQ(kDefaultPref1, actual);
1166 } 1166 }
1167 } 1167 }
1168 1168
1169 private: 1169 private:
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
1244 1244
1245 private: 1245 private:
1246 scoped_refptr<const Extension> extension_a_; 1246 scoped_refptr<const Extension> extension_a_;
1247 scoped_refptr<const Extension> extension_b_; 1247 scoped_refptr<const Extension> extension_b_;
1248 scoped_refptr<const Extension> extension_c_; 1248 scoped_refptr<const Extension> extension_c_;
1249 }; 1249 };
1250 TEST_F(ExtensionPrefsBlacklistedExtensions, 1250 TEST_F(ExtensionPrefsBlacklistedExtensions,
1251 ExtensionPrefsBlacklistedExtensions) {} 1251 ExtensionPrefsBlacklistedExtensions) {}
1252 1252
1253 } // namespace extensions 1253 } // namespace extensions
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extension_messages_apitest.cc ('k') | chrome/browser/extensions/extension_process_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698