| Index: chrome/browser/extensions/extension_prefs_unittest.cc
|
| diff --git a/chrome/browser/extensions/extension_prefs_unittest.cc b/chrome/browser/extensions/extension_prefs_unittest.cc
|
| index f582077f96ac1c1362fa09cd1b6332dc545d8eb9..2ed6588554c28632bf78f17d1049aa70f17becfd 100644
|
| --- a/chrome/browser/extensions/extension_prefs_unittest.cc
|
| +++ b/chrome/browser/extensions/extension_prefs_unittest.cc
|
| @@ -219,32 +219,32 @@ class ExtensionPrefsGrantedPermissions : public ExtensionPrefsTest {
|
|
|
| ExtensionAPIPermissionSet empty_set;
|
| URLPatternSet empty_extent;
|
| - scoped_ptr<ExtensionPermissionSet> permissions;
|
| - scoped_ptr<ExtensionPermissionSet> granted_permissions;
|
| + scoped_refptr<ExtensionPermissionSet> permissions;
|
| + scoped_refptr<ExtensionPermissionSet> granted_permissions;
|
|
|
| // Make sure both granted api and host permissions start empty.
|
| - granted_permissions.reset(
|
| - prefs()->GetGrantedPermissions(extension_id_));
|
| + granted_permissions =
|
| + prefs()->GetGrantedPermissions(extension_id_);
|
| EXPECT_TRUE(granted_permissions->IsEmpty());
|
|
|
| - permissions.reset(new ExtensionPermissionSet(
|
| - api_perm_set1_, empty_extent, empty_extent));
|
| + permissions = new ExtensionPermissionSet(
|
| + api_perm_set1_, empty_extent, empty_extent);
|
|
|
| // Add part of the api permissions.
|
| prefs()->AddGrantedPermissions(extension_id_, permissions.get());
|
| - granted_permissions.reset(prefs()->GetGrantedPermissions(extension_id_));
|
| + granted_permissions = prefs()->GetGrantedPermissions(extension_id_);
|
| EXPECT_TRUE(granted_permissions.get());
|
| EXPECT_FALSE(granted_permissions->IsEmpty());
|
| EXPECT_EQ(expected_apis, granted_permissions->apis());
|
| EXPECT_TRUE(granted_permissions->effective_hosts().is_empty());
|
| EXPECT_FALSE(granted_permissions->HasEffectiveFullAccess());
|
| - granted_permissions.reset();
|
| + granted_permissions = NULL;
|
|
|
| // Add part of the explicit host permissions.
|
| - permissions.reset(new ExtensionPermissionSet(
|
| - empty_set, ehost_perm_set1_, empty_extent));
|
| + permissions = new ExtensionPermissionSet(
|
| + empty_set, ehost_perm_set1_, empty_extent);
|
| prefs()->AddGrantedPermissions(extension_id_, permissions.get());
|
| - granted_permissions.reset(prefs()->GetGrantedPermissions(extension_id_));
|
| + granted_permissions = prefs()->GetGrantedPermissions(extension_id_);
|
| EXPECT_FALSE(granted_permissions->IsEmpty());
|
| EXPECT_FALSE(granted_permissions->HasEffectiveFullAccess());
|
| EXPECT_EQ(expected_apis, granted_permissions->apis());
|
| @@ -254,10 +254,10 @@ class ExtensionPrefsGrantedPermissions : public ExtensionPrefsTest {
|
| granted_permissions->effective_hosts());
|
|
|
| // Add part of the scriptable host permissions.
|
| - permissions.reset(new ExtensionPermissionSet(
|
| - empty_set, empty_extent, shost_perm_set1_));
|
| + permissions = new ExtensionPermissionSet(
|
| + empty_set, empty_extent, shost_perm_set1_);
|
| prefs()->AddGrantedPermissions(extension_id_, permissions.get());
|
| - granted_permissions.reset(prefs()->GetGrantedPermissions(extension_id_));
|
| + granted_permissions = prefs()->GetGrantedPermissions(extension_id_);
|
| EXPECT_FALSE(granted_permissions->IsEmpty());
|
| EXPECT_FALSE(granted_permissions->HasEffectiveFullAccess());
|
| EXPECT_EQ(expected_apis, granted_permissions->apis());
|
| @@ -271,15 +271,15 @@ class ExtensionPrefsGrantedPermissions : public ExtensionPrefsTest {
|
| EXPECT_EQ(effective_permissions_, granted_permissions->effective_hosts());
|
|
|
| // Add the rest of both the permissions.
|
| - permissions.reset(new ExtensionPermissionSet(
|
| - api_perm_set2_, ehost_perm_set2_, shost_perm_set2_));
|
| + permissions = new ExtensionPermissionSet(
|
| + api_perm_set2_, ehost_perm_set2_, shost_perm_set2_);
|
|
|
| std::set_union(expected_apis.begin(), expected_apis.end(),
|
| api_perm_set2_.begin(), api_perm_set2_.end(),
|
| std::inserter(api_permissions_, api_permissions_.begin()));
|
|
|
| prefs()->AddGrantedPermissions(extension_id_, permissions.get());
|
| - granted_permissions.reset(prefs()->GetGrantedPermissions(extension_id_));
|
| + granted_permissions = prefs()->GetGrantedPermissions(extension_id_);
|
| EXPECT_TRUE(granted_permissions.get());
|
| EXPECT_FALSE(granted_permissions->IsEmpty());
|
| EXPECT_EQ(api_permissions_, granted_permissions->apis());
|
| @@ -294,7 +294,7 @@ class ExtensionPrefsGrantedPermissions : public ExtensionPrefsTest {
|
| }
|
|
|
| virtual void Verify() {
|
| - scoped_ptr<ExtensionPermissionSet> permissions(
|
| + scoped_refptr<ExtensionPermissionSet> permissions(
|
| prefs()->GetGrantedPermissions(extension_id_));
|
| EXPECT_TRUE(permissions.get());
|
| EXPECT_FALSE(permissions->HasEffectiveFullAccess());
|
| @@ -321,6 +321,54 @@ class ExtensionPrefsGrantedPermissions : public ExtensionPrefsTest {
|
| };
|
| TEST_F(ExtensionPrefsGrantedPermissions, GrantedPermissions) {}
|
|
|
| +// Tests the SetActivePermissions / GetActivePermissions functions.
|
| +class ExtensionPrefsActivePermissions : public ExtensionPrefsTest {
|
| + public:
|
| + virtual void Initialize() {
|
| + extension_id_ = prefs_.AddExtensionAndReturnId("test");
|
| +
|
| + ExtensionAPIPermissionSet api_perms;
|
| + api_perms.insert(ExtensionAPIPermission::kTab);
|
| + api_perms.insert(ExtensionAPIPermission::kBookmark);
|
| + api_perms.insert(ExtensionAPIPermission::kHistory);
|
| +
|
| + URLPatternSet ehosts;
|
| + AddPattern(&ehosts, "http://*.google.com/*");
|
| + AddPattern(&ehosts, "http://example.com/*");
|
| + AddPattern(&ehosts, "chrome://favicon/*");
|
| +
|
| + URLPatternSet shosts;
|
| + AddPattern(&shosts, "https://*.google.com/*");
|
| + AddPattern(&shosts, "http://reddit.com/r/test/*");
|
| +
|
| + active_perms_ = new ExtensionPermissionSet(api_perms, ehosts, shosts);
|
| +
|
| + // Make sure the active permissions start empty.
|
| + scoped_refptr<ExtensionPermissionSet> active(
|
| + prefs()->GetActivePermissions(extension_id_));
|
| + EXPECT_TRUE(active->IsEmpty());
|
| +
|
| + // Set the active permissions.
|
| + prefs()->SetActivePermissions(extension_id_, active_perms_.get());
|
| + active = prefs()->GetActivePermissions(extension_id_);
|
| + EXPECT_EQ(active_perms_->apis(), active->apis());
|
| + EXPECT_EQ(active_perms_->explicit_hosts(), active->explicit_hosts());
|
| + EXPECT_EQ(active_perms_->scriptable_hosts(), active->scriptable_hosts());
|
| + EXPECT_EQ(*active_perms_, *active);
|
| + }
|
| +
|
| + virtual void Verify() {
|
| + scoped_refptr<ExtensionPermissionSet> permissions(
|
| + prefs()->GetActivePermissions(extension_id_));
|
| + EXPECT_EQ(*active_perms_, *permissions);
|
| + }
|
| +
|
| + private:
|
| + std::string extension_id_;
|
| + scoped_refptr<ExtensionPermissionSet> active_perms_;
|
| +};
|
| +TEST_F(ExtensionPrefsActivePermissions, SetAndGetActivePermissions) {}
|
| +
|
| // Tests the GetVersionString function.
|
| class ExtensionPrefsVersionString : public ExtensionPrefsTest {
|
| public:
|
|
|