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

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

Issue 3039005: Fix some issues with extensions: (Closed)
Patch Set: fix host perms Created 10 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 | « chrome/common/extensions/url_pattern.h ('k') | chrome/common/extensions/user_script_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 f25052fab00db56290476626a42f66d8e015a24b..03558b970eb2c0d48608cd22fb228cd7bbb0c47c 100644
--- a/chrome/common/extensions/url_pattern_unittest.cc
+++ b/chrome/common/extensions/url_pattern_unittest.cc
@@ -8,6 +8,13 @@
// See url_pattern.h for examples of valid and invalid patterns.
+static const int kAllSchemes =
+ URLPattern::SCHEME_HTTP |
+ URLPattern::SCHEME_HTTPS |
+ URLPattern::SCHEME_FILE |
+ URLPattern::SCHEME_FTP |
+ URLPattern::SCHEME_CHROMEUI;
+
TEST(URLPatternTest, ParseInvalid) {
const char* kInvalidPatterns[] = {
"http", // no scheme
@@ -28,7 +35,7 @@ TEST(URLPatternTest, ParseInvalid) {
// all pages for a given scheme
TEST(URLPatternTest, Match1) {
- URLPattern pattern(URLPattern::SCHEMES_ALL);
+ URLPattern pattern(kAllSchemes);
EXPECT_TRUE(pattern.Parse("http://*/*"));
EXPECT_EQ("http", pattern.scheme());
EXPECT_EQ("", pattern.host());
@@ -44,7 +51,7 @@ TEST(URLPatternTest, Match1) {
// all domains
TEST(URLPatternTest, Match2) {
- URLPattern pattern(URLPattern::SCHEMES_ALL);
+ URLPattern pattern(kAllSchemes);
EXPECT_TRUE(pattern.Parse("https://*/foo*"));
EXPECT_EQ("https", pattern.scheme());
EXPECT_EQ("", pattern.host());
@@ -59,7 +66,7 @@ TEST(URLPatternTest, Match2) {
// subdomains
TEST(URLPatternTest, Match3) {
- URLPattern pattern(URLPattern::SCHEMES_ALL);
+ URLPattern pattern(kAllSchemes);
EXPECT_TRUE(pattern.Parse("http://*.google.com/foo*bar"));
EXPECT_EQ("http", pattern.scheme());
EXPECT_EQ("google.com", pattern.host());
@@ -75,7 +82,7 @@ TEST(URLPatternTest, Match3) {
// glob escaping
TEST(URLPatternTest, Match5) {
- URLPattern pattern(URLPattern::SCHEMES_ALL);
+ URLPattern pattern(kAllSchemes);
EXPECT_TRUE(pattern.Parse("file:///foo?bar\\*baz"));
EXPECT_EQ("file", pattern.scheme());
EXPECT_EQ("", pattern.host());
@@ -88,7 +95,7 @@ TEST(URLPatternTest, Match5) {
// ip addresses
TEST(URLPatternTest, Match6) {
- URLPattern pattern(URLPattern::SCHEMES_ALL);
+ URLPattern pattern(kAllSchemes);
EXPECT_TRUE(pattern.Parse("http://127.0.0.1/*"));
EXPECT_EQ("http", pattern.scheme());
EXPECT_EQ("127.0.0.1", pattern.host());
@@ -100,7 +107,7 @@ TEST(URLPatternTest, Match6) {
// subdomain matching with ip addresses
TEST(URLPatternTest, Match7) {
- URLPattern pattern(URLPattern::SCHEMES_ALL);
+ URLPattern pattern(kAllSchemes);
EXPECT_TRUE(pattern.Parse("http://*.0.0.1/*")); // allowed, but useless
EXPECT_EQ("http", pattern.scheme());
EXPECT_EQ("0.0.1", pattern.host());
@@ -113,7 +120,7 @@ TEST(URLPatternTest, Match7) {
// unicode
TEST(URLPatternTest, Match8) {
- URLPattern pattern(URLPattern::SCHEMES_ALL);
+ URLPattern pattern(kAllSchemes);
// The below is the ASCII encoding of the following URL:
// http://*.\xe1\x80\xbf/a\xc2\x81\xe1*
EXPECT_TRUE(pattern.Parse("http://*.xn--gkd/a%C2%81%E1*"));
@@ -130,7 +137,7 @@ TEST(URLPatternTest, Match8) {
// chrome://
TEST(URLPatternTest, Match9) {
- URLPattern pattern(URLPattern::SCHEMES_ALL);
+ URLPattern pattern(kAllSchemes);
EXPECT_TRUE(pattern.Parse("chrome://favicon/*"));
EXPECT_EQ("chrome", pattern.scheme());
EXPECT_EQ("favicon", pattern.host());
@@ -144,7 +151,7 @@ TEST(URLPatternTest, Match9) {
// *://
TEST(URLPatternTest, Match10) {
- URLPattern pattern(URLPattern::SCHEMES_ALL);
+ URLPattern pattern(kAllSchemes);
EXPECT_TRUE(pattern.Parse("*://*/*"));
EXPECT_TRUE(pattern.MatchesScheme("http"));
EXPECT_TRUE(pattern.MatchesScheme("https"));
@@ -161,7 +168,7 @@ TEST(URLPatternTest, Match10) {
// <all_urls>
TEST(URLPatternTest, Match11) {
- URLPattern pattern(URLPattern::SCHEMES_ALL);
+ URLPattern pattern(kAllSchemes);
EXPECT_TRUE(pattern.Parse("<all_urls>"));
EXPECT_TRUE(pattern.MatchesScheme("chrome"));
EXPECT_TRUE(pattern.MatchesScheme("http"));
@@ -184,17 +191,17 @@ void TestPatternOverlap(const URLPattern& pattern1, const URLPattern& pattern2,
}
TEST(URLPatternTest, OverlapsWith) {
- URLPattern pattern1(URLPattern::SCHEMES_ALL, "http://www.google.com/foo/*");
- URLPattern pattern2(URLPattern::SCHEMES_ALL, "https://www.google.com/foo/*");
- URLPattern pattern3(URLPattern::SCHEMES_ALL, "http://*.google.com/foo/*");
- URLPattern pattern4(URLPattern::SCHEMES_ALL, "http://*.yahooo.com/foo/*");
- URLPattern pattern5(URLPattern::SCHEMES_ALL, "http://www.yahooo.com/bar/*");
- URLPattern pattern6(URLPattern::SCHEMES_ALL,
+ URLPattern pattern1(kAllSchemes, "http://www.google.com/foo/*");
+ URLPattern pattern2(kAllSchemes, "https://www.google.com/foo/*");
+ URLPattern pattern3(kAllSchemes, "http://*.google.com/foo/*");
+ URLPattern pattern4(kAllSchemes, "http://*.yahooo.com/foo/*");
+ URLPattern pattern5(kAllSchemes, "http://www.yahooo.com/bar/*");
+ URLPattern pattern6(kAllSchemes,
"http://www.yahooo.com/bar/baz/*");
- URLPattern pattern7(URLPattern::SCHEMES_ALL, "file:///*");
- URLPattern pattern8(URLPattern::SCHEMES_ALL, "*://*/*");
+ URLPattern pattern7(kAllSchemes, "file:///*");
+ URLPattern pattern8(kAllSchemes, "*://*/*");
URLPattern pattern9(URLPattern::SCHEME_HTTPS, "*://*/*");
- URLPattern pattern10(URLPattern::SCHEMES_ALL, "<all_urls>");
+ URLPattern pattern10(kAllSchemes, "<all_urls>");
TestPatternOverlap(pattern1, pattern1, true);
TestPatternOverlap(pattern1, pattern2, false);
@@ -216,11 +223,11 @@ TEST(URLPatternTest, OverlapsWith) {
TEST(URLPatternTest, ConvertToExplicitSchemes) {
std::vector<URLPattern> all_urls(URLPattern(
- URLPattern::SCHEMES_ALL,
+ kAllSchemes,
"<all_urls>").ConvertToExplicitSchemes());
std::vector<URLPattern> all_schemes(URLPattern(
- URLPattern::SCHEMES_ALL,
+ kAllSchemes,
"*://google.com/foo").ConvertToExplicitSchemes());
std::vector<URLPattern> monkey(URLPattern(
« no previous file with comments | « chrome/common/extensions/url_pattern.h ('k') | chrome/common/extensions/user_script_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698