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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/url/script-tests/segments-from-data-url.js

Issue 2685843003: 'data:' may not be used as a document's base URL. (Closed)
Patch Set: Tests. Created 3 years, 10 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
OLDNEW
(Empty)
1 description("Test URL segmentation");
2
3 cases = [
4 // [URL, [SCHEME, HOST, PORT, PATH, QUERY, REF]]
5 ["http://user:pass@foo:21/bar;par?b#c", ["http:","foo","21","/bar;par","?b" ,"#c"]],
6 ["http:foo.com", ["http:","foo.com","","/","",""]],
7 ["\\t :foo.com \\n", [":","","","","",""]],
8 [" foo.com ", [":","","","","",""]],
9 ["a:\\t foo.com", ["a:","",""," foo.com","",""]],
10 ["http://f:21/ b ? d # e ", ["http:","f","21","/%20b%20","?%20d %20","# e"]],
11 ["http://f:/c", ["http:","f","","/c","",""]],
12 ["http://f:0/c", ["http:","f","0","/c","",""]],
13 ["http://f:00000000000000/c", ["http:","f","0","/c","",""]],
14 ["http://f:00000000000000000000080/c", ["http:","f","0","/c","",""]],
15 ["http://f:b/c", [":","","","","",""]],
16 ["http://f: /c", [":","","","","",""]],
17 ["http://f:\\n/c", [":","","","","",""]],
18 ["http://f:fifty-two/c", [":","","","","",""]],
19 ["http://f:999999/c", [":","","0","","",""]],
20 ["http://f: 21 / b ? d # e ", [":","","","","",""]],
21 ["", [":","","","","",""]],
22 [" \\t", [":","","","","",""]],
23 [":foo.com/", [":","","","","",""]],
24 [":foo.com\\\\", [":","","","","",""]],
25 [":", [":","","","","",""]],
26 [":a", [":","","","","",""]],
27 [":/", [":","","","","",""]],
28 [":\\\\", [":","","","","",""]],
29 [":#", [":","","","","",""]],
30 ["#", ["data:","","","text/plain,baseURL" ,"",""]],
31 ["#/", ["data:","","","text/plain,baseURL" ,"","#/"]],
32 ["#\\\\", ["data:","","","text/plain,baseURL" ,"","#\\\\"]],
33 ["#;?", ["data:","","","text/plain,baseURL" ,"","#;?"]],
34 ["?", [":","","","","",""]],
35 ["/", [":","","","","",""]],
36 [":23", [":","","","","",""]],
37 ["/:23", [":","","","","",""]],
38 ["//", [":","","","","",""]],
39 ["::", [":","","","","",""]],
40 ["::23", [":","","","","",""]],
41 ["foo://", ["foo:","","","//","",""]],
42 ["http://a:b@c:29/d", ["http:","c","29","/d","",""]],
43 ["http::@c:29", ["http:","c","29","/","",""]],
44 ["http://&a:foo(b]c@d:2/", ["http:","d","2","/","",""]],
45 ["http://::@c@d:2", ["http:","d","2","/","",""]],
46 ["http://foo.com:b@d/", ["http:","d","","/","",""]],
47 ["http://foo.com/\\\\@", ["http:","foo.com","","//@","",""]] ,
48 ["http:\\\\\\\\foo.com\\\\", ["http:","foo.com","","/","",""]],
49 ["http:\\\\\\\\a\\\\b:c\\\\d@foo.com\\\\", ["http:","a","","/b:c/d@foo.com/"," ",""]],
50 ["foo:/", ["foo:","","","/","",""]],
51 ["foo:/bar.com/", ["foo:","","","/bar.com/","",""]],
52 ["foo://///////", ["foo:","","","/////////","",""]],
53 ["foo://///////bar.com/", ["foo:","","","/////////bar.com/"," ",""]],
54 ["foo:////://///", ["foo:","","","////://///","",""]],
55 ["c:/foo", ["c:","","","/foo","",""]],
56 ["//foo/bar", [":","","","","",""]],
57 ["http://foo/path;a??e#f#g", ["http:","foo","","/path;a","??e"," #f#g"]],
58 ["http://foo/abcd?efgh?ijkl", ["http:","foo","","/abcd","?efgh?ij kl",""]],
59 ["http://foo/abcd#foo?bar", ["http:","foo","","/abcd","","#foo? bar"]],
60 ["[61:24:74]:98", [":","","","","",""]],
61 ["http://[61:27]:98", [":","","0","","",""]],
62 ["http:[61:27]/:foo", [":","","","","",""]],
63 ["http://[1::2]:3:4", [":","","","","",""]],
64 ["http://2001::1", [":","","","","",""]],
65 ["http://[2001::1", [":","","","","",""]],
66 ["http://2001::1]", [":","","","","",""]],
67 ["http://2001::1]:80", [":","","","","",""]],
68 ["http://[2001::1]", ["http:","[2001::1]","","/","",""]] ,
69 ["http://[2001::1]:80", ["http:","[2001::1]","","/","",""]] ,
70 ["http://[[::]]", [":","","","","",""]],
71 ];
72
73 var originalBaseURL = canonicalize(".");
74 setBaseURL("data:text/plain,baseURL");
75
76 for (var i = 0; i < cases.length; ++i) {
77 shouldBe("segments('" + cases[i][0] + "')",
78 "'" + JSON.stringify(cases[i][1]) + "'");
79 }
80
81 setBaseURL(originalBaseURL);
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698