summaryrefslogtreecommitdiffstats
path: root/LayoutTests
diff options
context:
space:
mode:
authorSteve Block <steveblock@google.com>2012-03-27 18:35:18 +0100
committerSteve Block <steveblock@google.com>2012-03-28 16:42:03 +0100
commit32399fa13ad918dafbbb5dac3e65584be87a459a (patch)
treec4ce4b4ee9001e492a8d9abe19ea87e8a6958a69 /LayoutTests
parent93b8e97cc2ebb4498b935c701eaf94525959eedb (diff)
downloadexternal_webkit-32399fa13ad918dafbbb5dac3e65584be87a459a.zip
external_webkit-32399fa13ad918dafbbb5dac3e65584be87a459a.tar.gz
external_webkit-32399fa13ad918dafbbb5dac3e65584be87a459a.tar.bz2
Cherry-pick WebKit change r84756 to add some URL parsing tests
This is to improve test coverage prior to fixing window.location. See bug for details. See http://trac.webkit.org/changeset/84756 Bug: 2159848 Change-Id: I5ac9e5129938b31f2dc0fd244dcb233eafb17fb5
Diffstat (limited to 'LayoutTests')
-rw-r--r--LayoutTests/fast/url/script-tests/segments.js13
-rw-r--r--LayoutTests/fast/url/script-tests/standard-url.js12
-rw-r--r--LayoutTests/fast/url/segments-expected.txt12
-rw-r--r--LayoutTests/fast/url/standard-url-expected.txt12
4 files changed, 49 insertions, 0 deletions
diff --git a/LayoutTests/fast/url/script-tests/segments.js b/LayoutTests/fast/url/script-tests/segments.js
index c621da1..a826703 100644
--- a/LayoutTests/fast/url/script-tests/segments.js
+++ b/LayoutTests/fast/url/script-tests/segments.js
@@ -68,6 +68,19 @@ cases = [
["http://[2001::1]", ["http:","[2001::1]","0","/","",""]],
["http://[2001::1]:80", ["http:","[2001::1]","0","/","",""]],
["http://[[::]]", [":","","0","","",""]],
+ ["http:/example.com/", ["http:","example.org","0","/example.com/","",""]],
+ ["ftp:/example.com/", ["ftp:","example.com","0","/","",""]],
+ ["https:/example.com/", ["https:","example.com","0","/","",""]],
+ ["madeupscheme:/example.com/", ["madeupscheme:","","0","/example.com/","",""]],
+ ["file:/example.com/", ["file:","","0","/example.com/","",""]],
+ ["fops:/example.com/", ["fops:","","0","/example.com/","",""]],
+ ["gopher:/example.com/", ["gopher:","example.com","0","/","",""]],
+ ["ws:/example.com/", ["ws:","example.com","0","/","",""]],
+ ["wss:/example.com/", ["wss:","example.com","0","/","",""]],
+ ["data:/example.com/", ["data:","","0","/example.com/","",""]],
+ ["javascript:/example.com/", ["javascript:","","0","/example.com/","",""]],
+ ["mailto:/example.com/", ["mailto:","","0","/example.com/","",""]],
+
];
var originalBaseURL = canonicalize(".");
diff --git a/LayoutTests/fast/url/script-tests/standard-url.js b/LayoutTests/fast/url/script-tests/standard-url.js
index 03808a8..ef2f7a7 100644
--- a/LayoutTests/fast/url/script-tests/standard-url.js
+++ b/LayoutTests/fast/url/script-tests/standard-url.js
@@ -35,6 +35,18 @@ cases = [
["wss://foo:81/", "wss://foo:81/"],
["wss://foo:443/", "wss://foo/"],
["wss://foo:815/", "wss://foo:815/"],
+ ["http:/example.com/", "http://example.com/"],
+ ["ftp:/example.com/", "ftp://example.com/"],
+ ["https:/example.com/", "https://example.com/"],
+ ["madeupscheme:/example.com/", "madeupscheme:/example.com/"],
+ ["file:/example.com/", "file://localhost/example.com/"],
+ ["fops:/example.com/", "fops:/example.com/"],
+ ["gopher:/example.com/", "gopher://example.com/"],
+ ["ws:/example.com/", "ws://example.com/"],
+ ["wss:/example.com/", "wss://example.com/"],
+ ["data:/example.com/", "data:/example.com/"],
+ ["javascript:/example.com/", "javascript:/example.com/"],
+ ["mailto:/example.com/", "mailto:/example.com/"],
];
for (var i = 0; i < cases.length; ++i) {
diff --git a/LayoutTests/fast/url/segments-expected.txt b/LayoutTests/fast/url/segments-expected.txt
index 659be5f..b98c50f 100644
--- a/LayoutTests/fast/url/segments-expected.txt
+++ b/LayoutTests/fast/url/segments-expected.txt
@@ -69,6 +69,18 @@ PASS segments('http://2001::1]:80') is '[":","","0","","",""]'
PASS segments('http://[2001::1]') is '["http:","[2001::1]","0","/","",""]'
PASS segments('http://[2001::1]:80') is '["http:","[2001::1]","0","/","",""]'
PASS segments('http://[[::]]') is '[":","","0","","",""]'
+FAIL segments('http:/example.com/') should be ["http:","example.org","0","/example.com/","",""]. Was ["http:","","0","/example.com/","",""].
+FAIL segments('ftp:/example.com/') should be ["ftp:","example.com","0","/","",""]. Was ["ftp:","","0","/example.com/","",""].
+FAIL segments('https:/example.com/') should be ["https:","example.com","0","/","",""]. Was ["https:","","0","/example.com/","",""].
+PASS segments('madeupscheme:/example.com/') is '["madeupscheme:","","0","/example.com/","",""]'
+PASS segments('file:/example.com/') is '["file:","","0","/example.com/","",""]'
+PASS segments('fops:/example.com/') is '["fops:","","0","/example.com/","",""]'
+FAIL segments('gopher:/example.com/') should be ["gopher:","example.com","0","/","",""]. Was ["gopher:","","0","/example.com/","",""].
+FAIL segments('ws:/example.com/') should be ["ws:","example.com","0","/","",""]. Was ["ws:","","0","/example.com/","",""].
+FAIL segments('wss:/example.com/') should be ["wss:","example.com","0","/","",""]. Was ["wss:","","0","/example.com/","",""].
+PASS segments('data:/example.com/') is '["data:","","0","/example.com/","",""]'
+PASS segments('javascript:/example.com/') is '["javascript:","","0","/example.com/","",""]'
+PASS segments('mailto:/example.com/') is '["mailto:","","0","/example.com/","",""]'
PASS successfullyParsed is true
TEST COMPLETE
diff --git a/LayoutTests/fast/url/standard-url-expected.txt b/LayoutTests/fast/url/standard-url-expected.txt
index 5312e07..5f5c710 100644
--- a/LayoutTests/fast/url/standard-url-expected.txt
+++ b/LayoutTests/fast/url/standard-url-expected.txt
@@ -30,6 +30,18 @@ PASS canonicalize('wss://foo:80/') is 'wss://foo:80/'
PASS canonicalize('wss://foo:81/') is 'wss://foo:81/'
PASS canonicalize('wss://foo:443/') is 'wss://foo/'
PASS canonicalize('wss://foo:815/') is 'wss://foo:815/'
+FAIL canonicalize('http:/example.com/') should be http://example.com/. Was http:/example.com/.
+FAIL canonicalize('ftp:/example.com/') should be ftp://example.com/. Was ftp:/example.com/.
+FAIL canonicalize('https:/example.com/') should be https://example.com/. Was https:/example.com/.
+PASS canonicalize('madeupscheme:/example.com/') is 'madeupscheme:/example.com/'
+FAIL canonicalize('file:/example.com/') should be file://localhost/example.com/. Was file:///example.com/.
+PASS canonicalize('fops:/example.com/') is 'fops:/example.com/'
+FAIL canonicalize('gopher:/example.com/') should be gopher://example.com/. Was gopher:/example.com/.
+FAIL canonicalize('ws:/example.com/') should be ws://example.com/. Was ws:/example.com/.
+FAIL canonicalize('wss:/example.com/') should be wss://example.com/. Was wss:/example.com/.
+PASS canonicalize('data:/example.com/') is 'data:/example.com/'
+PASS canonicalize('javascript:/example.com/') is 'javascript:/example.com/'
+PASS canonicalize('mailto:/example.com/') is 'mailto:/example.com/'
PASS successfullyParsed is true
TEST COMPLETE