| Index: extensions/common/url_pattern_unittest.cc
|
| diff --git a/extensions/common/url_pattern_unittest.cc b/extensions/common/url_pattern_unittest.cc
|
| index 3e0c816ac35ec2d82a15a5814ed43241b3002d87..e146d50d0213db036683a50c818aedc8983f3b94 100644
|
| --- a/extensions/common/url_pattern_unittest.cc
|
| +++ b/extensions/common/url_pattern_unittest.cc
|
| @@ -18,7 +18,8 @@ static const int kAllSchemes =
|
| URLPattern::SCHEME_FTP |
|
| URLPattern::SCHEME_CHROMEUI |
|
| URLPattern::SCHEME_EXTENSION |
|
| - URLPattern::SCHEME_FILESYSTEM;
|
| + URLPattern::SCHEME_FILESYSTEM|
|
| + URLPattern::SCHEME_ABOUT;
|
|
|
| TEST(ExtensionURLPatternTest, ParseInvalid) {
|
| const struct {
|
| @@ -236,6 +237,7 @@ TEST(ExtensionURLPatternTest, Match11) {
|
| EXPECT_TRUE(pattern.MatchesScheme("file"));
|
| EXPECT_TRUE(pattern.MatchesScheme("filesystem"));
|
| EXPECT_TRUE(pattern.MatchesScheme("chrome-extension"));
|
| + EXPECT_TRUE(pattern.MatchesScheme("about"));
|
| EXPECT_TRUE(pattern.match_subdomains());
|
| EXPECT_TRUE(pattern.match_all_urls());
|
| EXPECT_EQ("/*", pattern.path());
|
| @@ -243,6 +245,7 @@ TEST(ExtensionURLPatternTest, Match11) {
|
| EXPECT_TRUE(pattern.MatchesURL(GURL("http://127.0.0.1")));
|
| EXPECT_TRUE(pattern.MatchesURL(GURL("file:///foo/bar")));
|
| EXPECT_TRUE(pattern.MatchesURL(GURL("file://localhost/foo/bar")));
|
| + EXPECT_TRUE(pattern.MatchesURL(GURL("about:blank")));
|
|
|
| // Make sure the properties are the same when creating an <all_urls> pattern
|
| // via SetMatchAllURLs and by parsing <all_urls>.
|
| @@ -422,6 +425,19 @@ TEST(ExtensionURLPatternTest, Match19) {
|
| GURL("filesystem:chrome-extension://ftw/t/file.txt")));
|
| };
|
|
|
| +// about:
|
| +TEST(ExtensionURLPatternTest, Match20) {
|
| + URLPattern pattern(URLPattern::SCHEME_ABOUT);
|
| + EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("about:blank"));
|
| + EXPECT_EQ("about", pattern.scheme());
|
| + EXPECT_EQ("", pattern.host());
|
| + EXPECT_FALSE(pattern.match_subdomains());
|
| + EXPECT_FALSE(pattern.match_all_urls());
|
| + EXPECT_EQ("blank", pattern.path());
|
| + EXPECT_TRUE(pattern.MatchesURL(GURL("about:blank")));
|
| + EXPECT_FALSE(pattern.MatchesURL(GURL("about:srcdoc")));
|
| +};
|
| +
|
| static const struct GetAsStringPatterns {
|
| const char* pattern;
|
| } kGetAsStringTestCases[] = {
|
| @@ -527,7 +543,7 @@ TEST(ExtensionURLPatternTest, ConvertToExplicitSchemes) {
|
| URLPattern::SCHEME_FTP,
|
| "http://google.com/monkey").ConvertToExplicitSchemes());
|
|
|
| - ASSERT_EQ(7u, all_urls.size());
|
| + ASSERT_EQ(8u, all_urls.size());
|
| ASSERT_EQ(2u, all_schemes.size());
|
| ASSERT_EQ(1u, monkey.size());
|
|
|
| @@ -536,6 +552,7 @@ TEST(ExtensionURLPatternTest, ConvertToExplicitSchemes) {
|
| EXPECT_EQ("file:///*", all_urls[2].GetAsString());
|
| EXPECT_EQ("ftp://*/*", all_urls[3].GetAsString());
|
| EXPECT_EQ("chrome://*/*", all_urls[4].GetAsString());
|
| + EXPECT_EQ("about:/*", all_urls[7].GetAsString());
|
|
|
| EXPECT_EQ("http://google.com/foo", all_schemes[0].GetAsString());
|
| EXPECT_EQ("https://google.com/foo", all_schemes[1].GetAsString());
|
|
|