Ignore URL.origin in URL web-platform-tests
authorachristensen@apple.com <achristensen@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 9 Nov 2016 19:40:37 +0000 (19:40 +0000)
committerachristensen@apple.com <achristensen@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 9 Nov 2016 19:40:37 +0000 (19:40 +0000)
https://bugs.webkit.org/show_bug.cgi?id=164553

Reviewed by Tim Horton.

Spec-noncompliance in our SecurityOrigin class is covering up URLParser bugs.
Let's ignore those bugs for now in our copy of the web-platform-tests so we can see URLParser conformance improvement in our results.
I've proposed moving these URL.origin checks to different tests in https://github.com/w3c/web-platform-tests/pull/4182

* web-platform-tests/url/a-element-expected.txt:
* web-platform-tests/url/a-element-xhtml-expected.txt:
* web-platform-tests/url/a-element.js:
(runURLTests):
* web-platform-tests/url/url-constructor-expected.txt:
* web-platform-tests/url/url-constructor.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@208457 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/web-platform-tests/url/a-element-expected.txt
LayoutTests/imported/w3c/web-platform-tests/url/a-element-xhtml-expected.txt
LayoutTests/imported/w3c/web-platform-tests/url/a-element.js
LayoutTests/imported/w3c/web-platform-tests/url/url-constructor-expected.txt
LayoutTests/imported/w3c/web-platform-tests/url/url-constructor.html

index 421ce281fd77605c445517de0b0b9728a7903975..69ba7bb41914f9446f2f837c1de46dfc22ffe036 100644 (file)
@@ -1,3 +1,21 @@
+2016-11-09  Alex Christensen  <achristensen@webkit.org>
+
+        Ignore URL.origin in URL web-platform-tests
+        https://bugs.webkit.org/show_bug.cgi?id=164553
+
+        Reviewed by Tim Horton.
+
+        Spec-noncompliance in our SecurityOrigin class is covering up URLParser bugs.
+        Let's ignore those bugs for now in our copy of the web-platform-tests so we can see URLParser conformance improvement in our results.
+        I've proposed moving these URL.origin checks to different tests in https://github.com/w3c/web-platform-tests/pull/4182
+
+        * web-platform-tests/url/a-element-expected.txt:
+        * web-platform-tests/url/a-element-xhtml-expected.txt:
+        * web-platform-tests/url/a-element.js:
+        (runURLTests):
+        * web-platform-tests/url/url-constructor-expected.txt:
+        * web-platform-tests/url/url-constructor.html:
+
 2016-11-04  Brady Eidson  <beidson@apple.com>
 
         IndexedDB 2.0: Clean up more transaction abort and exception throwing behavior from IDBObjectStore.
index fb3f4d36c4196d9700a1002f040670ab471a9a22..d8ce3aa02eafcaa6cd21effcbcc8f7f0c0f4078f 100644 (file)
@@ -7,7 +7,7 @@ PASS Parsing: <http:foo.com> against <http://example.org/foo/bar>
 PASS Parsing: <           :foo.com   
 > against <http://example.org/foo/bar> 
 PASS Parsing: < foo.com  > against <http://example.org/foo/bar> 
-FAIL Parsing: <a:       foo.com> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "a://"
+PASS Parsing: <a:       foo.com> against <http://example.org/foo/bar> 
 PASS Parsing: <http://f:21/ b ? d # e > against <http://example.org/foo/bar> 
 PASS Parsing: <http://f:/c> against <http://example.org/foo/bar> 
 PASS Parsing: <http://f:0/c> against <http://example.org/foo/bar> 
@@ -48,12 +48,12 @@ PASS Parsing: <http://foo.com:b@d/> against <http://example.org/foo/bar>
 PASS Parsing: <http://foo.com/\@> against <http://example.org/foo/bar> 
 PASS Parsing: <http:\\foo.com\> against <http://example.org/foo/bar> 
 PASS Parsing: <http:\\a\b:c\d@foo.com\> against <http://example.org/foo/bar> 
-FAIL Parsing: <foo:/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <foo:/bar.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <foo://///////> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <foo://///////bar.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <foo:////://///> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <c:/foo> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "c://"
+PASS Parsing: <foo:/> against <http://example.org/foo/bar> 
+PASS Parsing: <foo:/bar.com/> against <http://example.org/foo/bar> 
+FAIL Parsing: <foo://///////> against <http://example.org/foo/bar> assert_equals: pathname expected "///////" but got "/////////"
+FAIL Parsing: <foo://///////bar.com/> against <http://example.org/foo/bar> assert_equals: pathname expected "///////bar.com/" but got "/////////bar.com/"
+FAIL Parsing: <foo:////://///> against <http://example.org/foo/bar> assert_equals: pathname expected "//://///" but got "////://///"
+PASS Parsing: <c:/foo> against <http://example.org/foo/bar> 
 PASS Parsing: <//foo/bar> against <http://example.org/foo/bar> 
 PASS Parsing: <http://foo/path;a??e#f#g> against <http://example.org/foo/bar> 
 PASS Parsing: <http://foo/abcd?efgh?ijkl> against <http://example.org/foo/bar> 
@@ -69,33 +69,33 @@ PASS Parsing: <http://[2001::1]:80> against <http://example.org/foo/bar>
 PASS Parsing: <http:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <ftp:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <https:/example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <madeupscheme:/example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "madeupscheme://"
