OLD | NEW |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 |
OLD | NEW |