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

Unified Diff: extensions/common/features/simple_feature_unittest.cc

Issue 2116293003: extensions: Generate hash of extension ID at a higher level Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « extensions/common/features/simple_feature.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: extensions/common/features/simple_feature_unittest.cc
diff --git a/extensions/common/features/simple_feature_unittest.cc b/extensions/common/features/simple_feature_unittest.cc
index f24c0fb786a53299a7d4bf429edaa3b470bc074e..8f97cd909311ddc04f78c49d0e066c8ed60bd2b7 100644
--- a/extensions/common/features/simple_feature_unittest.cc
+++ b/extensions/common/features/simple_feature_unittest.cc
@@ -39,11 +39,11 @@ class SimpleFeatureTest : public testing::Test {
SimpleFeature feature;
feature.set_location(feature_location);
Feature::AvailabilityResult availability_result =
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_UNKNOWN,
- manifest_location,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result();
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_UNKNOWN, manifest_location,
+ -1, Feature::UNSPECIFIED_PLATFORM)
+ .result();
return availability_result == Feature::IS_AVAILABLE;
}
};
@@ -69,11 +69,12 @@ TEST_F(SimpleFeatureTest, IsAvailableNullCase) {
for (size_t i = 0; i < arraysize(tests); ++i) {
const IsAvailableTestData& test = tests[i];
EXPECT_EQ(test.expected_result,
- feature.IsAvailableToManifest(test.extension_id,
- test.extension_type,
- test.location,
- test.manifest_version,
- test.platform).result());
+ feature
+ .IsAvailableToManifest(test.extension_id,
+ HashedIdInHex(test.extension_id),
+ test.extension_type, test.location,
+ test.manifest_version, test.platform)
+ .result());
}
}
@@ -85,44 +86,44 @@ TEST_F(SimpleFeatureTest, Whitelist) {
feature.whitelist()->push_back(kIdFoo);
feature.whitelist()->push_back(kIdBar);
- EXPECT_EQ(
- Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest(kIdFoo,
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
- EXPECT_EQ(
- Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest(kIdBar,
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
-
- EXPECT_EQ(
- Feature::NOT_FOUND_IN_WHITELIST,
- feature.IsAvailableToManifest(kIdBaz,
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
- EXPECT_EQ(
- Feature::NOT_FOUND_IN_WHITELIST,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
+ EXPECT_EQ(Feature::IS_AVAILABLE,
+ feature
+ .IsAvailableToManifest(kIdFoo, HashedIdInHex(kIdFoo),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
+ EXPECT_EQ(Feature::IS_AVAILABLE,
+ feature
+ .IsAvailableToManifest(kIdBar, HashedIdInHex(kIdBar),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
+
+ EXPECT_EQ(Feature::NOT_FOUND_IN_WHITELIST,
+ feature
+ .IsAvailableToManifest(kIdBaz, HashedIdInHex(kIdBaz),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
+ EXPECT_EQ(Feature::NOT_FOUND_IN_WHITELIST,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
feature.extension_types()->push_back(Manifest::TYPE_LEGACY_PACKAGED_APP);
- EXPECT_EQ(
- Feature::NOT_FOUND_IN_WHITELIST,
- feature.IsAvailableToManifest(kIdBaz,
- Manifest::TYPE_LEGACY_PACKAGED_APP,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
+ EXPECT_EQ(Feature::NOT_FOUND_IN_WHITELIST,
+ feature
+ .IsAvailableToManifest(kIdBaz, HashedIdInHex(kIdBaz),
+ Manifest::TYPE_LEGACY_PACKAGED_APP,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
}
TEST_F(SimpleFeatureTest, HashedIdWhitelist) {
@@ -134,34 +135,36 @@ TEST_F(SimpleFeatureTest, HashedIdWhitelist) {
feature.whitelist()->push_back(kIdFooHashed);
- EXPECT_EQ(
- Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest(kIdFoo,
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
+ EXPECT_EQ(Feature::IS_AVAILABLE,
+ feature
+ .IsAvailableToManifest(kIdFoo, HashedIdInHex(kIdFoo),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
EXPECT_NE(
Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest(kIdFooHashed,
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
- EXPECT_EQ(
- Feature::NOT_FOUND_IN_WHITELIST,
- feature.IsAvailableToManifest("slightlytoooolongforanextensionid",
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
+ feature
+ .IsAvailableToManifest(
+ kIdFooHashed, HashedIdInHex(kIdFooHashed), Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1, Feature::UNSPECIFIED_PLATFORM)
+ .result());
+ EXPECT_EQ(Feature::NOT_FOUND_IN_WHITELIST,
+ feature
+ .IsAvailableToManifest(
+ "slightlytoooolongforanextensionid",
+ HashedIdInHex("slightlytoooolongforanextensionid"),
+ Manifest::TYPE_UNKNOWN, Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
EXPECT_EQ(
Feature::NOT_FOUND_IN_WHITELIST,
- feature.IsAvailableToManifest("tooshortforanextensionid",
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
+ feature
+ .IsAvailableToManifest(
+ "tooshortforanextensionid",
+ HashedIdInHex("tooshortforanextensionid"), Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1, Feature::UNSPECIFIED_PLATFORM)
+ .result());
}
TEST_F(SimpleFeatureTest, Blacklist) {
@@ -172,35 +175,35 @@ TEST_F(SimpleFeatureTest, Blacklist) {
feature.blacklist()->push_back(kIdFoo);
feature.blacklist()->push_back(kIdBar);
- EXPECT_EQ(
- Feature::FOUND_IN_BLACKLIST,
- feature.IsAvailableToManifest(kIdFoo,
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
- EXPECT_EQ(
- Feature::FOUND_IN_BLACKLIST,
- feature.IsAvailableToManifest(kIdBar,
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
+ EXPECT_EQ(Feature::FOUND_IN_BLACKLIST,
+ feature
+ .IsAvailableToManifest(kIdFoo, HashedIdInHex(kIdFoo),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
+ EXPECT_EQ(Feature::FOUND_IN_BLACKLIST,
+ feature
+ .IsAvailableToManifest(kIdBar, HashedIdInHex(kIdBar),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
- EXPECT_EQ(
- Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest(kIdBaz,
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
- EXPECT_EQ(
- Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
+ EXPECT_EQ(Feature::IS_AVAILABLE,
+ feature
+ .IsAvailableToManifest(kIdBaz, HashedIdInHex(kIdBaz),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
+ EXPECT_EQ(Feature::IS_AVAILABLE,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
}
TEST_F(SimpleFeatureTest, HashedIdBlacklist) {
@@ -212,34 +215,36 @@ TEST_F(SimpleFeatureTest, HashedIdBlacklist) {
feature.blacklist()->push_back(kIdFooHashed);
- EXPECT_EQ(
- Feature::FOUND_IN_BLACKLIST,
- feature.IsAvailableToManifest(kIdFoo,
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
+ EXPECT_EQ(Feature::FOUND_IN_BLACKLIST,
+ feature
+ .IsAvailableToManifest(kIdFoo, HashedIdInHex(kIdFoo),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
EXPECT_NE(
Feature::FOUND_IN_BLACKLIST,
- feature.IsAvailableToManifest(kIdFooHashed,
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
- EXPECT_EQ(
- Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest("slightlytoooolongforanextensionid",
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
+ feature
+ .IsAvailableToManifest(
+ kIdFooHashed, HashedIdInHex(kIdFooHashed), Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1, Feature::UNSPECIFIED_PLATFORM)
+ .result());
+ EXPECT_EQ(Feature::IS_AVAILABLE,
+ feature
+ .IsAvailableToManifest(
+ "slightlytoooolongforanextensionid",
+ HashedIdInHex("slightlytoooolongforanextensionid"),
+ Manifest::TYPE_UNKNOWN, Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
EXPECT_EQ(
Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest("tooshortforanextensionid",
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
+ feature
+ .IsAvailableToManifest(
+ "tooshortforanextensionid",
+ HashedIdInHex("tooshortforanextensionid"), Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1, Feature::UNSPECIFIED_PLATFORM)
+ .result());
}
TEST_F(SimpleFeatureTest, PackageType) {
@@ -247,35 +252,35 @@ TEST_F(SimpleFeatureTest, PackageType) {
feature.extension_types()->push_back(Manifest::TYPE_EXTENSION);
feature.extension_types()->push_back(Manifest::TYPE_LEGACY_PACKAGED_APP);
- EXPECT_EQ(
- Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_EXTENSION,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
- EXPECT_EQ(
- Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_LEGACY_PACKAGED_APP,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
-
- EXPECT_EQ(
- Feature::INVALID_TYPE,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
- EXPECT_EQ(
- Feature::INVALID_TYPE,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_THEME,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
+ EXPECT_EQ(Feature::IS_AVAILABLE,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_EXTENSION,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
+ EXPECT_EQ(Feature::IS_AVAILABLE,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_LEGACY_PACKAGED_APP,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
+
+ EXPECT_EQ(Feature::INVALID_TYPE,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
+ EXPECT_EQ(Feature::INVALID_TYPE,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_THEME,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
}
TEST_F(SimpleFeatureTest, Context) {
@@ -420,77 +425,77 @@ TEST_F(SimpleFeatureTest, Platform) {
SimpleFeature feature;
feature.platforms()->push_back(Feature::CHROMEOS_PLATFORM);
EXPECT_EQ(Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::CHROMEOS_PLATFORM).result());
- EXPECT_EQ(
- Feature::INVALID_PLATFORM,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- -1,
- Feature::UNSPECIFIED_PLATFORM).result());
+ feature
+ .IsAvailableToManifest(
+ std::string(), std::string(), Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1, Feature::CHROMEOS_PLATFORM)
+ .result());
+ EXPECT_EQ(Feature::INVALID_PLATFORM,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, -1,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
}
TEST_F(SimpleFeatureTest, ManifestVersion) {
SimpleFeature feature;
feature.set_min_manifest_version(5);
- EXPECT_EQ(
- Feature::INVALID_MIN_MANIFEST_VERSION,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- 0,
- Feature::UNSPECIFIED_PLATFORM).result());
- EXPECT_EQ(
- Feature::INVALID_MIN_MANIFEST_VERSION,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- 4,
- Feature::UNSPECIFIED_PLATFORM).result());
+ EXPECT_EQ(Feature::INVALID_MIN_MANIFEST_VERSION,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, 0,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
+ EXPECT_EQ(Feature::INVALID_MIN_MANIFEST_VERSION,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, 4,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
- EXPECT_EQ(
- Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- 5,
- Feature::UNSPECIFIED_PLATFORM).result());
- EXPECT_EQ(
- Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- 10,
- Feature::UNSPECIFIED_PLATFORM).result());
+ EXPECT_EQ(Feature::IS_AVAILABLE,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, 5,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
+ EXPECT_EQ(Feature::IS_AVAILABLE,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, 10,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
feature.set_max_manifest_version(8);
- EXPECT_EQ(
- Feature::INVALID_MAX_MANIFEST_VERSION,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- 10,
- Feature::UNSPECIFIED_PLATFORM).result());
- EXPECT_EQ(
- Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- 8,
- Feature::UNSPECIFIED_PLATFORM).result());
- EXPECT_EQ(
- Feature::IS_AVAILABLE,
- feature.IsAvailableToManifest(std::string(),
- Manifest::TYPE_UNKNOWN,
- Manifest::INVALID_LOCATION,
- 7,
- Feature::UNSPECIFIED_PLATFORM).result());
+ EXPECT_EQ(Feature::INVALID_MAX_MANIFEST_VERSION,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, 10,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
+ EXPECT_EQ(Feature::IS_AVAILABLE,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, 8,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
+ EXPECT_EQ(Feature::IS_AVAILABLE,
+ feature
+ .IsAvailableToManifest(std::string(), std::string(),
+ Manifest::TYPE_UNKNOWN,
+ Manifest::INVALID_LOCATION, 7,
+ Feature::UNSPECIFIED_PLATFORM)
+ .result());
}
TEST_F(SimpleFeatureTest, ParseNull) {
« no previous file with comments | « extensions/common/features/simple_feature.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698