+PASS Parsing: <madeupscheme:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <file:/example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <ftps:/example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "ftps://"
+PASS Parsing: <ftps:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <gopher:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <ws:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <wss:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <data:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <javascript:/example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <mailto:/example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <http:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <ftp:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <https:example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <madeupscheme:example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "madeupscheme://"
-FAIL Parsing: <ftps:example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "ftps://"
+PASS Parsing: <madeupscheme:example.com/> against <http://example.org/foo/bar> 
+PASS Parsing: <ftps:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <gopher:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <ws:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <wss:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <data:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <javascript:example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <mailto:example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: </a/b/c> against <http://example.org/foo/bar> 
 PASS Parsing: </a/ /c> against <http://example.org/foo/bar> 
 PASS Parsing: </a%2fc> against <http://example.org/foo/bar> 
 PASS Parsing: </a/%2f/c> against <http://example.org/foo/bar> 
 FAIL Parsing: <#β> against <http://example.org/foo/bar> assert_equals: href expected "http://example.org/foo/bar#β" but got "http://example.org/foo/bar#%CE%B2"
 PASS Parsing: <data:text/html,test#test> against <http://example.org/foo/bar> 
-FAIL Parsing: <tel:1234567890> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "tel://"
+PASS Parsing: <tel:1234567890> against <http://example.org/foo/bar> 
 PASS Parsing: <file:c:\foo\bar.html> against <file:///tmp/mock/path> 
 PASS Parsing: <  File:c|////foo\bar.html> against <file:///tmp/mock/path> 
 PASS Parsing: <C|/foo/bar> against <file:///tmp/mock/path> 
@@ -164,7 +164,7 @@ PASS Parsing: <http://%25DOMAIN:foobar@foodomain.com/> against <about:blank>
 PASS Parsing: <http:\\www.google.com\foo> against <about:blank> 
 PASS Parsing: <http://foo:80/> against <about:blank> 
 PASS Parsing: <http://foo:81/> against <about:blank> 
-FAIL Parsing: <httpa://foo:80/> against <about:blank> assert_equals: origin expected "null" but got "httpa://foo:80"
+PASS Parsing: <httpa://foo:80/> against <about:blank> 
 PASS Parsing: <http://foo:-80/> against <about:blank> 
 PASS Parsing: <https://foo:443/> against <about:blank> 
 PASS Parsing: <https://foo:80/> against <about:blank> 
@@ -183,26 +183,26 @@ PASS Parsing: <wss://foo:815/> against <about:blank>
 PASS Parsing: <http:/example.com/> against <about:blank> 
 PASS Parsing: <ftp:/example.com/> against <about:blank> 
 PASS Parsing: <https:/example.com/> against <about:blank> 
-FAIL Parsing: <madeupscheme:/example.com/> against <about:blank> assert_equals: origin expected "null" but got "madeupscheme://"
+PASS Parsing: <madeupscheme:/example.com/> against <about:blank> 
 PASS Parsing: <file:/example.com/> against <about:blank> 
-FAIL Parsing: <ftps:/example.com/> against <about:blank> assert_equals: origin expected "null" but got "ftps://"
+PASS Parsing: <ftps:/example.com/> against <about:blank> 
 PASS Parsing: <gopher:/example.com/> against <about:blank> 
 PASS Parsing: <ws:/example.com/> against <about:blank> 
 PASS Parsing: <wss:/example.com/> against <about:blank> 
 PASS Parsing: <data:/example.com/> against <about:blank> 
 PASS Parsing: <javascript:/example.com/> against <about:blank> 
-FAIL Parsing: <mailto:/example.com/> against <about:blank> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:/example.com/> against <about:blank> 
 PASS Parsing: <http:example.com/> against <about:blank> 
 PASS Parsing: <ftp:example.com/> against <about:blank> 
 PASS Parsing: <https:example.com/> against <about:blank> 
-FAIL Parsing: <madeupscheme:example.com/> against <about:blank> assert_equals: origin expected "null" but got "madeupscheme://"
-FAIL Parsing: <ftps:example.com/> against <about:blank> assert_equals: origin expected "null" but got "ftps://"
+PASS Parsing: <madeupscheme:example.com/> against <about:blank> 
+PASS Parsing: <ftps:example.com/> against <about:blank> 
 PASS Parsing: <gopher:example.com/> against <about:blank> 
 PASS Parsing: <ws:example.com/> against <about:blank> 
 PASS Parsing: <wss:example.com/> against <about:blank> 
 PASS Parsing: <data:example.com/> against <about:blank> 
 PASS Parsing: <javascript:example.com/> against <about:blank> 
-FAIL Parsing: <mailto:example.com/> against <about:blank> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:example.com/> against <about:blank> 
 PASS Parsing: <http:@www.example.com> against <about:blank> 
 PASS Parsing: <http:/@www.example.com> against <about:blank> 
 PASS Parsing: <http://@www.example.com> against <about:blank> 
@@ -261,7 +261,7 @@ PASS Parsing: <http://%41.com> against <http://other.com/>
 PASS Parsing: <http://%ef%bc%85%ef%bc%94%ef%bc%91.com> against <http://other.com/> 
 PASS Parsing: <http://%00.com> against <http://other.com/> 
 PASS Parsing: <http://%ef%bc%85%ef%bc%90%ef%bc%90.com> against <http://other.com/> 
-FAIL Parsing: <http://你好你好> against <http://other.com/> assert_equals: origin expected "http://你好你好" but got "http://xn--6qqa088eba"
+PASS Parsing: <http://你好你好> against <http://other.com/> 
 PASS Parsing: <http://%zz%66%a.com> against <http://other.com/> 
 PASS Parsing: <http://%25> against <http://other.com/> 
 PASS Parsing: <http://hello%00> against <http://other.com/> 
