Index: extensions/common/url_pattern_unittest.cc |
diff --git a/extensions/common/url_pattern_unittest.cc b/extensions/common/url_pattern_unittest.cc |
index 9618aeb16a175be5c0fdced0f59274fe49d51ecd..d4398a75092964696a76aba207946cedf2e4f0c3 100644 |
--- a/extensions/common/url_pattern_unittest.cc |
+++ b/extensions/common/url_pattern_unittest.cc |
@@ -810,4 +810,35 @@ TEST(ExtensionURLPatternTest, Subset) { |
EXPECT_TRUE(StrictlyContains(pattern12, pattern13)); |
} |
+TEST(ExtensionURLPatternTest, MatchesSingleOrigin) { |
+ EXPECT_FALSE( |
+ URLPattern(URLPattern::SCHEME_ALL, "http://*/").MatchesSingleOrigin()); |
+ EXPECT_FALSE(URLPattern(URLPattern::SCHEME_ALL, "https://*.google.com/*") |
+ .MatchesSingleOrigin()); |
+ EXPECT_TRUE(URLPattern(URLPattern::SCHEME_ALL, "http://google.com/") |
+ .MatchesSingleOrigin()); |
+ EXPECT_TRUE(URLPattern(URLPattern::SCHEME_ALL, "http://google.com/*") |
+ .MatchesSingleOrigin()); |
+ EXPECT_TRUE(URLPattern(URLPattern::SCHEME_ALL, "http://www.google.com/") |
+ .MatchesSingleOrigin()); |
+ EXPECT_FALSE(URLPattern(URLPattern::SCHEME_ALL, "*://www.google.com/") |
+ .MatchesSingleOrigin()); |
+ EXPECT_FALSE(URLPattern(URLPattern::SCHEME_ALL, "http://*.com/") |
+ .MatchesSingleOrigin()); |
+ EXPECT_FALSE(URLPattern(URLPattern::SCHEME_ALL, "http://*.google.com/foo/bar") |
+ .MatchesSingleOrigin()); |
+ EXPECT_TRUE( |
+ URLPattern(URLPattern::SCHEME_ALL, "http://www.google.com/foo/bar") |
+ .MatchesSingleOrigin()); |
+ EXPECT_FALSE(URLPattern(URLPattern::SCHEME_HTTPS, "*://*.google.com/foo/bar") |
+ .MatchesSingleOrigin()); |
+ EXPECT_TRUE(URLPattern(URLPattern::SCHEME_HTTPS, "https://www.google.com/") |
+ .MatchesSingleOrigin()); |
+ EXPECT_FALSE(URLPattern(URLPattern::SCHEME_HTTP, |
+ "http://*.google.com/foo/bar").MatchesSingleOrigin()); |
+ EXPECT_TRUE( |
+ URLPattern(URLPattern::SCHEME_HTTP, "http://www.google.com/foo/bar") |
+ .MatchesSingleOrigin()); |
+} |
+ |
} // namespace |