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

Side by Side Diff: extensions/common/url_pattern_unittest.cc

Issue 563263002: Cleanup: cpplint from /extensions (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 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 unified diff | Download patch
« no previous file with comments | « extensions/common/update_manifest.h ('k') | extensions/renderer/default_dispatcher_delegate.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/memory/scoped_ptr.h" 5 #include "base/memory/scoped_ptr.h"
6 #include "extensions/common/url_pattern.h" 6 #include "extensions/common/url_pattern.h"
7 #include "testing/gtest/include/gtest/gtest.h" 7 #include "testing/gtest/include/gtest/gtest.h"
8 #include "url/gurl.h" 8 #include "url/gurl.h"
9 9
10 namespace { 10 namespace {
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 } 47 }
48 48
49 { 49 {
50 // Cannot use a C string, because this contains a null byte. 50 // Cannot use a C string, because this contains a null byte.
51 std::string null_host("http://\0www/", 12); 51 std::string null_host("http://\0www/", 12);
52 URLPattern pattern(URLPattern::SCHEME_ALL); 52 URLPattern pattern(URLPattern::SCHEME_ALL);
53 EXPECT_EQ(URLPattern::PARSE_ERROR_INVALID_HOST, 53 EXPECT_EQ(URLPattern::PARSE_ERROR_INVALID_HOST,
54 pattern.Parse(null_host)) 54 pattern.Parse(null_host))
55 << null_host; 55 << null_host;
56 } 56 }
57 }; 57 }
58 58
59 TEST(ExtensionURLPatternTest, Ports) { 59 TEST(ExtensionURLPatternTest, Ports) {
60 const struct { 60 const struct {
61 const char* pattern; 61 const char* pattern;
62 URLPattern::ParseResult expected_result; 62 URLPattern::ParseResult expected_result;
63 const char* expected_port; 63 const char* expected_port;
64 } kTestPatterns[] = { 64 } kTestPatterns[] = {
65 { "http://foo:1234/", URLPattern::PARSE_SUCCESS, "1234" }, 65 { "http://foo:1234/", URLPattern::PARSE_SUCCESS, "1234" },
66 { "http://foo:1234/bar", URLPattern::PARSE_SUCCESS, "1234" }, 66 { "http://foo:1234/bar", URLPattern::PARSE_SUCCESS, "1234" },
67 { "http://*.foo:1234/", URLPattern::PARSE_SUCCESS, "1234" }, 67 { "http://*.foo:1234/", URLPattern::PARSE_SUCCESS, "1234" },
(...skipping 16 matching lines...) Expand all
84 84
85 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(kTestPatterns); ++i) { 85 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(kTestPatterns); ++i) {
86 URLPattern pattern(URLPattern::SCHEME_ALL); 86 URLPattern pattern(URLPattern::SCHEME_ALL);
87 EXPECT_EQ(kTestPatterns[i].expected_result, 87 EXPECT_EQ(kTestPatterns[i].expected_result,
88 pattern.Parse(kTestPatterns[i].pattern)) 88 pattern.Parse(kTestPatterns[i].pattern))
89 << "Got unexpected result for URL pattern: " 89 << "Got unexpected result for URL pattern: "
90 << kTestPatterns[i].pattern; 90 << kTestPatterns[i].pattern;
91 EXPECT_EQ(kTestPatterns[i].expected_port, pattern.port()) 91 EXPECT_EQ(kTestPatterns[i].expected_port, pattern.port())
92 << "Got unexpected port for URL pattern: " << kTestPatterns[i].pattern; 92 << "Got unexpected port for URL pattern: " << kTestPatterns[i].pattern;
93 } 93 }
94 }; 94 }
95 95
96 // all pages for a given scheme 96 // all pages for a given scheme
97 TEST(ExtensionURLPatternTest, Match1) { 97 TEST(ExtensionURLPatternTest, Match1) {
98 URLPattern pattern(kAllSchemes); 98 URLPattern pattern(kAllSchemes);
99 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("http://*/*")); 99 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("http://*/*"));
100 EXPECT_EQ("http", pattern.scheme()); 100 EXPECT_EQ("http", pattern.scheme());
101 EXPECT_EQ("", pattern.host()); 101 EXPECT_EQ("", pattern.host());
102 EXPECT_TRUE(pattern.match_subdomains()); 102 EXPECT_TRUE(pattern.match_subdomains());
103 EXPECT_FALSE(pattern.match_all_urls()); 103 EXPECT_FALSE(pattern.match_all_urls());
104 EXPECT_EQ("/*", pattern.path()); 104 EXPECT_EQ("/*", pattern.path());
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
177 URLPattern pattern(kAllSchemes); 177 URLPattern pattern(kAllSchemes);
178 // allowed, but useless 178 // allowed, but useless
179 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("http://*.0.0.1/*")); 179 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("http://*.0.0.1/*"));
180 EXPECT_EQ("http", pattern.scheme()); 180 EXPECT_EQ("http", pattern.scheme());
181 EXPECT_EQ("0.0.1", pattern.host()); 181 EXPECT_EQ("0.0.1", pattern.host());
182 EXPECT_TRUE(pattern.match_subdomains()); 182 EXPECT_TRUE(pattern.match_subdomains());
183 EXPECT_FALSE(pattern.match_all_urls()); 183 EXPECT_FALSE(pattern.match_all_urls());
184 EXPECT_EQ("/*", pattern.path()); 184 EXPECT_EQ("/*", pattern.path());
185 // Subdomain matching is never done if the argument has an IP address host. 185 // Subdomain matching is never done if the argument has an IP address host.
186 EXPECT_FALSE(pattern.MatchesURL(GURL("http://127.0.0.1"))); 186 EXPECT_FALSE(pattern.MatchesURL(GURL("http://127.0.0.1")));
187 }; 187 }
188 188
189 // unicode 189 // unicode
190 TEST(ExtensionURLPatternTest, Match8) { 190 TEST(ExtensionURLPatternTest, Match8) {
191 URLPattern pattern(kAllSchemes); 191 URLPattern pattern(kAllSchemes);
192 // The below is the ASCII encoding of the following URL: 192 // The below is the ASCII encoding of the following URL:
193 // http://*.\xe1\x80\xbf/a\xc2\x81\xe1* 193 // http://*.\xe1\x80\xbf/a\xc2\x81\xe1*
194 EXPECT_EQ(URLPattern::PARSE_SUCCESS, 194 EXPECT_EQ(URLPattern::PARSE_SUCCESS,
195 pattern.Parse("http://*.xn--gkd/a%C2%81%E1*")); 195 pattern.Parse("http://*.xn--gkd/a%C2%81%E1*"));
196 EXPECT_EQ("http", pattern.scheme()); 196 EXPECT_EQ("http", pattern.scheme());
197 EXPECT_EQ("xn--gkd", pattern.host()); 197 EXPECT_EQ("xn--gkd", pattern.host());
198 EXPECT_TRUE(pattern.match_subdomains()); 198 EXPECT_TRUE(pattern.match_subdomains());
199 EXPECT_FALSE(pattern.match_all_urls()); 199 EXPECT_FALSE(pattern.match_all_urls());
200 EXPECT_EQ("/a%C2%81%E1*", pattern.path()); 200 EXPECT_EQ("/a%C2%81%E1*", pattern.path());
201 EXPECT_TRUE(pattern.MatchesURL( 201 EXPECT_TRUE(pattern.MatchesURL(
202 GURL("http://abc.\xe1\x80\xbf/a\xc2\x81\xe1xyz"))); 202 GURL("http://abc.\xe1\x80\xbf/a\xc2\x81\xe1xyz")));
203 EXPECT_TRUE(pattern.MatchesURL( 203 EXPECT_TRUE(pattern.MatchesURL(
204 GURL("http://\xe1\x80\xbf/a\xc2\x81\xe1\xe1"))); 204 GURL("http://\xe1\x80\xbf/a\xc2\x81\xe1\xe1")));
205 }; 205 }
206 206
207 // chrome:// 207 // chrome://
208 TEST(ExtensionURLPatternTest, Match9) { 208 TEST(ExtensionURLPatternTest, Match9) {
209 URLPattern pattern(kAllSchemes); 209 URLPattern pattern(kAllSchemes);
210 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("chrome://favicon/*")); 210 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("chrome://favicon/*"));
211 EXPECT_EQ("chrome", pattern.scheme()); 211 EXPECT_EQ("chrome", pattern.scheme());
212 EXPECT_EQ("favicon", pattern.host()); 212 EXPECT_EQ("favicon", pattern.host());
213 EXPECT_FALSE(pattern.match_subdomains()); 213 EXPECT_FALSE(pattern.match_subdomains());
214 EXPECT_FALSE(pattern.match_all_urls()); 214 EXPECT_FALSE(pattern.match_all_urls());
215 EXPECT_EQ("/*", pattern.path()); 215 EXPECT_EQ("/*", pattern.path());
216 EXPECT_TRUE(pattern.MatchesURL(GURL("chrome://favicon/http://google.com"))); 216 EXPECT_TRUE(pattern.MatchesURL(GURL("chrome://favicon/http://google.com")));
217 EXPECT_TRUE(pattern.MatchesURL(GURL("chrome://favicon/https://google.com"))); 217 EXPECT_TRUE(pattern.MatchesURL(GURL("chrome://favicon/https://google.com")));
218 EXPECT_FALSE(pattern.MatchesURL(GURL("chrome://history"))); 218 EXPECT_FALSE(pattern.MatchesURL(GURL("chrome://history")));
219 }; 219 }
220 220
221 // *:// 221 // *://
222 TEST(ExtensionURLPatternTest, Match10) { 222 TEST(ExtensionURLPatternTest, Match10) {
223 URLPattern pattern(kAllSchemes); 223 URLPattern pattern(kAllSchemes);
224 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("*://*/*")); 224 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("*://*/*"));
225 EXPECT_TRUE(pattern.MatchesScheme("http")); 225 EXPECT_TRUE(pattern.MatchesScheme("http"));
226 EXPECT_TRUE(pattern.MatchesScheme("https")); 226 EXPECT_TRUE(pattern.MatchesScheme("https"));
227 EXPECT_FALSE(pattern.MatchesScheme("chrome")); 227 EXPECT_FALSE(pattern.MatchesScheme("chrome"));
228 EXPECT_FALSE(pattern.MatchesScheme("file")); 228 EXPECT_FALSE(pattern.MatchesScheme("file"));
229 EXPECT_FALSE(pattern.MatchesScheme("ftp")); 229 EXPECT_FALSE(pattern.MatchesScheme("ftp"));
230 EXPECT_TRUE(pattern.match_subdomains()); 230 EXPECT_TRUE(pattern.match_subdomains());
231 EXPECT_FALSE(pattern.match_all_urls()); 231 EXPECT_FALSE(pattern.match_all_urls());
232 EXPECT_EQ("/*", pattern.path()); 232 EXPECT_EQ("/*", pattern.path());
233 EXPECT_TRUE(pattern.MatchesURL(GURL("http://127.0.0.1"))); 233 EXPECT_TRUE(pattern.MatchesURL(GURL("http://127.0.0.1")));
234 EXPECT_FALSE(pattern.MatchesURL(GURL("chrome://favicon/http://google.com"))); 234 EXPECT_FALSE(pattern.MatchesURL(GURL("chrome://favicon/http://google.com")));
235 EXPECT_FALSE(pattern.MatchesURL(GURL("file:///foo/bar"))); 235 EXPECT_FALSE(pattern.MatchesURL(GURL("file:///foo/bar")));
236 EXPECT_FALSE(pattern.MatchesURL(GURL("file://localhost/foo/bar"))); 236 EXPECT_FALSE(pattern.MatchesURL(GURL("file://localhost/foo/bar")));
237 }; 237 }
238 238
239 // <all_urls> 239 // <all_urls>
240 TEST(ExtensionURLPatternTest, Match11) { 240 TEST(ExtensionURLPatternTest, Match11) {
241 URLPattern pattern(kAllSchemes); 241 URLPattern pattern(kAllSchemes);
242 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("<all_urls>")); 242 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("<all_urls>"));
243 EXPECT_TRUE(pattern.MatchesScheme("chrome")); 243 EXPECT_TRUE(pattern.MatchesScheme("chrome"));
244 EXPECT_TRUE(pattern.MatchesScheme("http")); 244 EXPECT_TRUE(pattern.MatchesScheme("http"));
245 EXPECT_TRUE(pattern.MatchesScheme("https")); 245 EXPECT_TRUE(pattern.MatchesScheme("https"));
246 EXPECT_TRUE(pattern.MatchesScheme("file")); 246 EXPECT_TRUE(pattern.MatchesScheme("file"));
247 EXPECT_TRUE(pattern.MatchesScheme("filesystem")); 247 EXPECT_TRUE(pattern.MatchesScheme("filesystem"));
(...skipping 11 matching lines...) Expand all
259 URLPattern pattern2(kAllSchemes); 259 URLPattern pattern2(kAllSchemes);
260 pattern2.SetMatchAllURLs(true); 260 pattern2.SetMatchAllURLs(true);
261 261
262 EXPECT_EQ(pattern.valid_schemes(), pattern2.valid_schemes()); 262 EXPECT_EQ(pattern.valid_schemes(), pattern2.valid_schemes());
263 EXPECT_EQ(pattern.match_subdomains(), pattern2.match_subdomains()); 263 EXPECT_EQ(pattern.match_subdomains(), pattern2.match_subdomains());
264 EXPECT_EQ(pattern.path(), pattern2.path()); 264 EXPECT_EQ(pattern.path(), pattern2.path());
265 EXPECT_EQ(pattern.match_all_urls(), pattern2.match_all_urls()); 265 EXPECT_EQ(pattern.match_all_urls(), pattern2.match_all_urls());
266 EXPECT_EQ(pattern.scheme(), pattern2.scheme()); 266 EXPECT_EQ(pattern.scheme(), pattern2.scheme());
267 EXPECT_EQ(pattern.port(), pattern2.port()); 267 EXPECT_EQ(pattern.port(), pattern2.port());
268 EXPECT_EQ(pattern.GetAsString(), pattern2.GetAsString()); 268 EXPECT_EQ(pattern.GetAsString(), pattern2.GetAsString());
269 }; 269 }
270 270
271 // SCHEME_ALL matches all schemes. 271 // SCHEME_ALL matches all schemes.
272 TEST(ExtensionURLPatternTest, Match12) { 272 TEST(ExtensionURLPatternTest, Match12) {
273 URLPattern pattern(URLPattern::SCHEME_ALL); 273 URLPattern pattern(URLPattern::SCHEME_ALL);
274 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("<all_urls>")); 274 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("<all_urls>"));
275 EXPECT_TRUE(pattern.MatchesScheme("chrome")); 275 EXPECT_TRUE(pattern.MatchesScheme("chrome"));
276 EXPECT_TRUE(pattern.MatchesScheme("http")); 276 EXPECT_TRUE(pattern.MatchesScheme("http"));
277 EXPECT_TRUE(pattern.MatchesScheme("https")); 277 EXPECT_TRUE(pattern.MatchesScheme("https"));
278 EXPECT_TRUE(pattern.MatchesScheme("file")); 278 EXPECT_TRUE(pattern.MatchesScheme("file"));
279 EXPECT_TRUE(pattern.MatchesScheme("filesystem")); 279 EXPECT_TRUE(pattern.MatchesScheme("filesystem"));
280 EXPECT_TRUE(pattern.MatchesScheme("javascript")); 280 EXPECT_TRUE(pattern.MatchesScheme("javascript"));
281 EXPECT_TRUE(pattern.MatchesScheme("data")); 281 EXPECT_TRUE(pattern.MatchesScheme("data"));
282 EXPECT_TRUE(pattern.MatchesScheme("about")); 282 EXPECT_TRUE(pattern.MatchesScheme("about"));
283 EXPECT_TRUE(pattern.MatchesScheme("chrome-extension")); 283 EXPECT_TRUE(pattern.MatchesScheme("chrome-extension"));
284 EXPECT_TRUE(pattern.match_subdomains()); 284 EXPECT_TRUE(pattern.match_subdomains());
285 EXPECT_TRUE(pattern.match_all_urls()); 285 EXPECT_TRUE(pattern.match_all_urls());
286 EXPECT_EQ("/*", pattern.path()); 286 EXPECT_EQ("/*", pattern.path());
287 EXPECT_TRUE(pattern.MatchesURL(GURL("chrome://favicon/http://google.com"))); 287 EXPECT_TRUE(pattern.MatchesURL(GURL("chrome://favicon/http://google.com")));
288 EXPECT_TRUE(pattern.MatchesURL(GURL("http://127.0.0.1"))); 288 EXPECT_TRUE(pattern.MatchesURL(GURL("http://127.0.0.1")));
289 EXPECT_TRUE(pattern.MatchesURL(GURL("file:///foo/bar"))); 289 EXPECT_TRUE(pattern.MatchesURL(GURL("file:///foo/bar")));
290 EXPECT_TRUE(pattern.MatchesURL(GURL("file://localhost/foo/bar"))); 290 EXPECT_TRUE(pattern.MatchesURL(GURL("file://localhost/foo/bar")));
291 EXPECT_TRUE(pattern.MatchesURL(GURL("chrome://newtab"))); 291 EXPECT_TRUE(pattern.MatchesURL(GURL("chrome://newtab")));
292 EXPECT_TRUE(pattern.MatchesURL(GURL("about:blank"))); 292 EXPECT_TRUE(pattern.MatchesURL(GURL("about:blank")));
293 EXPECT_TRUE(pattern.MatchesURL(GURL("about:version"))); 293 EXPECT_TRUE(pattern.MatchesURL(GURL("about:version")));
294 EXPECT_TRUE(pattern.MatchesURL( 294 EXPECT_TRUE(pattern.MatchesURL(
295 GURL("data:text/html;charset=utf-8,<html>asdf</html>"))); 295 GURL("data:text/html;charset=utf-8,<html>asdf</html>")));
296 }; 296 }
297 297
298 static const struct MatchPatterns { 298 static const struct MatchPatterns {
299 const char* pattern; 299 const char* pattern;
300 const char* matches; 300 const char* matches;
301 } kMatch13UrlPatternTestCases[] = { 301 } kMatch13UrlPatternTestCases[] = {
302 {"about:*", "about:blank"}, 302 {"about:*", "about:blank"},
303 {"about:blank", "about:blank"}, 303 {"about:blank", "about:blank"},
304 {"about:*", "about:version"}, 304 {"about:*", "about:version"},
305 {"chrome-extension://*/*", "chrome-extension://FTW"}, 305 {"chrome-extension://*/*", "chrome-extension://FTW"},
306 {"data:*", "data:monkey"}, 306 {"data:*", "data:monkey"},
307 {"javascript:*", "javascript:atemyhomework"}, 307 {"javascript:*", "javascript:atemyhomework"},
308 }; 308 };
309 309
310 // SCHEME_ALL and specific schemes. 310 // SCHEME_ALL and specific schemes.
311 TEST(ExtensionURLPatternTest, Match13) { 311 TEST(ExtensionURLPatternTest, Match13) {
312 for (size_t i = 0; i < arraysize(kMatch13UrlPatternTestCases); ++i) { 312 for (size_t i = 0; i < arraysize(kMatch13UrlPatternTestCases); ++i) {
313 URLPattern pattern(URLPattern::SCHEME_ALL); 313 URLPattern pattern(URLPattern::SCHEME_ALL);
314 EXPECT_EQ(URLPattern::PARSE_SUCCESS, 314 EXPECT_EQ(URLPattern::PARSE_SUCCESS,
315 pattern.Parse(kMatch13UrlPatternTestCases[i].pattern)) 315 pattern.Parse(kMatch13UrlPatternTestCases[i].pattern))
316 << " while parsing " << kMatch13UrlPatternTestCases[i].pattern; 316 << " while parsing " << kMatch13UrlPatternTestCases[i].pattern;
317 EXPECT_TRUE(pattern.MatchesURL( 317 EXPECT_TRUE(pattern.MatchesURL(
318 GURL(kMatch13UrlPatternTestCases[i].matches))) 318 GURL(kMatch13UrlPatternTestCases[i].matches)))
319 << " while matching " << kMatch13UrlPatternTestCases[i].matches; 319 << " while matching " << kMatch13UrlPatternTestCases[i].matches;
320 } 320 }
321 321
322 // Negative test. 322 // Negative test.
323 URLPattern pattern(URLPattern::SCHEME_ALL); 323 URLPattern pattern(URLPattern::SCHEME_ALL);
324 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("data:*")); 324 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("data:*"));
325 EXPECT_FALSE(pattern.MatchesURL(GURL("about:blank"))); 325 EXPECT_FALSE(pattern.MatchesURL(GURL("about:blank")));
326 }; 326 }
327 327
328 // file scheme with empty hostname 328 // file scheme with empty hostname
329 TEST(ExtensionURLPatternTest, Match14) { 329 TEST(ExtensionURLPatternTest, Match14) {
330 URLPattern pattern(kAllSchemes); 330 URLPattern pattern(kAllSchemes);
331 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("file:///foo*")); 331 EXPECT_EQ(URLPattern::PARSE_SUCCESS, pattern.Parse("file:///foo*"));
332 EXPECT_EQ("file", pattern.scheme()); 332 EXPECT_EQ("file", pattern.scheme());
333 EXPECT_EQ("", pattern.host()); 333 EXPECT_EQ("", pattern.host());
334 EXPECT_FALSE(pattern.match_subdomains()); 334 EXPECT_FALSE(pattern.match_subdomains());
335 EXPECT_FALSE(pattern.match_all_urls()); 335 EXPECT_FALSE(pattern.match_all_urls());
336 EXPECT_EQ("/foo*", pattern.path()); 336 EXPECT_EQ("/foo*", pattern.path());
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
423 EXPECT_FALSE(pattern.match_all_urls()); 423 EXPECT_FALSE(pattern.match_all_urls());
424 EXPECT_EQ("/*", pattern.path()); 424 EXPECT_EQ("/*", pattern.path());
425 EXPECT_TRUE(pattern.MatchesURL(GURL("chrome-extension://ftw"))); 425 EXPECT_TRUE(pattern.MatchesURL(GURL("chrome-extension://ftw")));
426 EXPECT_TRUE(pattern.MatchesURL( 426 EXPECT_TRUE(pattern.MatchesURL(
427 GURL("chrome-extension://ftw/http://google.com"))); 427 GURL("chrome-extension://ftw/http://google.com")));
428 EXPECT_TRUE(pattern.MatchesURL( 428 EXPECT_TRUE(pattern.MatchesURL(
429 GURL("chrome-extension://ftw/https://google.com"))); 429 GURL("chrome-extension://ftw/https://google.com")));
430 EXPECT_FALSE(pattern.MatchesURL(GURL("chrome-extension://foobar"))); 430 EXPECT_FALSE(pattern.MatchesURL(GURL("chrome-extension://foobar")));
431 EXPECT_TRUE(pattern.MatchesURL( 431 EXPECT_TRUE(pattern.MatchesURL(
432 GURL("filesystem:chrome-extension://ftw/t/file.txt"))); 432 GURL("filesystem:chrome-extension://ftw/t/file.txt")));
433 }; 433 }
434 434
435 static const struct GetAsStringPatterns { 435 static const struct GetAsStringPatterns {
436 const char* pattern; 436 const char* pattern;
437 } kGetAsStringTestCases[] = { 437 } kGetAsStringTestCases[] = {
438 { "http://www/" }, 438 { "http://www/" },
439 { "http://*/*" }, 439 { "http://*/*" },
440 { "chrome://*/*" }, 440 { "chrome://*/*" },
441 { "chrome://newtab/" }, 441 { "chrome://newtab/" },
442 { "about:*" }, 442 { "about:*" },
443 { "about:blank" }, 443 { "about:blank" },
(...skipping 391 matching lines...) Expand 10 before | Expand all | Expand 10 after
835 EXPECT_TRUE(URLPattern(URLPattern::SCHEME_HTTPS, "https://www.google.com/") 835 EXPECT_TRUE(URLPattern(URLPattern::SCHEME_HTTPS, "https://www.google.com/")
836 .MatchesSingleOrigin()); 836 .MatchesSingleOrigin());
837 EXPECT_FALSE(URLPattern(URLPattern::SCHEME_HTTP, 837 EXPECT_FALSE(URLPattern(URLPattern::SCHEME_HTTP,
838 "http://*.google.com/foo/bar").MatchesSingleOrigin()); 838 "http://*.google.com/foo/bar").MatchesSingleOrigin());
839 EXPECT_TRUE( 839 EXPECT_TRUE(
840 URLPattern(URLPattern::SCHEME_HTTP, "http://www.google.com/foo/bar") 840 URLPattern(URLPattern::SCHEME_HTTP, "http://www.google.com/foo/bar")
841 .MatchesSingleOrigin()); 841 .MatchesSingleOrigin());
842 } 842 }
843 843
844 } // namespace 844 } // namespace
OLDNEW
« no previous file with comments | « extensions/common/update_manifest.h ('k') | extensions/renderer/default_dispatcher_delegate.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698