@@ -273,11 +273,11 @@ PASS Parsing: <http://192.168.0.1 hello> against <http://other.com/>
 PASS Parsing: <http://0Xc0.0250.01> against <http://other.com/> 
 PASS Parsing: <http://[google.com]> against <http://other.com/> 
 PASS Parsing: <http://foo:💩@example.com/bar> against <http://other.com/> 
-FAIL Parsing: <#> against <test:test> assert_equals: origin expected "null" but got "test://"
-FAIL Parsing: <#x> against <mailto:x@x.com> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <#> against <test:test> 
+PASS Parsing: <#x> against <mailto:x@x.com> 
 PASS Parsing: <#x> against <data:,> 
 PASS Parsing: <#x> against <about:blank> 
-FAIL Parsing: <#> against <test:test?test> assert_equals: origin expected "null" but got "test://"
+PASS Parsing: <#> against <test:test?test> 
 PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/> 
 PASS Parsing: <https://@@@example> against <http://doesnotmatter/> 
 PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/> 
@@ -286,36 +286,36 @@ PASS Parsing: <> against <http://user:pass@example.org:21/smth>
 PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth> 
 PASS Parsing: <i> against <sc:sd> 
 PASS Parsing: <i> against <sc:sd/sd> 
-FAIL Parsing: <i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
-FAIL Parsing: <i> against <sc:///pa/pa> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <i> against <sc:/pa/pa> 
+PASS Parsing: <i> against <sc://ho/pa> 
+FAIL Parsing: <i> against <sc:///pa/pa> assert_equals: pathname expected "/pa/i" but got "///pa/i"
 PASS Parsing: <../i> against <sc:sd> 
 PASS Parsing: <../i> against <sc:sd/sd> 
-FAIL Parsing: <../i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <../i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
-FAIL Parsing: <../i> against <sc:///pa/pa> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <../i> against <sc:/pa/pa> 
+PASS Parsing: <../i> against <sc://ho/pa> 
+FAIL Parsing: <../i> against <sc:///pa/pa> assert_equals: pathname expected "/i" but got "///i"
 PASS Parsing: </i> against <sc:sd> 
 PASS Parsing: </i> against <sc:sd/sd> 
-FAIL Parsing: </i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: </i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
+PASS Parsing: </i> against <sc:/pa/pa> 
+PASS Parsing: </i> against <sc://ho/pa> 
 FAIL Parsing: </i> against <sc:///pa/pa> assert_equals: href expected "sc:///i" but got "sc:/i"
 PASS Parsing: <?i> against <sc:sd> 
 PASS Parsing: <?i> against <sc:sd/sd> 
-FAIL Parsing: <?i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <?i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
-FAIL Parsing: <?i> against <sc:///pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <#i> against <sc:sd> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <#i> against <sc:sd/sd> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <#i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <#i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
-FAIL Parsing: <#i> against <sc:///pa/pa> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <?i> against <sc:/pa/pa> 
+PASS Parsing: <?i> against <sc://ho/pa> 
+FAIL Parsing: <?i> against <sc:///pa/pa> assert_equals: pathname expected "/pa/pa" but got "///pa/pa"
+PASS Parsing: <#i> against <sc:sd> 
+PASS Parsing: <#i> against <sc:sd/sd> 
+PASS Parsing: <#i> against <sc:/pa/pa> 
+PASS Parsing: <#i> against <sc://ho/pa> 
+FAIL Parsing: <#i> against <sc:///pa/pa> assert_equals: pathname expected "/pa/pa" but got "///pa/pa"
 PASS Parsing: <about:/../> against <about:blank> 
 PASS Parsing: <data:/../> against <about:blank> 
 PASS Parsing: <javascript:/../> against <about:blank> 
-FAIL Parsing: <mailto:/../> against <about:blank> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:/../> against <about:blank> 
 FAIL Parsing: <sc://ñ.test/> against <about:blank> assert_equals: href expected "sc://xn--ida.test/" but got "sc://%C3%B1.test/"
-FAIL Parsing: <sc:\../> against <about:blank> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <sc::a@example.net> against <about:blank> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <sc:\../> against <about:blank> 
+PASS Parsing: <sc::a@example.net> against <about:blank> 
 PASS Parsing: <http://127.0.0.1:10100/relative_import.html> against <about:blank> 
 PASS Parsing: <http://facebook.com/?foo=%7B%22abc%22> against <about:blank> 
 PASS Parsing: <https://localhost:3000/jqueryui@1.2.3> against <about:blank> 
@@ -330,5 +330,5 @@ PASS Parsing: <?a=b&c=d> against <http://example.org/foo/bar>
 PASS Parsing: <??a=b&c=d> against <http://example.org/foo/bar> 
 PASS Parsing: <http:> against <http://example.org/foo/bar> 
 FAIL Parsing: <http:> against <https://example.org/foo/bar> assert_unreached: Expected URL to fail parsing Reached unreachable code
-FAIL Parsing: <sc:> against <https://example.org/foo/bar> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <sc:> against <https://example.org/foo/bar> 
 
index fb3f4d36c4196d9700a1002f040670ab471a9a22..d8ce3aa02eafcaa6cd21effcbcc8f7f0c0f4078f 100644 (file)
@@ -7,7 +7,7 @@ PASS Parsing: <http:foo.com> against <http://example.org/foo/bar>
 PASS Parsing: <           :foo.com   
 > against <http://example.org/foo/bar> 
 PASS Parsing: < foo.com  > against <http://example.org/foo/bar> 
