summaryrefslogtreecommitdiffstats
path: root/chrome/common/extensions/simple_feature_provider_unittest.cc
diff options
context:
space:
mode:
authoraa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-04-05 08:15:30 +0000
committeraa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-04-05 08:15:30 +0000
commitb3ee317ffd1621d89a8ce1b330586667d5f9ba41 (patch)
tree6c7e4a0929a9411eda0d09c71826b88ab47c5789 /chrome/common/extensions/simple_feature_provider_unittest.cc
parentf5e2e4a2810d8f33261d66edf85347ccca8fb2f5 (diff)
downloadchromium_src-b3ee317ffd1621d89a8ce1b330586667d5f9ba41.zip
chromium_src-b3ee317ffd1621d89a8ce1b330586667d5f9ba41.tar.gz
chromium_src-b3ee317ffd1621d89a8ce1b330586667d5f9ba41.tar.bz2
Don't cache JSON objects in SimpleFeatureProvider
BUG=120068 Review URL: http://codereview.chromium.org/9958055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130866 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/extensions/simple_feature_provider_unittest.cc')
-rw-r--r--chrome/common/extensions/simple_feature_provider_unittest.cc29
1 files changed, 16 insertions, 13 deletions
diff --git a/chrome/common/extensions/simple_feature_provider_unittest.cc b/chrome/common/extensions/simple_feature_provider_unittest.cc
index 401828e..3d9dd72 100644
--- a/chrome/common/extensions/simple_feature_provider_unittest.cc
+++ b/chrome/common/extensions/simple_feature_provider_unittest.cc
@@ -12,8 +12,8 @@ using extensions::SimpleFeatureProvider;
TEST(SimpleFeatureProvider, ManifestFeatures) {
SimpleFeatureProvider* provider =
SimpleFeatureProvider::GetManifestFeatures();
- scoped_ptr<Feature> feature = provider->GetFeature("description");
- ASSERT_TRUE(feature.get());
+ Feature* feature = provider->GetFeature("description");
+ ASSERT_TRUE(feature);
EXPECT_EQ(5u, feature->extension_types()->size());
EXPECT_EQ(1u, feature->extension_types()->count(Extension::TYPE_EXTENSION));
EXPECT_EQ(1u,
@@ -38,12 +38,12 @@ TEST(SimpleFeatureProvider, ManifestFeatures) {
extension.get(), Feature::UNSPECIFIED_CONTEXT));
feature = provider->GetFeature("theme");
- ASSERT_TRUE(feature.get());
+ ASSERT_TRUE(feature);
EXPECT_EQ(Feature::INVALID_TYPE, feature->IsAvailableToContext(
extension.get(), Feature::UNSPECIFIED_CONTEXT));
feature = provider->GetFeature("devtools_page");
- ASSERT_TRUE(feature.get());
+ ASSERT_TRUE(feature);
EXPECT_EQ(Feature::NOT_PRESENT, feature->IsAvailableToContext(
extension.get(), Feature::UNSPECIFIED_CONTEXT));
}
@@ -51,8 +51,8 @@ TEST(SimpleFeatureProvider, ManifestFeatures) {
TEST(SimpleFeatureProvider, PermissionFeatures) {
SimpleFeatureProvider* provider =
SimpleFeatureProvider::GetPermissionFeatures();
- scoped_ptr<Feature> feature = provider->GetFeature("browsingData");
- ASSERT_TRUE(feature.get());
+ Feature* feature = provider->GetFeature("browsingData");
+ ASSERT_TRUE(feature);
EXPECT_EQ(3u, feature->extension_types()->size());
EXPECT_EQ(1u, feature->extension_types()->count(Extension::TYPE_EXTENSION));
EXPECT_EQ(1u,
@@ -77,12 +77,12 @@ TEST(SimpleFeatureProvider, PermissionFeatures) {
extension.get(), Feature::UNSPECIFIED_CONTEXT));
feature = provider->GetFeature("chromePrivate");
- ASSERT_TRUE(feature.get());
+ ASSERT_TRUE(feature);
EXPECT_EQ(Feature::NOT_FOUND_IN_WHITELIST, feature->IsAvailableToContext(
extension.get(), Feature::UNSPECIFIED_CONTEXT));
feature = provider->GetFeature("clipboardWrite");
- ASSERT_TRUE(feature.get());
+ ASSERT_TRUE(feature);
EXPECT_EQ(Feature::NOT_PRESENT, feature->IsAvailableToContext(
extension.get(), Feature::UNSPECIFIED_CONTEXT));
}
@@ -102,19 +102,22 @@ TEST(SimpleFeatureProvider, Validation) {
feature2->Set("contexts", contexts);
value->Set("feature2", feature2);
- SimpleFeatureProvider provider(value.Pass(), NULL);
+ scoped_ptr<SimpleFeatureProvider> provider(
+ new SimpleFeatureProvider(value.get(), NULL));
// feature1 won't validate because it lacks an extension type.
- EXPECT_FALSE(provider.GetFeature("feature1").get());
+ EXPECT_FALSE(provider->GetFeature("feature1"));
// If we add one, it works.
feature1->Set("extension_types", extension_types->DeepCopy());
- EXPECT_TRUE(provider.GetFeature("feature1").get());
+ provider.reset(new SimpleFeatureProvider(value.get(), NULL));
+ EXPECT_TRUE(provider->GetFeature("feature1"));
// feature2 won't validate because of the presence of "contexts".
- EXPECT_FALSE(provider.GetFeature("feature2").get());
+ EXPECT_FALSE(provider->GetFeature("feature2"));
// If we remove it, it works.
feature2->Remove("contexts", NULL);
- EXPECT_TRUE(provider.GetFeature("feature2").get());
+ provider.reset(new SimpleFeatureProvider(value.get(), NULL));
+ EXPECT_TRUE(provider->GetFeature("feature2"));
}