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

Unified Diff: chrome/common/extensions/url_pattern_unittest.cc

Issue 8800006: Support chrome-extension:// scheme in URLPattern. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Addressed jam's comments Created 9 years 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
Index: chrome/common/extensions/url_pattern_unittest.cc
diff --git a/chrome/common/extensions/url_pattern_unittest.cc b/chrome/common/extensions/url_pattern_unittest.cc
index a78554f79a6046b697b23b5e2847e9ac372dbff9..f2c48581a7f96bdcb89c895d972b3e6407df86e2 100644
--- a/chrome/common/extensions/url_pattern_unittest.cc
+++ b/chrome/common/extensions/url_pattern_unittest.cc
@@ -14,7 +14,9 @@ static const int kAllSchemes =
URLPattern::SCHEME_HTTPS |
URLPattern::SCHEME_FILE |
URLPattern::SCHEME_FTP |
- URLPattern::SCHEME_CHROMEUI;
+ URLPattern::SCHEME_CHROMEUI |
+ URLPattern::SCHEME_EXTENSION |
+ URLPattern::SCHEME_FILESYSTEM;
TEST(ExtensionURLPatternTest, ParseInvalid) {
const struct {
@@ -288,6 +290,7 @@ TEST(ExtensionURLPatternTest, Match11) {
EXPECT_TRUE(pattern.MatchesScheme("http"));
EXPECT_TRUE(pattern.MatchesScheme("https"));
EXPECT_TRUE(pattern.MatchesScheme("file"));
+ EXPECT_TRUE(pattern.MatchesScheme("chrome-extension"));
EXPECT_TRUE(pattern.match_subdomains());
EXPECT_TRUE(pattern.match_all_urls());
EXPECT_EQ("/*", pattern.path());
@@ -455,6 +458,25 @@ TEST(ExtensionURLPatternTest, Match18) {
EXPECT_TRUE(pattern.MatchesURL(GURL("http://www.example.com:8080/foo")));
}
+// chrome-extension://
+TEST(ExtensionURLPatternTest, Match19) {
+ URLPattern pattern(URLPattern::SCHEME_EXTENSION);
+ EXPECT_EQ(URLPattern::PARSE_SUCCESS,
+ pattern.Parse("chrome-extension://ftw/*",
+ URLPattern::ERROR_ON_PORTS));
+ EXPECT_EQ("chrome-extension", pattern.scheme());
+ EXPECT_EQ("ftw", pattern.host());
+ EXPECT_FALSE(pattern.match_subdomains());
+ EXPECT_FALSE(pattern.match_all_urls());
+ EXPECT_EQ("/*", pattern.path());
+ EXPECT_TRUE(pattern.MatchesURL(GURL("chrome-extension://ftw")));
+ EXPECT_TRUE(pattern.MatchesURL(
+ GURL("chrome-extension://ftw/http://google.com")));
+ EXPECT_TRUE(pattern.MatchesURL(
+ GURL("chrome-extension://ftw/https://google.com")));
+ EXPECT_FALSE(pattern.MatchesURL(GURL("chrome-extension://foobar")));
+};
+
static const struct GetAsStringPatterns {
const char* pattern;
} kGetAsStringTestCases[] = {
@@ -561,7 +583,7 @@ TEST(ExtensionURLPatternTest, ConvertToExplicitSchemes) {
URLPattern::SCHEME_FTP,
"http://google.com/monkey").ConvertToExplicitSchemes());
- ASSERT_EQ(5u, all_urls.size());
+ ASSERT_EQ(7u, all_urls.size());
ASSERT_EQ(2u, all_schemes.size());
ASSERT_EQ(1u, monkey.size());
« chrome/common/extensions/url_pattern.cc ('K') | « chrome/common/extensions/url_pattern.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698