-FAIL Parsing: <a:       foo.com> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "a://"
+PASS Parsing: <a:       foo.com> against <http://example.org/foo/bar> 
 PASS Parsing: <http://f:21/ b ? d # e > against <http://example.org/foo/bar> 
 PASS Parsing: <http://f:/c> against <http://example.org/foo/bar> 
 PASS Parsing: <http://f:0/c> against <http://example.org/foo/bar> 
@@ -48,12 +48,12 @@ PASS Parsing: <http://foo.com:b@d/> against <http://example.org/foo/bar>
 PASS Parsing: <http://foo.com/\@> against <http://example.org/foo/bar> 
 PASS Parsing: <http:\\foo.com\> against <http://example.org/foo/bar> 
 PASS Parsing: <http:\\a\b:c\d@foo.com\> against <http://example.org/foo/bar> 
-FAIL Parsing: <foo:/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <foo:/bar.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <foo://///////> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <foo://///////bar.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <foo:////://///> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <c:/foo> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "c://"
+PASS Parsing: <foo:/> against <http://example.org/foo/bar> 
+PASS Parsing: <foo:/bar.com/> against <http://example.org/foo/bar> 
+FAIL Parsing: <foo://///////> against <http://example.org/foo/bar> assert_equals: pathname expected "///////" but got "/////////"
+FAIL Parsing: <foo://///////bar.com/> against <http://example.org/foo/bar> assert_equals: pathname expected "///////bar.com/" but got "/////////bar.com/"
+FAIL Parsing: <foo:////://///> against <http://example.org/foo/bar> assert_equals: pathname expected "//://///" but got "////://///"
+PASS Parsing: <c:/foo> against <http://example.org/foo/bar> 
 PASS Parsing: <//foo/bar> against <http://example.org/foo/bar> 
 PASS Parsing: <http://foo/path;a??e#f#g> against <http://example.org/foo/bar> 
 PASS Parsing: <http://foo/abcd?efgh?ijkl> against <http://example.org/foo/bar> 
@@ -69,33 +69,33 @@ PASS Parsing: <http://[2001::1]:80> against <http://example.org/foo/bar>
 PASS Parsing: <http:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <ftp:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <https:/example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <madeupscheme:/example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "madeupscheme://"
+PASS Parsing: <madeupscheme:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <file:/example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <ftps:/example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "ftps://"
+PASS Parsing: <ftps:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <gopher:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <ws:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <wss:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <data:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <javascript:/example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <mailto:/example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <http:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <ftp:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <https:example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <madeupscheme:example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "madeupscheme://"
-FAIL Parsing: <ftps:example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "ftps://"
+PASS Parsing: <madeupscheme:example.com/> against <http://example.org/foo/bar> 
+PASS Parsing: <ftps:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <gopher:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <ws:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <wss:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <data:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <javascript:example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <mailto:example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: </a/b/c> against <http://example.org/foo/bar> 
 PASS Parsing: </a/ /c> against <http://example.org/foo/bar> 
 PASS Parsing: </a%2fc> against <http://example.org/foo/bar> 
 PASS Parsing: </a/%2f/c> against <http://example.org/foo/bar> 
 FAIL Parsing: <#β> against <http://example.org/foo/bar> assert_equals: href expected "http://example.org/foo/bar#β" but got "http://example.org/foo/bar#%CE%B2"
 PASS Parsing: <data:text/html,test#test> against <http://example.org/foo/bar> 
-FAIL Parsing: <tel:1234567890> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "tel://"
+PASS Parsing: <tel:1234567890> against <http://example.org/foo/bar> 
 PASS Parsing: <file:c:\foo\bar.html> against <file:///tmp/mock/path> 
 PASS Parsing: <  File:c|////foo\bar.html> against <file:///tmp/mock/path> 
 PASS Parsing: <C|/foo/bar> against <file:///tmp/mock/path> 
@@ -164,7 +164,7 @@ PASS Parsing: <http://%25DOMAIN:foobar@foodomain.com/> against <about:blank>
 PASS Parsing: <http:\\www.google.com\foo> against <about:blank> 
 PASS Parsing: <http://foo:80/> against <about:blank> 
 PASS Parsing: <http://foo:81/> against <about:blank> 
-FAIL Parsing: <httpa://foo:80/> against <about:blank> assert_equals: origin expected "null" but got "httpa://foo:80"
+PASS Parsing: <httpa://foo:80/> against <about:blank> 
 PASS Parsing: <http://foo:-80/> against <about:blank> 
 PASS Parsing: <https://foo:443/> against <about:blank> 
 PASS Parsing: <https://foo:80/> against <about:blank> 
@@ -183,26 +183,26 @@ PASS Parsing: <wss://foo:815/> against <about:blank>
 PASS Parsing: <http:/example.com/> against <about:blank> 
 PASS Parsing: <ftp:/example.com/> against <about:blank> 
 PASS Parsing: <https:/example.com/> against <about:blank> 
-FAIL Parsing: <madeupscheme:/example.com/> against <about:blank> assert_equals: origin expected "null" but got "madeupscheme://"
+PASS Parsing: <madeupscheme:/example.com/> against <about:blank> 
 PASS Parsing: <file:/example.com/> against <about:blank> 
-FAIL Parsing: <ftps:/example.com/> against <about:blank> assert_equals: origin expected "null" but got "ftps://"
+PASS Parsing: <ftps:/example.com/> against <about:blank> 
 PASS Parsing: <gopher:/example.com/> against <about:blank> 
 PASS Parsing: <ws:/example.com/> against <about:blank> 
 PASS Parsing: <wss:/example.com/> against <about:blank> 
 PASS Parsing: <data:/example.com/> against <about:blank> 
 PASS Parsing: <javascript:/example.com/> against <about:blank> 
