summaryrefslogtreecommitdiffstats
path: root/chrome/common/extensions/extension_unittest.cc
diff options
context:
space:
mode:
authorphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-13 17:25:12 +0000
committerphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-13 17:25:12 +0000
commitd6336a9e8c15b5f3b0be1da2685fcc471e27fbac (patch)
tree9db441797f9e945735cbbe5a16693ae068972b23 /chrome/common/extensions/extension_unittest.cc
parent399c16fa178366fb55aa8e8b5acd313beede6a40 (diff)
downloadchromium_src-d6336a9e8c15b5f3b0be1da2685fcc471e27fbac.zip
chromium_src-d6336a9e8c15b5f3b0be1da2685fcc471e27fbac.tar.gz
chromium_src-d6336a9e8c15b5f3b0be1da2685fcc471e27fbac.tar.bz2
Add privacy_blacklists key to extension manifest and validate it.
This is the first step towards shipping privacy blacklists in extensions. TEST=Covered by unit_tests. BUG=none Review URL: http://codereview.chromium.org/164349 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23316 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/extensions/extension_unittest.cc')
-rw-r--r--chrome/common/extensions/extension_unittest.cc17
1 files changed, 16 insertions, 1 deletions
diff --git a/chrome/common/extensions/extension_unittest.cc b/chrome/common/extensions/extension_unittest.cc
index a0eed4e..fc97cc1 100644
--- a/chrome/common/extensions/extension_unittest.cc
+++ b/chrome/common/extensions/extension_unittest.cc
@@ -52,8 +52,8 @@ TEST(ExtensionTest, InitFromValueInvalid) {
JSONFileValueSerializer serializer(extensions_path);
scoped_ptr<DictionaryValue> valid_value(
static_cast<DictionaryValue*>(serializer.Deserialize(&error)));
+ EXPECT_EQ("", error);
ASSERT_TRUE(valid_value.get());
- ASSERT_EQ("", error);
ASSERT_TRUE(extension.InitFromValue(*valid_value, true, &error));
ASSERT_EQ("", error);
@@ -216,6 +216,21 @@ TEST(ExtensionTest, InitFromValueInvalid) {
permissions->Set(0, Value::CreateStringValue("file:///C:/foo.txt"));
EXPECT_FALSE(extension.InitFromValue(*input_value, true, &error));
EXPECT_TRUE(MatchPattern(error, errors::kInvalidPermissionScheme));
+
+ // Test invalid privacy blacklists list.
+ input_value.reset(static_cast<DictionaryValue*>(valid_value->DeepCopy()));
+ input_value->SetInteger(keys::kPrivacyBlacklists, 42);
+ EXPECT_FALSE(extension.InitFromValue(*input_value, true, &error));
+ EXPECT_EQ(errors::kInvalidPrivacyBlacklists, error);
+
+ // Test invalid privacy blacklists list item.
+ input_value.reset(static_cast<DictionaryValue*>(valid_value->DeepCopy()));
+ ListValue* privacy_blacklists = NULL;
+ input_value->GetList(keys::kPrivacyBlacklists, &privacy_blacklists);
+ ASSERT_FALSE(NULL == privacy_blacklists);
+ privacy_blacklists->Set(0, Value::CreateIntegerValue(42));
+ EXPECT_FALSE(extension.InitFromValue(*input_value, true, &error));
+ EXPECT_TRUE(MatchPattern(error, errors::kInvalidPrivacyBlacklistsPath));
}
TEST(ExtensionTest, InitFromValueValid) {