-FAIL Parsing: <mailto:/example.com/> against <about:blank> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:/example.com/> against <about:blank> 
 PASS Parsing: <http:example.com/> against <about:blank> 
 PASS Parsing: <ftp:example.com/> against <about:blank> 
 PASS Parsing: <https:example.com/> against <about:blank> 
-FAIL Parsing: <madeupscheme:example.com/> against <about:blank> assert_equals: origin expected "null" but got "madeupscheme://"
-FAIL Parsing: <ftps:example.com/> against <about:blank> assert_equals: origin expected "null" but got "ftps://"
+PASS Parsing: <madeupscheme:example.com/> against <about:blank> 
+PASS Parsing: <ftps:example.com/> against <about:blank> 
 PASS Parsing: <gopher:example.com/> against <about:blank> 
 PASS Parsing: <ws:example.com/> against <about:blank> 
 PASS Parsing: <wss:example.com/> against <about:blank> 
 PASS Parsing: <data:example.com/> against <about:blank> 
 PASS Parsing: <javascript:example.com/> against <about:blank> 
-FAIL Parsing: <mailto:example.com/> against <about:blank> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:example.com/> against <about:blank> 
 PASS Parsing: <http:@www.example.com> against <about:blank> 
 PASS Parsing: <http:/@www.example.com> against <about:blank> 
 PASS Parsing: <http://@www.example.com> against <about:blank> 
@@ -261,7 +261,7 @@ PASS Parsing: <http://%41.com> against <http://other.com/>
 PASS Parsing: <http://%ef%bc%85%ef%bc%94%ef%bc%91.com> against <http://other.com/> 
 PASS Parsing: <http://%00.com> against <http://other.com/> 
 PASS Parsing: <http://%ef%bc%85%ef%bc%90%ef%bc%90.com> against <http://other.com/> 
-FAIL Parsing: <http://你好你好> against <http://other.com/> assert_equals: origin expected "http://你好你好" but got "http://xn--6qqa088eba"
+PASS Parsing: <http://你好你好> against <http://other.com/> 
 PASS Parsing: <http://%zz%66%a.com> against <http://other.com/> 
 PASS Parsing: <http://%25> against <http://other.com/> 
 PASS Parsing: <http://hello%00> against <http://other.com/> 
@@ -273,11 +273,11 @@ PASS Parsing: <http://192.168.0.1 hello> against <http://other.com/>
 PASS Parsing: <http://0Xc0.0250.01> against <http://other.com/> 
 PASS Parsing: <http://[google.com]> against <http://other.com/> 
 PASS Parsing: <http://foo:💩@example.com/bar> against <http://other.com/> 
-FAIL Parsing: <#> against <test:test> assert_equals: origin expected "null" but got "test://"
-FAIL Parsing: <#x> against <mailto:x@x.com> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <#> against <test:test> 
+PASS Parsing: <#x> against <mailto:x@x.com> 
 PASS Parsing: <#x> against <data:,> 
 PASS Parsing: <#x> against <about:blank> 
-FAIL Parsing: <#> against <test:test?test> assert_equals: origin expected "null" but got "test://"
+PASS Parsing: <#> against <test:test?test> 
 PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/> 
 PASS Parsing: <https://@@@example> against <http://doesnotmatter/> 
 PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/> 
@@ -286,36 +286,36 @@ PASS Parsing: <> against <http://user:pass@example.org:21/smth>
 PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth> 
 PASS Parsing: <i> against <sc:sd> 
 PASS Parsing: <i> against <sc:sd/sd> 
-FAIL Parsing: <i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
-FAIL Parsing: <i> against <sc:///pa/pa> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <i> against <sc:/pa/pa> 
+PASS Parsing: <i> against <sc://ho/pa> 
+FAIL Parsing: <i> against <sc:///pa/pa> assert_equals: pathname expected "/pa/i" but got "///pa/i"
 PASS Parsing: <../i> against <sc:sd> 
 PASS Parsing: <../i> against <sc:sd/sd> 
-FAIL Parsing: <../i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <../i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
-FAIL Parsing: <../i> against <sc:///pa/pa> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <../i> against <sc:/pa/pa> 
+PASS Parsing: <../i> against <sc://ho/pa> 
+FAIL Parsing: <../i> against <sc:///pa/pa> assert_equals: pathname expected "/i" but got "///i"
 PASS Parsing: </i> against <sc:sd> 
 PASS Parsing: </i> against <sc:sd/sd> 
-FAIL Parsing: </i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: </i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
+PASS Parsing: </i> against <sc:/pa/pa> 
+PASS Parsing: </i> against <sc://ho/pa> 
 FAIL Parsing: </i> against <sc:///pa/pa> assert_equals: href expected "sc:///i" but got "sc:/i"
 PASS Parsing: <?i> against <sc:sd> 
 PASS Parsing: <?i> against <sc:sd/sd> 
-FAIL Parsing: <?i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <?i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
-FAIL Parsing: <?i> against <sc:///pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <#i> against <sc:sd> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <#i> against <sc:sd/sd> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <#i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <#i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
-FAIL Parsing: <#i> against <sc:///pa/pa> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <?i> against <sc:/pa/pa> 
+PASS Parsing: <?i> against <sc://ho/pa> 
+FAIL Parsing: <?i> against <sc:///pa/pa> assert_equals: pathname expected "/pa/pa" but got "///pa/pa"
+PASS Parsing: <#i> against <sc:sd> 
+PASS Parsing: <#i> against <sc:sd/sd> 
+PASS Parsing: <#i> against <sc:/pa/pa> 
+PASS Parsing: <#i> against <sc://ho/pa> 
+FAIL Parsing: <#i> against <sc:///pa/pa> assert_equals: pathname expected "/pa/pa" but got "///pa/pa"
 PASS Parsing: <about:/../> against <about:blank> 
 PASS Parsing: <data:/../> against <about:blank> 
 PASS Parsing: <javascript:/../> against <about:blank> 
-FAIL Parsing: <mailto:/../> against <about:blank> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:/../> against <about:blank> 
 FAIL Parsing: <sc://ñ.test/> against <about:blank> assert_equals: href expected "sc://xn--ida.test/" but got "sc://%C3%B1.test/"
-FAIL Parsing: <sc:\../> against <about:blank> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <sc::a@example.net> against <about:blank> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <sc:\../> against <about:blank> 
+PASS Parsing: <sc::a@example.net> against <about:blank> 
 PASS Parsing: <http://127.0.0.1:10100/relative_import.html> against <about:blank> 
 PASS Parsing: <http://facebook.com/?foo=%7B%22abc%22> against <about:blank> 
 PASS Parsing: <https://localhost:3000/jqueryui@1.2.3> against <about:blank> 
@@ -330,5 +330,5 @@ PASS Parsing: <?a=b&c=d> against <http://example.org/foo/bar>
 PASS Parsing: <??a=b&c=d> against <http://example.org/foo/bar> 
 PASS Parsing: <http:> against <http://example.org/foo/bar> 
 FAIL Parsing: <http:> against <https://example.org/foo/bar> assert_unreached: Expected URL to fail parsing Reached unreachable code
-FAIL Parsing: <sc:> against <https://example.org/foo/bar> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <sc:> against <https://example.org/foo/bar> 
 
index c77df5bf2eebc906cb6ae9269fd74d3dc18378ec..a3d78139b16a010e1381bff09cdbc228444b9553 100644 (file)
@@ -38,9 +38,6 @@ function runURLTests(urltests) {
       }
 
       assert_equals(url.href, expected.href, "href")
-      if ("origin" in expected) {
-        assert_equals(url.origin, expected.origin, "origin")
-      }
       assert_equals(url.protocol, expected.protocol, "protocol")
       assert_equals(url.username, expected.username, "username")
       assert_equals(url.password, expected.password, "password")
index 0d06115947e8138654c279d18460ab6ce09dfabb..6aa601a84c4d654cb8c60c84797909d7dc522781 100644 (file)
@@ -11,7 +11,7 @@ PASS Parsing: <http:foo.com> against <http://example.org/foo/bar>
 PASS Parsing: <           :foo.com   
 > against <http://example.org/foo/bar> 
 PASS Parsing: < foo.com  > against <http://example.org/foo/bar> 
-FAIL Parsing: <a:       foo.com> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "a://"
+PASS Parsing: <a:       foo.com> against <http://example.org/foo/bar> 
 PASS Parsing: <http://f:21/ b ? d # e > against <http://example.org/foo/bar> 
 PASS Parsing: <http://f:/c> against <http://example.org/foo/bar> 
 PASS Parsing: <http://f:0/c> against <http://example.org/foo/bar> 
@@ -52,12 +52,12 @@ PASS Parsing: <http://foo.com:b@d/> against <http://example.org/foo/bar>
 PASS Parsing: <http://foo.com/\@> against <http://example.org/foo/bar> 
 PASS Parsing: <http:\\foo.com\> against <http://example.org/foo/bar> 
 PASS Parsing: <http:\\a\b:c\d@foo.com\> against <http://example.org/foo/bar> 
-FAIL Parsing: <foo:/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <foo:/bar.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <foo://///////> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <foo://///////bar.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <foo:////://///> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "foo://"
-FAIL Parsing: <c:/foo> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "c://"
+PASS Parsing: <foo:/> against <http://example.org/foo/bar> 
+PASS Parsing: <foo:/bar.com/> against <http://example.org/foo/bar> 
+FAIL Parsing: <foo://///////> against <http://example.org/foo/bar> assert_equals: pathname expected "///////" but got "/////////"
+FAIL Parsing: <foo://///////bar.com/> against <http://example.org/foo/bar> assert_equals: pathname expected "///////bar.com/" but got "/////////bar.com/"
+FAIL Parsing: <foo:////://///> against <http://example.org/foo/bar> assert_equals: pathname expected "//://///" but got "////://///"
+PASS Parsing: <c:/foo> against <http://example.org/foo/bar> 
 PASS Parsing: <//foo/bar> against <http://example.org/foo/bar> 
 PASS Parsing: <http://foo/path;a??e#f#g> against <http://example.org/foo/bar> 
 PASS Parsing: <http://foo/abcd?efgh?ijkl> against <http://example.org/foo/bar> 
@@ -73,33 +73,33 @@ PASS Parsing: <http://[2001::1]:80> against <http://example.org/foo/bar>
 PASS Parsing: <http:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <ftp:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <https:/example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <madeupscheme:/example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "madeupscheme://"
+PASS Parsing: <madeupscheme:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <file:/example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <ftps:/example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "ftps://"
+PASS Parsing: <ftps:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <gopher:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <ws:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <wss:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <data:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <javascript:/example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <mailto:/example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:/example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <http:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <ftp:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <https:example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <madeupscheme:example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "madeupscheme://"
-FAIL Parsing: <ftps:example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "ftps://"
+PASS Parsing: <madeupscheme:example.com/> against <http://example.org/foo/bar> 
+PASS Parsing: <ftps:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <gopher:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <ws:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <wss:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <data:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: <javascript:example.com/> against <http://example.org/foo/bar> 
-FAIL Parsing: <mailto:example.com/> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:example.com/> against <http://example.org/foo/bar> 
 PASS Parsing: </a/b/c> against <http://example.org/foo/bar> 
 PASS Parsing: </a/ /c> against <http://example.org/foo/bar> 
 PASS Parsing: </a%2fc> against <http://example.org/foo/bar> 
 PASS Parsing: </a/%2f/c> against <http://example.org/foo/bar> 
 FAIL Parsing: <#β> against <http://example.org/foo/bar> assert_equals: href expected "http://example.org/foo/bar#β" but got "http://example.org/foo/bar#%CE%B2"
 PASS Parsing: <data:text/html,test#test> against <http://example.org/foo/bar> 
-FAIL Parsing: <tel:1234567890> against <http://example.org/foo/bar> assert_equals: origin expected "null" but got "tel://"
+PASS Parsing: <tel:1234567890> against <http://example.org/foo/bar> 
 PASS Parsing: <file:c:\foo\bar.html> against <file:///tmp/mock/path> 
 PASS Parsing: <  File:c|////foo\bar.html> against <file:///tmp/mock/path> 
 PASS Parsing: <C|/foo/bar> against <file:///tmp/mock/path> 
@@ -168,7 +168,7 @@ PASS Parsing: <http://%25DOMAIN:foobar@foodomain.com/> against <about:blank>
 PASS Parsing: <http:\\www.google.com\foo> against <about:blank> 
 PASS Parsing: <http://foo:80/> against <about:blank> 
 PASS Parsing: <http://foo:81/> against <about:blank> 
-FAIL Parsing: <httpa://foo:80/> against <about:blank> assert_equals: origin expected "null" but got "httpa://foo:80"
+PASS Parsing: <httpa://foo:80/> against <about:blank> 
 PASS Parsing: <http://foo:-80/> against <about:blank> 
 PASS Parsing: <https://foo:443/> against <about:blank> 
 PASS Parsing: <https://foo:80/> against <about:blank> 
@@ -187,26 +187,26 @@ PASS Parsing: <wss://foo:815/> against <about:blank>
 PASS Parsing: <http:/example.com/> against <about:blank> 
 PASS Parsing: <ftp:/example.com/> against <about:blank> 
 PASS Parsing: <https:/example.com/> against <about:blank> 
-FAIL Parsing: <madeupscheme:/example.com/> against <about:blank> assert_equals: origin expected "null" but got "madeupscheme://"
+PASS Parsing: <madeupscheme:/example.com/> against <about:blank> 
 PASS Parsing: <file:/example.com/> against <about:blank> 
-FAIL Parsing: <ftps:/example.com/> against <about:blank> assert_equals: origin expected "null" but got "ftps://"
+PASS Parsing: <ftps:/example.com/> against <about:blank> 
 PASS Parsing: <gopher:/example.com/> against <about:blank> 
 PASS Parsing: <ws:/example.com/> against <about:blank> 
 PASS Parsing: <wss:/example.com/> against <about:blank> 
 PASS Parsing: <data:/example.com/> against <about:blank> 
 PASS Parsing: <javascript:/example.com/> against <about:blank> 
-FAIL Parsing: <mailto:/example.com/> against <about:blank> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:/example.com/> against <about:blank> 
 PASS Parsing: <http:example.com/> against <about:blank> 
 PASS Parsing: <ftp:example.com/> against <about:blank> 
 PASS Parsing: <https:example.com/> against <about:blank> 
-FAIL Parsing: <madeupscheme:example.com/> against <about:blank> assert_equals: origin expected "null" but got "madeupscheme://"
-FAIL Parsing: <ftps:example.com/> against <about:blank> assert_equals: origin expected "null" but got "ftps://"
+PASS Parsing: <madeupscheme:example.com/> against <about:blank> 
+PASS Parsing: <ftps:example.com/> against <about:blank> 
 PASS Parsing: <gopher:example.com/> against <about:blank> 
 PASS Parsing: <ws:example.com/> against <about:blank> 
 PASS Parsing: <wss:example.com/> against <about:blank> 
 PASS Parsing: <data:example.com/> against <about:blank> 
 PASS Parsing: <javascript:example.com/> against <about:blank> 
-FAIL Parsing: <mailto:example.com/> against <about:blank> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:example.com/> against <about:blank> 
 PASS Parsing: <http:@www.example.com> against <about:blank> 
 PASS Parsing: <http:/@www.example.com> against <about:blank> 
 PASS Parsing: <http://@www.example.com> against <about:blank> 
@@ -265,7 +265,7 @@ PASS Parsing: <http://%41.com> against <http://other.com/>
 PASS Parsing: <http://%ef%bc%85%ef%bc%94%ef%bc%91.com> against <http://other.com/> 
 PASS Parsing: <http://%00.com> against <http://other.com/> 
 PASS Parsing: <http://%ef%bc%85%ef%bc%90%ef%bc%90.com> against <http://other.com/> 
-FAIL Parsing: <http://你好你好> against <http://other.com/> assert_equals: origin expected "http://你好你好" but got "http://xn--6qqa088eba"
+PASS Parsing: <http://你好你好> against <http://other.com/> 
 PASS Parsing: <http://%zz%66%a.com> against <http://other.com/> 
 PASS Parsing: <http://%25> against <http://other.com/> 
 PASS Parsing: <http://hello%00> against <http://other.com/> 
@@ -278,11 +278,11 @@ PASS Parsing: <http://192.168.0.1 hello> against <http://other.com/>
 PASS Parsing: <http://0Xc0.0250.01> against <http://other.com/> 
 PASS Parsing: <http://[google.com]> against <http://other.com/> 
 PASS Parsing: <http://foo:💩@example.com/bar> against <http://other.com/> 
-FAIL Parsing: <#> against <test:test> assert_equals: origin expected "null" but got "test://"
-FAIL Parsing: <#x> against <mailto:x@x.com> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <#> against <test:test> 
+PASS Parsing: <#x> against <mailto:x@x.com> 
 PASS Parsing: <#x> against <data:,> 
 PASS Parsing: <#x> against <about:blank> 
-FAIL Parsing: <#> against <test:test?test> assert_equals: origin expected "null" but got "test://"
+PASS Parsing: <#> against <test:test?test> 
 PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/> 
 PASS Parsing: <https://@@@example> against <http://doesnotmatter/> 
 PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/> 
@@ -291,36 +291,36 @@ PASS Parsing: <> against <http://user:pass@example.org:21/smth>
 PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth> 
 PASS Parsing: <i> against <sc:sd> 
 PASS Parsing: <i> against <sc:sd/sd> 
-FAIL Parsing: <i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
-FAIL Parsing: <i> against <sc:///pa/pa> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <i> against <sc:/pa/pa> 
+PASS Parsing: <i> against <sc://ho/pa> 
+FAIL Parsing: <i> against <sc:///pa/pa> assert_equals: pathname expected "/pa/i" but got "///pa/i"
 PASS Parsing: <../i> against <sc:sd> 
 PASS Parsing: <../i> against <sc:sd/sd> 
-FAIL Parsing: <../i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <../i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
-FAIL Parsing: <../i> against <sc:///pa/pa> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <../i> against <sc:/pa/pa> 
+PASS Parsing: <../i> against <sc://ho/pa> 
+FAIL Parsing: <../i> against <sc:///pa/pa> assert_equals: pathname expected "/i" but got "///i"
 PASS Parsing: </i> against <sc:sd> 
 PASS Parsing: </i> against <sc:sd/sd> 
-FAIL Parsing: </i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: </i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
+PASS Parsing: </i> against <sc:/pa/pa> 
+PASS Parsing: </i> against <sc://ho/pa> 
 FAIL Parsing: </i> against <sc:///pa/pa> assert_equals: href expected "sc:///i" but got "sc:/i"
 PASS Parsing: <?i> against <sc:sd> 
 PASS Parsing: <?i> against <sc:sd/sd> 
-FAIL Parsing: <?i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <?i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
-FAIL Parsing: <?i> against <sc:///pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <#i> against <sc:sd> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <#i> against <sc:sd/sd> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <#i> against <sc:/pa/pa> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <#i> against <sc://ho/pa> assert_equals: origin expected "null" but got "sc://ho"
-FAIL Parsing: <#i> against <sc:///pa/pa> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <?i> against <sc:/pa/pa> 
+PASS Parsing: <?i> against <sc://ho/pa> 
+FAIL Parsing: <?i> against <sc:///pa/pa> assert_equals: pathname expected "/pa/pa" but got "///pa/pa"
+PASS Parsing: <#i> against <sc:sd> 
+PASS Parsing: <#i> against <sc:sd/sd> 
+PASS Parsing: <#i> against <sc:/pa/pa> 
+PASS Parsing: <#i> against <sc://ho/pa> 
+FAIL Parsing: <#i> against <sc:///pa/pa> assert_equals: pathname expected "/pa/pa" but got "///pa/pa"
 PASS Parsing: <about:/../> against <about:blank> 
 PASS Parsing: <data:/../> against <about:blank> 
 PASS Parsing: <javascript:/../> against <about:blank> 
-FAIL Parsing: <mailto:/../> against <about:blank> assert_equals: origin expected "null" but got "mailto://"
+PASS Parsing: <mailto:/../> against <about:blank> 
 FAIL Parsing: <sc://ñ.test/> against <about:blank> assert_equals: href expected "sc://xn--ida.test/" but got "sc://%C3%B1.test/"
-FAIL Parsing: <sc:\../> against <about:blank> assert_equals: origin expected "null" but got "sc://"
-FAIL Parsing: <sc::a@example.net> against <about:blank> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <sc:\../> against <about:blank> 
+PASS Parsing: <sc::a@example.net> against <about:blank> 
 PASS Parsing: <http://127.0.0.1:10100/relative_import.html> against <about:blank> 
 PASS Parsing: <http://facebook.com/?foo=%7B%22abc%22> against <about:blank> 
 PASS Parsing: <https://localhost:3000/jqueryui@1.2.3> against <about:blank> 
@@ -336,5 +336,5 @@ PASS Parsing: <??a=b&c=d> against <http://example.org/foo/bar>
 PASS Parsing: <http:> against <http://example.org/foo/bar> 
 FAIL Parsing: <http:> against <https://example.org/foo/bar> assert_throws: function "function () {
           bURL(expected.input, expected.bas..." did not throw
-FAIL Parsing: <sc:> against <https://example.org/foo/bar> assert_equals: origin expected "null" but got "sc://"
+PASS Parsing: <sc:> against <https://example.org/foo/bar> 
 
index 8eacce6542facc2f98b330f82c4bbd1149aebc41..490917c4f2f7215fbd72860a9f761a4e3cdba549 100644 (file)
@@ -37,9 +37,6 @@ function runURLTests(urltests) {
 
       var url = bURL(expected.input, expected.base)
       assert_equals(url.href, expected.href, "href")
-      if ("origin" in expected) {
-        assert_equals(url.origin, expected.origin, "origin")
-      }
       assert_equals(url.protocol, expected.protocol, "protocol")
       assert_equals(url.username, expected.username, "username")
       assert_equals(url.password, expected.password, "password")